Carissimo borgo italia,
non riesco a capire una cosa...mi é successo questo:
Finito di copiare e di aggiornare le variabili ho controllato se funzionava e tutto andava a Meraviglia ritorno su mio editor per spostare i dessert in un piano di sotto
//Per prova avevo messo i Dessert al secondo posto
1 Antipasti
2 dessert
3 Piatto Principale
perché per i Piatti Pricipali la questione era un po piú complicata:
nella Riga "Art" ce un nome composto:
Carne / PiattoPrincipale
Pesce / PiattoPrincipale
Pasta / PiattoPrincipale
Siccome voglio Tutti i piatti Pricipali Ho messo:
%PiattoPrincipale
ed ha Funzionato dopo un po
che stavo nell editor é uscito un errore del programma
chiuso e riaperto ma il piatto pricipale non restava piú fermo,
ok riscrivi, ricopia, rivedi ......Niente
ho provato di tutto
e adesso chiedo ancora l'ULTIMO Aiuto
qui i due php
pag_menu2.php
PHP:
<?php
if(!isset($_SESSION)){
session_start();
}
//l'istruzione sopra deve essere utilizzata in TUTTE le pagine che richiamano le sessioni
if(isset($_POST['submit']) && $_POST['submit']=="Neue.Menu"){//submit cambia menu
/*
secondo me essendo la parte che regola le sessioni un po' lunga
la scriverei in un'altra pagina e farei un include
se non ti piace l'include copia il codice della pag elabora_menu.php
qui all'interno dell'if
*/
include_once "elabora_menu2.php";
}//fine if premuto submit
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("rezepte", $con);
//qui inserisci dati di connessione
//qui inizio il form************************
?>
<form action="<?php htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post" name="provaMenu">
<?php
if(!isset($_SESSION['Vorspeisen'])){//la sessione non è valorizzata**** RIGA A
$ch_Vorspeisen="";
$f_Vor="";
//$va_Vorspeisen=$id_portata; //riga da portata dopo select con if
}else{//la sessione è valorizzata
if($_SESSION['Vorspeisen']!= ""){
$ch_Vorspeisen="checked";//metti a checcato il checkbox
$va_Vorspeisen=$_SESSION['Vorspeisen'];//valorizzi con l'id riportato dalla sessione
$f_Vor=" id='".$va_Vorspeisen."' AND ";
}else{ //o vuota
$ch_Vorspeisen="";
$va_Vorspeisen="";
$f_Vor="";
}
}
$result = mysql_query("SELECT id,Name FROM rezepte WHERE ".$f_Vor."Art LIKE 'Vorspeisen' ORDER BY RAND() LIMIT 1 ");
$row = mysql_fetch_array($result);
if(!isset($_SESSION['Vorspeisen'])){$va_Vorspeisen=$row['id'];}//devo estrarre comunque l'id
//metti la tabella per impostare chek e nomi piatti
//con il check trasmetto se selezionato l'id del piatto
?>
<input name="Vorspeisen" type="checkbox" value="<?php echo $va_Vorspeisen; ?>"<?php echo $ch_Vorspeisen; ?>>
<?php
echo $row['Name'];//*** RIGA B
echo "<br>";
//*****************
//ripetere da RIGA A a RIGA B per primo piatto e dessert modificando i nomi delle variabili
//*****************
?>
<?php
if(!isset($_SESSION['Dessert'])){//la sessione non è valorizzata**** RIGA A
$ch_Dessert="";
$f_Des="";
//$va_Vorspeisen=$id_portata; //riga da portata dopo select con if
}else{//la sessione è valorizzata
if($_SESSION['Dessert']!= ""){
$ch_Dessert="checked";//metti a checcato il checkbox
$va_Dessert=$_SESSION['Dessert'];//valorizzi con l'id riportato dalla sessione
$f_Des=" id='".$va_Dessert."' AND ";
}else{ //o vuota
$ch_Dessert="";
$va_Dessert="";
$f_Des="";
}
}
$result2 = mysql_query("SELECT id,Name FROM rezepte WHERE ".$f_Des."Art LIKE 'Dessert' ORDER BY RAND() LIMIT 1 ");
$row = mysql_fetch_array($result2);
if(!isset($_SESSION['Dessert'])){$va_Dessert=$row['id'];}//devo estrarre comunque l'id
//metti la tabella per impostare chek e nomi piatti
//con il check trasmetto se selezionato l'id del piatto
?>
<input name="Dessert" type="checkbox" value="<?php echo $va_Dessert; ?>"<?php echo $ch_Dessert; ?>>
<?php
echo $row['Name'];//*** RIGA B
echo "<br>";
//*****************
//ripetere da RIGA A a RIGA B per primo piatto e dessert modificando i nomi delle variabili
//*****************
?>
<?php
if(!isset($_SESSION['%Hauptgang'])){//la sessione non è valorizzata**** RIGA A
$ch_Hauptgang="";
$f_Hau="";
//$va_Vorspeisen=$id_portata; //riga da portata dopo select con if
}else{//la sessione è valorizzata
if($_SESSION['%Hauptgang']!= ""){
$ch_Hauptgang="checked";//metti a checcato il checkbox
$va_Hauptgang=$_SESSION['%Hauptgang'];//valorizzi con l'id riportato dalla sessione
$f_Hau=" id='".$va_Hauptgang."' AND ";
}else{ //o vuota
$ch_Hauptgang="";
$va_Hauptgang="";
$f_Hau="";
}
}
$result3 = mysql_query("SELECT id,Name FROM rezepte WHERE ".$f_Hau."Art LIKE '%Hauptgang' ORDER BY RAND() LIMIT 1 ");
$row = mysql_fetch_array($result3);
if(!isset($_SESSION['%Hauptgang'])){$va_Hauptgang=$row['id'];}//devo estrarre comunque l'id
//metti la tabella per impostare chek e nomi piatti
//con il check trasmetto se selezionato l'id del piatto
?>
<input name="Hauptgang" type="checkbox" value="<?php echo $va_Hauptgang; ?>"<?php echo $ch_Hauptgang; ?>>
<?php
echo $row['Name'];//*** RIGA B
echo "<br>";
//*****************
//ripetere da RIGA A a RIGA B per primo piatto e dessert modificando i nomi delle variabili
//*****************
?>
<input name="submit" value="Neue.Menu" type="submit">
</form>
e
elabora_menu2.php
PHP:
<?php
//se usi l'include_once NON mettere altre intestazioni a quasta pagina
//parte per l'antipasto da ripetere uguale per gli altri piatti
$fisso_ant=$_POST['Vorspeisen'];//il valore è vuoto o con l'id
if($fisso_ant==""){//non è stato fissato
unset($_SESSION['Vorspeisen']);//annullo la sessione dell'antipasto
//$f_ant="";//metto la condizione a vuota nella pag precedente
}else{//è stato fissato e quindi contiene l'id dell'antipasto
$_SESSION['Vorspeisen']=$fisso_ant;//mantengo l'id per la prossima scelta
//$f_ant=" id='".$fisso_ant."' AND "; //creo una condizione fissa per la query select nella pag precedente
}
$fisso_ant=$_POST['Dessert'];//il valore è vuoto o con l'id
if($fisso_ant==""){//non è stato fissato
unset($_SESSION['Dessert']);//annullo la sessione dell'antipasto
//$f_ant="";//metto la condizione a vuota nella pag precedente
}else{//è stato fissato e quindi contiene l'id dell'antipasto
$_SESSION['Dessert']=$fisso_ant;//mantengo l'id per la prossima scelta
//$f_ant=" id='".$fisso_ant."' AND "; //creo una condizione fissa per la query select nella pag precedente
}
$fisso_ant=$_POST['%Hauptgang'];//il valore è vuoto o con l'id
if($fisso_ant==""){//non è stato fissato
unset($_SESSION['%Hauptgang']);//annullo la sessione dell'antipasto
//$f_ant="";//metto la condizione a vuota nella pag precedente
}else{//è stato fissato e quindi contiene l'id dell'antipasto
$_SESSION['%Hauptgang']=$fisso_ant;//mantengo l'id per la prossima scelta
//$f_ant=" id='".$fisso_ant."' AND "; //creo una condizione fissa per la query select nella pag precedente
}
/*****************************************************************
ripetere per gli altri due piatti
******************************************************************/
/* NOTA:
per fare le prove ti conviene prima mettere fisso anche la scelta carne..., poi
devi mettere anche la parte che riguarda carne, pesce...
*/
// forse l'header (o lariga echo "<meta..." ) non serve
//prova prima poi eventualmente commenti l'header
//header(location="pag_menu.php");
//se l'header di da errore sostituiscila con l'istruzione sotto
//echo "<meta http-equiv='Refresh' content='0; URL=pag_menu2.php'>";
?>
:dipser:
Non posso aver Dimenticato nessuna virgola o punto ho cambiato solo le variabili e Gli antipasti e i Dessert Funzionano......
Ha a che fare con le sessioni? anche quelle copiate e rifatte piú volte
ok spengo e riaccendo il computer.....
Andrea