Visualizzazione dei risultati da 1 a 5 su 5

Discussione: solite variabili

  1. #1

    solite variabili

    Scusate dove sbaglio...
    non mi mantiene in memoria tutti i dati inviati dalle pagine.
    mi spiego meglio: come invio i dati da una pagina, e passo all'altra e aggiungo dei dati come li riinvio mi cancella i precedenti perchè?

    Codice PHP:
    <?php  if(!isset($_SESSION)) { 

    session_start(); }   
    if(@
    $_POST['var'] != NULL) { //se è stata fatta almeno una selezione      
    //creo la sessione array    
     
    $_SESSION['Aperitivi']=$_POST['var'];     
    $_SESSION['Antipasti_carne']=$_POST['var'];     
    $_SESSION['Antipasti_pesce']=$_POST['var'];     
    $_SESSION['Primi_carne']=$_POST['var']; 
    $_SESSION['Primi_pesce']=$_POST['var'];     
    $_SESSION['Secondi_carne']=$_POST['var'];     
    $_SESSION['Secondi_pesce']=$_POST['var'];     
    $_SESSION['Contorni']=$_POST['var'];     
    $_SESSION['Dolci']=$_POST['var'];                

    foreach(
    $_POST['var'] as  $valore  ){         
    echo 
    $valore 
    "
    ;    }     
    echo 
    "<a href=\"aperitivi.php\"> modifica dati </a>"; }
    else{     
    echo 
    "<a href=\"aperitivi.php\"> devi fare almeno una scelta </a>"; }  ?>

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,452
    session_start() devi mettercelo sempre, non solo if(!isset($_SESSION))

    Togli quel controllo e fa sempre eseguire session_start().
    La variabile $_SESSION a meno che tu non la distrugga con session_unset() o unset($_SESSION), sarà sempre settata, anche se non disponibile, quindi quell'if è sempre falso e session_start() non viene eseguita, dunque la scrittura delle variabili seguenti non avviene.

  3. #3
    togliendolo ricevo questo errore,
    Notice: A session had already been started - ignoring session_start() in
    e comunque non mantiene ancora i dati in memoria

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,452
    Questo mi fa pensare che questo script viene incluso in un altro oppure che hai un altro session_start() dentro lo stesso script, è così?

    Per quanto riguarda le variabili che non vengono tenute, prova a spiegare meglio.
    Le variabili di questo script devi leggerle in un altro e lì risultano vuote?
    C'è il session_start() su quest'altro script?

  5. #5
    allora andiamo per ordine si credo che l'errore del session_start venga dal fatto che faccio un include sulle pagine dove spdisco dei form in modo che l'utente possa vedere sempre cosa ha selezionato, quindi provo a togliere il session_start nelle pagine.

    per le variabili io uso questo script:
    Codice PHP:
    <form action="" name="dati" method="post">
            <h2>Aperitivi </h2>
            <?php do { ?>
              <table width="400" border="0" align="left" >
                <tr>
                  <td width="391" align="left" scope="col"><?php echo $row_Recordset1['Aperitivi']; ?></td>
                  <th width="60" align="left"  scope="col"> <?php

    $ape
    =array($row_Recordset1['Aperitivi']);
    //.......
    $ch="";
    foreach(
    $ape as $row_Recordset1['Aperitivi']){
      if(isset(
    $_SESSION['Aperitivi'])){ 
          
    //se esiste verifiche che dentro ci sia il valore del check 
          
    if(in_array($row_Recordset1['Aperitivi'], $_SESSION['Aperitivi'])){ 
              
    $ch="checked"
          }else{ 
              
    $ch=""
          } 
      } 
      
      echo 
    "<input name=\"var[]\" type=\"checkbox\" value=\"".$row_Recordset1['Aperitivi']."\" $ch />
    "
    ;        
    }

    ?></th>
                </tr>
              </table>
              <?php } while ($row_Recordset1 mysql_fetch_assoc($Recordset1)); ?>
            <input name="aggiungi" type="submit" />
          </form>
    dove i risultati dovranno essere mantenuti da preventivo.php, e nello stesso tempo visualizzati in un div di tutte le pagine in modo che l'utente possa visualizzare ciò che ha scelto ed eventualmente modificarlo, andando sulla pagina e defleggarlo o aggiungere.
    ma non mi rimangono in memoria.

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.