Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Problema con "POST

  1. #1

    Problema con "POST

    Salve a tutti...
    Ho un problema stranissimo con un post...a volte mi effettua il post dei dati e a volte no e nn so spiegarmelo... Nn penso ke il problema sia xkè glielo faccio fare alla stessa pagina...xò mi servirebbe così...

    Qst è il codice...se qlcn può darmi una mano....grazie...

    <html>
    <head>
    <title>prova</title>
    </head>
    <body>
    <? reset ($_POST);
    while (list ($chiave, $valore) = each ($_POST)) {
    echo ($chiave ."=>". $valore ."
    "); } ?>
    <form method="post" id="login" name="login" action="test2.php">
    <table border="0" width="100%" cellpadding="0" cellspacing="0">
    <tr>
    <td class="testoImp">UserName:</td>
    <td> <input class="form_text" type="text" size="10" name="User"></td>
    </tr>
    <tr>
    <td class="testoImp">Password: </td>
    <td><input class="form_text" type="password" size="10" name="Pass"></td>
    </tr>
    <tr>
    <td> </td>
    <td> <input class="form_button" type="submit" size="5" name="Log" value="Entra"></td>
    </tr>
    </table>
    <form>
    </body>
    <html>

  2. #2
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    Ciao,

    1) prima di metterti a scrivere PHP, dovresti imparare l'italiano!

    2) usa sempre <?php ... ?>

    3) ciudi i tag <form>...</form>

  3. #3
    Senti suputello nn sn così novellino cm credi... e poi a parte la chiusura del form (errore di copia-incolla) il tag <?php ..?> nn cambia niente scrivere <? ... ?> è la stessa cosa...

  4. #4
    Comunque mi spiego meglio...

    Devo fare un post-back sulla stessa pagina e per cause a me ignote a volte me lo esegue e a volte no...
    Mi sembrerebbe un problema di cache...devo aspettare un po’ di tempo da un post e l’altro perchè funzioni...Ma il problema è che voglio che mi funzioni sempre...

  5. #5
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    ciao diego,

    dai fai il bravo... allora...

    Originariamente inviato da diiego87
    ...il tag <?php ..?> nn cambia niente scrivere <? ... ?> è la stessa cosa...
    hm, fino a quando usi la versione 4 di PHP hai ragione, ma se fai un update alla versione 5 non ci sta

    Stampa con print_r($_POST) per vedere cosa ottieni...

    Ho appena testato lo scritto con IE6.0, a me funziona perfettamente, che browser usi?
    Hai controllato che il file si chiami davvero test2.php?

  6. #6
    Bello "print_r($_POST);"... non lo conoscevo... comunque anche con quello il risultato è "Array ( )"... uffi :master:

    Ho anche messo <?php ma non cambia niente e a me col php5 funziona lo stesso... comuque vabbè...

    Ho anche sentito i gestori del dominio... e mi dicono che è abilitato il modulo php-eaccellerator... a parte il fatto che nn so bene cosa sia, ma penso che sia questo modulo a fare cache e a non farmi funzionare bene la pagina...

  7. #7
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    hm, fino a quando usi la versione 4 di PHP hai ragione, ma se fai un update alla versione 5 non ci sta
    Nella versione 5 di php gli short tag esistono eccome, bisogna solo abilitarli.
    Cmq è buona pratica non utilizzarli per non vedere fastidiosi errori nel caso di porting dei propri script su altri server dove non sono abilitati

    In quanto al problema del POST, prova questo script:

    Codice PHP:

    <html>
    <head>
    <title>prova</title>
    </head>
    <body>
    <?php

    if(isset($_POST) && count($_POST) > 0)
    {
     foreach(
    $_POST AS $key => $value)
     {
      echo 
    $key." => ".$value."
    "
    ;
     }
    }
    else
    {
    ?>
    <form method="post" id="login" name="login" action="test2.php">
    <table border="0" width="100%" cellpadding="0" cellspacing="0">
    <tr>
    <td class="testoImp">UserName:</td>
    <td> <input class="form_text" type="text" size="10" name="User"></td>
    </tr>
    <tr>
    <td class="testoImp">Password: </td>
    <td><input class="form_text" type="password" size="10" name="Pass"></td>
    </tr>
    <tr>
    <td>  </td>
    <td> <input class="form_button" type="submit" size="5" name="Log" value="Entra"></td>
    </tr>
    </table>
    </form>
    </body>
    <html>
    <?php
    }
    ?>

  8. #8
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    Originariamente inviato da Razorblade
    Nella versione 5 di php gli short tag esistono eccome, bisogna solo abilitarli.
    Mi meraviaglia cmq. che diiedo87 (che non conosce print_r) sia andato a cambiare le impostazioni in php.ini per andare ad abilitare gli short tag con short_open_tag = on, che nella versionen 5 di PHP sono settati su off come standard, sempre che abbia accesso a php.ini. Ma forse sono stati abilitati dal provider stesso, in quanto si sono accorti che alla metà dell'utenza non gli andavano più gli scritti? Cmq. vabbe, riconosco che non è il tema del thread questo, ciao.

  9. #9
    Non so sia un problema simile ma ho riscontrato questo:
    nella mia macchina di test (con installato tomcat 4.1 e php 5.2.1), l'array _POST è sempre vuoto. (controllato sia con print_r che con foreach)
    in un altra macchina (con apache e php) funziona correttamente.

    sembra che il tutto dipenda dalla configurazione "register_globals " su php.ini
    ---
    ho provato a modificare php.ini ma non mi accetta la configurazione

    :master:

  10. #10
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    ciao,

    infatti setta in php.ini register_globals su off, poi devi riavviare il webserver.

    p.s.: puo darsi che il tuo provider non ti dia i diritti per eseguire queta modifica.

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.