• User Attivo

    passaggio sballato tramite hidden

    Scusate raga, ma ci sto uscendo di testa. Tramite hidden riesco a passare un valore, ma me ne passa un altro! Incredibile, forse mi sfugge qualcosa...
    Provero' a spiegarmi in breve, vi scrivo solo alcune parti dei miei 3 file:

    1. nuova_azienda.php

    <form name="moduloGuest" action="nuova_azienda2.php" method="post">
    <table>
    <tr>
    <td>ragione sociale:</td><td><input type="text" name="ragione_sociale" size="35" maxlength="50"></td>
    </tr>
    <tr>
    <td>cognome:</td><td><input type="text" name="cognome" size="35" maxlength="50"></td>
    </tr>
    ecc. ecc

    Da questo form io passo dei dati in post al file nuova_azienda2.php e tutto funziona...

    1. nuova_azienda2.php

    //RECUPERO IN POST DA nuova_azienda.php I PRIMI DATI E LI VISULIZZO
    //PER POI PASSARLI NEL DATABASE.

    $ragione_sociale=$_POST['ragione_sociale'];
    $cognome=$_POST['cognome'];

    echo '<table>';
    echo '<tr>';
    echo ' <td>ragione_sociale:</td><td>'.'&nbsp'.'&nbsp'.$ragione_sociale.'</td></tr>';
    echo ' <td>cognome:</td><td>'.'&nbsp'.'&nbsp'.$cognome.'</td></tr>';
    echo '</tr>';
    echo '</table>';

    ho anche provato a fare una stampa e funzionerebbe tranquillamente:

    echo "hello ".$ragione_sociale; //QUI STAMPA ESATTAMENTE QUELLO CHE VOGLIO MA POI NEL DATA BASE MI INSERISCE SOLO UNA PARTE!
    //ESEMPIO: IL VALORE DI $ragione_sociale inserito è KARA GAST, ma nel database vedo solo KARA!

    sempre nello stesso file metto il famoso campo hidden per passare le variabili

    <form name="moduloGuest" action="insert.php" method="post">
    <input type='hidden' name='ragione_sociale' value= <?php echo $ragione_sociale;?>>
    <input type='hidden' name='cognome' value=<?php echo $cognome;?>>
    //ecc ecc

    e poi aggiungo altri dati in altro form

    <table>

    <tr>
    <td>altri dati1:</td><td><input type="text" name="altri_dati1" size="35" maxlength="50"></td>
    </tr>
    <tr>
    <td>altri dati2:</td><td><input type="text" name="altri_dati2" size="35" maxlength="50"></td>
    </tr>
    </table>

    poi nel file:
    3) insert.php:

    // RECUPERO DI NUOVO I DATI

    $ragione_sociale=$_POST['ragione_sociale'];
    $cognome=$_POST['cognome'];
    ecc.ecc.

    e poi i secondi

    $altri_dati1=$_POST['altri_dati1'];
    $altri_dati2=$_POST['altri_dati2'];

    ma poi quando metto le istruzioni di inserimento:

    $q = "insert into anag_ditta (";
    $q .= " id_utenteee";
    $q .= " ,ragione_sociale";
    $q .= " ,cognome";
    $q .= " ,altri_dati1";
    $q .= " ,altri_dati2";
    ecc.ecc.

    $q .= " ) values (";
    $q .= " ,'" . addslashes($_POST['ragione_sociale']) . "'";
    $q .= " ,'" . addslashes($_POST['cognome']) . "'";
    ecc.ecc

    mi inserisce un pezzo di parola e basta (non è il numero di varchar, ho già controllato)

    Vi prego devo risolvere, grazie!


  • User Attivo

    prova a passare i dati con le sessioni invece che con post se non funziona posta il codice completo che vedo meglio:ciauz:


  • Consiglio Direttivo

    @maubox8 said:

    echo "hello ".$ragione_sociale; //QUI STAMPA ESATTAMENTE QUELLO CHE VOGLIO MA POI NEL DATA BASE MI INSERISCE SOLO UNA PARTE!
    //ESEMPIO: IL VALORE DI $ragione_sociale inserito è KARA GAST, ma nel database vedo solo KARA!
    Includi il nome detro gli apici e risolvi, ti faccio un esempio ;):
    value='<?php echo $ragione_sociale;?>'>

    @maubox8 said:

    sempre nello stesso file metto il famoso campo hidden per passare le variabili

    <form name="moduloGuest" action="insert.php" method="post">
    <input type='hidden' name='ragione_sociale' value= <?php echo $ragione_sociale;?>>
    <input type='hidden' name='cognome' value=<?php echo $cognome;?>>
    //ecc ecc

    e poi aggiungo altri dati in altro form

    <table>

    <tr>
    <td>altri dati1:</td><td><input type="text" name="altri_dati1" size="35" maxlength="50"></td>
    </tr>
    <tr>
    <td>altri dati2:</td><td><input type="text" name="altri_dati2" size="35" maxlength="50"></td>
    </tr>
    </table>

    poi nel file:
    3) insert.php:

    // RECUPERO DI NUOVO I DATI

    $ragione_sociale=$_POST['ragione_sociale'];
    $cognome=$_POST['cognome'];
    ecc.ecc.

    e poi i secondi

    $altri_dati1=$_POST['altri_dati1'];
    $altri_dati2=$_POST['altri_dati2'];

    ma poi quando metto le istruzioni di inserimento:

    $q = "insert into anag_ditta (";
    $q .= " id_utenteee";
    $q .= " ,ragione_sociale";
    $q .= " ,cognome";
    $q .= " ,altri_dati1";
    $q .= " ,altri_dati2";
    ecc.ecc.

    $q .= " ) values (";
    $q .= " ,'" . addslashes($_POST['ragione_sociale']) . "'";
    $q .= " ,'" . addslashes($_POST['cognome']) . "'";
    ecc.ecc

    mi inserisce un pezzo di parola e basta (non è il numero di varchar, ho già controllato)

    Vi prego devo risolvere, grazie!
    Prova come prima a metterli tra apici 😉
    se non ti funge neanche così fatti un echo di tutte le variaili prima di arrivare all'inserimento in Db 😉


  • User Attivo

    grazie! Erano proprio gli apici:
    <input type='hidden' name='ragione_sociale' value= '<?php echo $ragione_sociale;?>'>
    <input type='hidden' name='cognome' value='<?php echo $cognome;?>'>

    Grazie!
    ora ho un altro problema, ma forse lo risolvo...


  • Consiglio Direttivo

    😉