Visualizzazione dei risultati da 1 a 7 su 7
  1. #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 "
    ";
    echo $mail;
    echo "
    ";
    echo "
    [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. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Salve

    Mi sembra che $HTTP_POST_VARS sia adesso $_POST
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Ciao badaze,

    purtroppo le righe di codice che utilizzano le variabili di ambiente sono quelle che già funzionano cosi come sono. Quelle che non girano, sia in remoto che in locale, sono

    echo $username;
    echo $mail;

    Con quelle in output non ottengo nulla!

    Eppure a me sembra tutto a posto...

    :master:

    Grazie comunque!!!

  4. #4
    echo $_POST['username'];
    echo $_POS['mail'];

    ormai non si trovano piu' siti con register_globals in ON o quanto meno, piano piano, sono in via di estinzione. Meglio adeguare i tuoi script.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Grazie per la dritta, piero.mac!
    E una cosa l'ho risolta!
    mi resta il dubbio di dover settare qualcosa in EasyPHP: comunque, adesso provo con il consiglio che mi hai dato e vedo se mi sparisce l'errore

    Notice: Undefined variable: HTTP_POST_VARS in C:\Programmi\EasyPHP 2.0b1\www\Prove_PHP\UD8\01-var_form.php on line 15

    quando sono in locale.


  6. #6
    gia' detto prima....

    Originariamente inviato da badaze
    Salve

    Mi sembra che $HTTP_POST_VARS sia adesso $_POST

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7

    Risolto: [EasyPHP 2.0b1] passaggio di variabili da form

    @piero.mac: grazie!

    ecco come ho risolto:

    <!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
    $username=$_POST['username']; //metodo 1:assegno alla variabile il valore POSTato
    $mail=$_POST['email'];
    echo $username;
    echo "
    ";
    echo $mail;
    echo "
    ";
    echo "
    [b]";
    echo $_POST['username']; /*
    metodo 2: stampo la variabile direttamente con $_POST e non con $HTTP_POST_VARS
    */
    echo $_POST['email'];
    ?>
    </body>
    </html>

    cosi mi funziona in locale e in remoto!
    coooooooool!

    grazie badaze, grazie piero.mac!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.