• User Attivo

    Sessioni php non funzionano?

    Salve ragazzi ho un problema che non riesco a risolvere.... ascoltate un attimo:
    allora devo realizzare un form a tre pagine, la prima in cui verrano inseriti i dati personali, nome cognome, .... poi questa lo dovrebbe salvare in una sessione o in un cookie .... e deve passare tramite un submit ad un altro form presente in un altra pagina..... in cui le informazioni di questa li deve memorizzare nella sessione .. e insieme ai dati precedenti devono essere visualizzati nella pagina successiva... (la conferma).
    Ho provato con il session_start, e il register, ma i dati inseriti non vengono salvati, anche andando indietro si può notare che vengono cancellati.

    Ragazzi non so se sono stato chiaro, ..... ma sono un pò confuso,.,..,.-:?:?:?❌x❌x


  • Super User

    Posta il codice 😉


  • User Attivo

    Si ora lo posto


  • User Attivo

    Allora si ti posto il codice ecco:

    prima pagina:
    [HTML]<? session_start ();
    session_register("nome", "cognome", "email", "contatto", "altro");
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Documento senza titolo</title>
    </head>
    <body>
    <table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
    <td><p>Kobrabyte-Richiedi il tuo servizio online</p>
    <p> </p></td>
    </tr> <tr>
    <td><p>Parte A</p> <form action="parteb.php" method="post" target="_self">
    <p>Nome:
    <input type="text" name="nome" >
    Cognome:
    <input type="text" name="cognome" >
    Email:
    <input type="text" name="email" >
    Tel/Cel: <input type="text" name="contatto" >
    </p>
    <p>Altro : <div align="center"><textarea name="altro" cols="100"> Inserisci qui altre informazione , anche volendo il vostro curriculum, oppure allegatelo con l' apposito tasto presene in basso alla pagina</textarea></div>
    </p><br><br>
    <input type="submit"value="Continua" name="ok">
    </form>
    <p>  </p>
    </td>
    </tr>
    <tr>
    <td>
    </td>
    </tr>
    <tr>
    <td>

    </td>
    </tr>
    </table>
    </body>
    </html>[/HTML]

    Parteb.php, seconda pagina:
    [HTML]<? session_start();
    include ("header.php")?>

    <p>Parte B</p>
    <form name="form1" method="POST" action="parteb.php">
    <p>
    <label></label>
    <label>
    <input type="radio" name="radio" value="2">
    Preventivo Sito web</label>
    <br>
    <label>
    <input type="radio" name="radio" value="3">
    Partecipazione Raduno</label>
    <br>
    <label> </label><input type="submit">
    </form>
    <p>  </p>
    <?
    if ($_POST['radio'] == '2')
    {
    include ('preventivo.php');
    }if ($_POST['radio'] == '3')
    {
    include ('raduno.php');
    }
    ?>[/HTML]

    poi la pagina preventivo.php è questa:

    [HTML]<? session_start () ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Documento senza titolo</title>
    </head>

    <body>
    <form action="confermapreventivo.php" method="POST">
    Linguaggio di Programmazione
    <select name="programmazione[]">
    <option value="Php"> PHP</option>
    <option value="Flash">Flash</option>
    <option value="HTML/PHP">HTML/PHP</option>
    <option value="HTML/PHP/CSS">HTML/PHP/CSS</option>
    </select><br><br>
    Tipo di Grafica
    <select name="grafica[]">
    <option value="A pezzi">Grafica a frazioni</option>
    <option value="Integrale">Intera/integrale </option>
    </select>
    <br><br>
    Database Mysql
    <select name="Mysql[]">
    <option value="Si"> SI</option>
    <option value="No">NO</option>
    </select> <br><br>
    Special Pack
    <select name="pack[]">
    <option value="Basic Pack">Basic Pack</option>
    <option value="Middle Pack">Middle Pack</option>
    <option value="Integral Pack">Integral Pack</option>
    </select> <br><br>
    Pacchetti Accessori
    <select name="Accessori[]">
    <option value="Info">Info</option>
    <option value="Aziendale">Aziendale</option>
    <option value="ecommerce">E-commerce</option>
    </select><br><br>
    Extra
    <br><br>
    <input type="checkbox" name="extra[]" value="forum"> Forum<br>
    <input type="checkbox" name="extra[]" value="photo">Photogallery<br>
    <input type="checkbox" name="extra[]" value="guestbook">Guestbook<br>
    <input type="checkbox" name="extra[]" value="chat">Chat<br>
    <input type="checkbox" name="extra[]" value="musica di sottofondo">Musica di sottofondo<br>
    <input type="checkbox" name="extra[]" value="Inserti flash">Inserti Flash<br>
    <input type="checkbox" name="extra[]" value="Motore di ricerca interno">Motore di ricerca interno<br>
    <input type="checkbox" name="extra[]" value="Motore di ricerca esterno">Motore di ricerca esterno<br>
    <input type="checkbox" name="extra[]" value="Sondaggi">Sondaggi<br><br>
    <input type="submit" value ="Conferma e visualizza il preventivo" id="submit">
    </form></body>
    </html>[/HTML]

    che invia a confermapreventivo che dovrebbe essere questa:
    [HTML]
    <?session_start()?>

    <?
    $nome= $_SESSION['nome'];
    $cognome = $_POST['cognome'];
    $email= $_POST['email'];
    $tel= $_POST['contatto'];
    $altro= $_POST['altro'] ;

    echo "Il sig./a $nome $cognome, contattabile tramite telefono al numero <b>$tel</b> e tramite email all' indirizzo <b> $email</b>, ha lasciato scritto il seguente messaggio :<br><i>"$altro"</i> <br> <b> richiede</b>";
    ?>[/HTML]

    Non ancora ho terminato tutti i richiami ma con questi dati non funziona


  • Super User

    anzichè usare session_register("nome", "cognome", "email", "contatto", "altro");
    prova ad assegnare le variabili a $_SESSION
    $_SESSION['nome'] = $_POST['nome']


  • User Attivo

    dove lo aggiungo?dov' è session_register? e poi lo richiamo nella conferma con $_POST['nome']?


  • Super User

    nella pagina chiamata dopo il submit assegni i valori che ti interessano in $_SESSION, dunque se sono passati via post e vuoi memorizzare nella sessione il nome scrivi:
    $_SESSION['nome']=$_POST['nome'];

    Nelle pagine seguenti richiama i dati che ti interessano sempre con $_SESSION, per esempio:
    echo "Il tuo nome è: ".$_SESSION['nome'];
    Assicurati che in ogni pagina vi sia session_start();