|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Aug 2008
Messaggi: 1
|
[EasyPHP 2.0b1] passaggio di variabili da form
Ciao a tutti,
ho installato EasyPHP 2.0b1 per testare i miei siti in locale, scrivendo il codice con Dreamweaver CS3. Nelle impostazioni di Dreamweaver ho settato il "Testing Server" (Site>Manage Site) su PHP MySQL; "Access: Local Network" e per "Testing Server Folder" la cartella del mio sito, nella quale ho copiato il file php.ini, seguendo le istruzioni trovate sul volume "PHP - dall'HTML allo sviluppo dei siti dinamici", pag 125. Sto effettuando delle prove di passaggio variabili da form (sono un PHP-principiante!), ma qualcosa non funziona. Il messaggio di errore è il seguente: Notice: Undefined variable: username in C:\Programmi\EasyPHP 2.0b1\www\Prove_PHP\UD8\01-var_form.php on line 10 Notice: Undefined variable: mail in C:\Programmi\EasyPHP 2.0b1\www\Prove_PHP\UD8\01-var_form.php on line 12 Notice: Undefined variable: HTTP_POST_VARS in C:\Programmi\EasyPHP 2.0b1\www\Prove_PHP\UD8\01-var_form.php on line 15 Notice: Undefined variable: HTTP_POST_VARS in C:\Programmi\EasyPHP 2.0b1\www\Prove_PHP\UD8\01-var_form.php on line 16 Ecco il codice del file con il form: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>01-form.php</title> </head> <body> <form action="01-var_form.php" method="post"> <table border="2"> <tr><td>Nome Utente</td><td><input type="text" name="username" /></td></tr> <tr><td>Email</td><td><input type="text" name="email" /></td></tr> </table> <input type="submit" name="submit" value="invio dei dati"/> </form> </body> </html> ed ecco quello per l'action: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>01-var_form.php</title> </head> <body> <?php echo $username; echo "<br>"; echo $mail; echo "<br>"; echo "<br><b>"; print $HTTP_POST_VARS['username']; print $HTTP_POST_VARS['email']; ?> </body> </html> Ho testao anche in remoto con risultati migliori: l'output è prodotto solo dalla scrittura con le variabili di ambiente, mentre vengono del tutto ignorate le varibili passate con lo Short Style. Ho cercato su google una soluzione a questo ultimo problema e ho trovato (qui http://groups.google.it/group/it.lav...5a6d4b27038092) che riguarda il fatto che il mio codice pretende register_globals = on mentre l'hosting prevede register_globals = off. Ho anche trovato che per motivi di sicurezza è sconsigliabile modificare queste impostazioni nel file php.ini. Che fare in questo caso? Settare il file php.ini in off? E se poi devo settare anche quello sul server? Oppure scrivo il codice con le variabili globali? In fine, in definitiva, con EasyPHP mi trovo abbastanza bene, anche se non riesco a capire se questi errori ci sono perchè bisogna settarlo a seconda delle proprie esigenze, oppure se è preferibile orientarsi verso altri software più adatti a un principiante come me.... Grazie a tutti, spero di essere stato abbastanza chiaro e conciso. |
![]() |
![]() |
![]() |
#2 |
Junior Member
Iscritto dal: Jul 2008
Messaggi: 31
|
Ti consiglio di usare $_POST[nome_variabile_del_form]
ed in seguito Codice PHP:
__________________
If you are not, you are. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1092
|
Non dimentichiamo gli apici al fine di evitare fastidiosi notice.
Codice PHP:
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:34.