Newsgroup: it.comp.www.php
Titolo: Anteporre il carattere '@' alle funzioni...

Innanzitutto: Salve a tutti!
Sono nuovo di qui e scrivo sull'NG per una curiosita'.
A cosa serve anteporre il carattere '@' alle funzioni?
A disabilitare i Warning?
Io lo uso nell'ambito del passaggio di parametri tramite Sessioni.
(Ho trovato l'utilizzo di questo carattere in un messaggio di un altro NG
che non ricordo, l'autore pero' non spiegava nulla)
Prima di session_start() se non metto il suddetto carattere vengono generati
questi warning:
 Warning: Cannot send session cookie - headers already sent by...
 Warning: Cannot send session cache limiter - headers already sent...
In ogni caso il passaggio dei parametri funziona.
-Mat-

 ha scritto nel messaggio
news:l1oa9.11162$ub2.1...@news1.tin.it...


 non ne ha bisogno...
Anche io penso che se il mondo fosse perfetto non ci sarebbero imperfezioni
:)
A parte gli scherzi... sai a cosa sono dovuti quei warning?
Le opzioni che ho impostato su php.ini son quelle di cui parla 
php.net
 nella
sezione Sessioni... quelle standard insomma. Eppure non capisco...
Cercando nei vari NG ho visto che sono Warning molto comuni... mah.

Verifica di non avere un file di intestazione fisso.

 Verifica di non avere un file di intestazione fisso.
Puoi spiegarmi meglio cosa intendi con "file di intestazione fisso" ?
Non credo proprio che dipenda dal codice, penso che il problema stia nelle
impostazioni PHP. Ecco un esempio di codice e' semplicissimo che mi riporta
comunque i warning:
<HTML>
<BODY>
<?
 session_start();
?>
</BODY>
</HTML>

 ha scritto nel messaggio
news:OGoa9.11297$ub2.1...@news1.tin.it...

Non puoi mandare output prima di usare session_start.
Anche un solo spazio ti rovina tutto.
Il codice sopra dovrebbe diventare cosě
<?
session_start();
?>
<HTML>
<BODY>
</BODY>
</HTML>

 </HTML>
Ecco appunto, session_start() deve precedere qualsiasi altro output. Nel tuo
esempio invece parte del codice html e' inviato prima.
Max
lucamax - l*i*b*e*r*o* .*i*t*

 </HTML>
Questo non va bene, devi mettere:
<?
session_start();
?>
<HTML>
<BODY>
quello che vuoi tu
</BODY>
</HTML>
addirittura se c'è un carattere bianco all'inizio e magari non lo vedi ti
da' warning
http://www.php.net/manual/en/function.session-start.php
<copio e incollo>
bool session_start ( void)
session_start() creates a session (or resumes the current one based on the
session id being passed via a GET variable or a cookie).
<cut>
This function always returns TRUE.
__________________________
Note: If you are using cookie-based sessions, you must call session_start()
before anything is output to the browser.
___________________________
spero ti serva
max (che scrive per la prima volta qui)

Grazie a tutti per la risposta.
Ho messo  session_start()  all'inizio del codice e ora non mi da' warning.
Cmq ho messo un carattere di tabulazione prima si session_start e non mi da'
problemi (PHP 4.2.2)


Quandoi usi session_start() o set_cookie o Header("....")
non puoi scrivere qualcosa nella pagina (con un echo per esempio) e poi
richiamare
le suddette funzioni.
E' normale quindi che la semplice pagina da te postata presenti quei
warnings
la forma corretta infatti č:
<?session_start();?>
<HTML>
<BODY>
......
</BODY>
 </HTML>
Ciao by Peter

 problemi (PHP 4.2.2)
Se la tabulazione sta nel codice php ci credo, altrimenti lo voglio vedere!
LAMASE


Intendevo dire che un buon coder prevede i possibili warning, non che non li
commetta :-)
J