Visualizzazione dei risultati da 1 a 3 su 3

Discussione: problema con sessioni

  1. #1

    problema con sessioni

    Buongiorno a tutti,
    sono un nuovo utente alle prese con programmazione php e ringrazio in anticipo tutti quelli che vorranno aiutarmi.

    Vi spiego brevemente il mio problema: sto realizzando una pagina di registrazione in php che consta di di diversi passi in cui vengono chiesti dati differenti. Ogni volta utilizzo un form html che si ricollega alla stessa pagina che fa in controllo e se i dati sono corretti stampa il prossimo form da completare. Contavo di salvare man mano i dati nell'array session ogni volta. Ma quando arrivo nel terzo form quello che avevo salvato in session prima non mi viene riconosciuto.
    Mi viene scritto undefined index nome. Mentre se tolgo prima l'assegnazione di cognome mi viene addirittura scritto undefined variable $_session; non so più dove sbattere la testa

    codice file test sessione.php

    Codice PHP:
    <?php
    session_start
    ();
    ?>

    <html>
    <head>
    <title>Pagina di registrazione</title>
    <link rel="stylesheet" type="text/css" href="form.css">
    </head>

    <?php

    IF(isset($_POST['submit1']))
    //ho inviato il form1
      
    $_session['nome'] = $_POST['nome'];
      echo 
    $_session['nome']; //questo viene stampato senza problemi
      
    echo"<body>";
      echo
    "<form name=\"registra2\" action=\"test sessione.php\" method=\"POST\">";
        echo
    "<table class=\"registrazione\">";
        echo
    "<tr>";
        echo
    "    <td><p align=\"center\"> cognome </p> </td>";
        echo
    "    <td><input type=\"text\" name=\"cognome\" size=\"4\" MAXLENGTH=\"3\"> </td>";
        echo
    "    <td> 
     
     
     </td>"
    ;
        echo
    "</tr>";
        echo
    "<tr>";
        echo
    "<td> <input type=\"reset\" name=\"resetta\" > </td>";
        echo
    "<td> <input type=\"submit\" name=\"submit2\" value=\"invia\"> </td>";
        echo
    "<td> 
     
     
     </td>"
    ;
        echo
    "</tr>";
        echo
    "</table>";
        echo
    "</form>";

      echo
    "</body>";
      echo
    "</html>";
    }

    else if(isset(
    $_POST['submit2']))
    {  
    //ho inviato il form2
       
    $_session['cognome'] = $_POST['cognome']; //se tolgo questa riga e faccio echo $_session['nome' mi esce undefined variable session
       
    echo $_session['nome'];  //nome non lo prende più...
       
    echo $_session['cognome'];
       echo
    "<body>";
       echo
    "</body>";
       echo
    "</html>";
    }
    else   
    //non ho inviato nessun form
    {
        echo
    "<body>";
        echo
    "<form name=\"registra\" action=\"test sessione.php\" method=\"POST\">";
        echo
    "<table class=\"registrazione\">";
        echo
    "<tr>";
        echo
    "    <td><p align=\"center\"> nome </p> </td>";
        echo
    "    <td><input type=\"text\" name=\"nome\" size=\"4\" MAXLENGTH=\"3\"> </td>";
        echo
    "    <td> 
     
     
     </td>"
    ;
        echo
    "</tr>";
        echo
    "<tr>";
        echo
    "<td> <input type=\"reset\" name=\"resetta\" > </td>";
        echo
    "<td> <input type=\"submit\" name=\"submit1\" value=\"invia\"> </td>";
        echo
    "<td> 
     
     
     </td>"
    ;
        echo
    "</tr>";
        echo
    "</table>";
        echo
    "</form>";
        echo
    "</body>";
        echo
    "</html>";
    }
    ?>
    Grazie davvero per tutto l'aiuto che riuscirete a darmi

  2. #2
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Prova a scrivere $_SESSION tutto maiuscolo

  3. #3
    fantastico adesso funziona!!

    Grazie mille davvero!! era un errore banale ma non ci avevo pensato (pensavo fosse uguale)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.