Sto provando a eseguire codice da uno book. Sembra che ci sia un problema con il codice.Messaggio di errore: Errore irreversibile: impossibile utilizzare la funzione return> value in write context in
Ecco il messaggio di errore:
Fatal error: Can't use function return value in write context in /Applications/MAMP/htdocs/Eclipse-Workspace/simpleblog/test.php on line 24
ecco il codice indicato nel messaggio (a partire on line 24)
if (!empty(trim($_POST['username']))
&& !empty(trim($_POST['email']))) {
// Store escaped $_POST values in variables
$uname = htmlentities($_POST['username']);
$email = htmlentities($_POST['email']);
$_SESSION['username'] = $uname;
echo "Thanks for registering! <br />",
"Username: $uname <br />",
"Email: $email <br />";
}
Gradirei qualsiasi aiuto. Per favore fatemi sapere se ho bisogno di fornire ulteriori informazioni
Grazie mille ragazzi. E 'stato molto veloce. La soluzione funziona alla grande.
Il problema è che la funzione empty() deve essere applicata solo alle variabili dirette.
di riferimento futuro: Il codice è da 'PHP per Absolute Beginners' da Jason Lengstorf (2009), pagine 90-91, capitolo 3, $ _SESSION
codice corretto:
//new - Created a variable that can be passed to the empty() function
$trimusername = trim($_POST['username']);
//modified - applying the empty function correctly to the new variable
if (!empty($trimusername)
&& !empty($trimusername)) {
// Store escaped $_POST values in variables
$uname = htmlentities($_POST['username']);
$email = htmlentities($_POST['email']);
$_SESSION['username'] = $uname;
echo "Thanks for registering! <br />",
"Username: $uname <br />",
"Email: $email <br />";
}
Grazie mille. Questo funziona. Ho aggiornato la domanda con il codice corretto nel caso in cui qualcun altro stia utilizzando questo libro e si imbatta nel problema. – ntc
Grazie mille per aver chiesto e risposto a questa domanda con il codice corretto. Sono nuovo di PHP e di programmazione, e quando mi imbatto in un errore di battitura nel libro ho praticamente sempre pensato che non sono io a ottenerlo. È un vero sollievo mettere le cose giuste e vederle funzionare! –
Penso che si dovrebbe notare che questo comportamento riguarda solo le versioni di PHP <5.5 come dichiarato a [php.function.empty] (http://php.net/manual/en/function.empty.php) –