Les variables globales($_SESSION[''])
stevyal
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
Salut à tous les développeurs de la planète php. Je sais pas si c'est moi qui me trompe mais je trouve que le php peut s'avéré être un langage casse tête. Cela fait plus d'un an que je suis fiancé avec ce langage et je croyais le connaître mais je me trompais. J'aimerais vraiment que quelqu'un m'arrange le coup. Voici mon problème :
J'ai un formulaire sur lequel je fais de vérification grâce au PCRE, vérifications après lesquelles je fais une redirection avec la fonction header(). Sur la page cible je récupère mes variables en session ($_SESSION['non_de_variable']). Il y a donc une variable de session que je définis par le résultat que retourne une fonction. Pour être clair voici le code :
Code html:
<html>
<head>
<title> Mon mariage avec php est douteux</title>
</head>
<body>
<form method="post">
<fieldset>
<legend> Ecole primaire</legend>
<label> Choisissez votre classe : <Label>
<select id="classe_primaire " name="primaire">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >SIL</option>
<option value="valeur2">Cours préparatoire</option>
<option value="valeur3">Cour élémentaire2</option>
<option value="valeur3">Cour moyen1</option>
<option value="valeur3">Cour moyen2</option>
</select>
</fieldset>
<br />
<fieldset>
<legend> Collège</legend>
<label> Choisissez votre classe : <Label>
<select id="college " name="college">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >6ème</option>
<option value="valeur2">5ème</option>
<option value="valeur3">4ème</option>
<option value="valeur3">3ème</option>
<option value="valeur3">2nd</option>
<option value="valeur3">première</option>
<option value="valeur3">Terminale</option>
</select>
</fieldset>
<br />
<fieldset>
<legend>enseignement Supérieur</legend>
<label> Choisissez votre niveau : <Label>
<select id="superieur " name="superieur">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >1ére année</option>
<option value="valeur2">2ème année</option>
<option value="valeur3">3ème année</option>
<option value="valeur3">4ème année</option>
</select>
</fieldset>
<br />
<input type="submit" value="Valider"/>
</body>
</html>
Code php: voici les deux fonctions que j'ai utilisées pour créer la variable $Classe.
<?php
function affiche_option($chaine1, $chaine2, $chaine2)
{
if( $chaine2 == 'Sélectionner' && $chaine3 == 'Sélectionner')
{
echo $chaine1;
}
elseif( $chaine1 == 'Sélectionner' && $chaine3 == 'Sélectionner')
{
echo $chaine2;
}
else//(Si la variable $chaine1 et $chaine2 valent 'Sélectionner'
{
echo $chaine3;
}
}
//la 2ème fonction
function affiche_classe($chaine1, $chaine2, $chaine3)
{
$liste_classe = array('$chaine1', 'chaine2', 'chaine3');
foreach($liste_classe as $valeur)
{
if( strlen($valeur) < 12 )
{
echo $valeur;
}
}
}
//Enfin je définis ma variable de session :
$Classe_prim = $_POST['primaire'] ;
$Classe_col = $_POST['college'] ;
$Classe_sup = $_POST['superieur'] ;
$_SESSION['Classe'] = affiche_classe($Classe_prim, $Classe_col, $Classe_sup);
//ou alors l'autre fonction pas les deux à la fois !
$_SESSION['Classe'] = affiche_option($Classe_prim, $Classe_col, $Classe_sup);
?>
< ?php
// dans la page cible je voudrais faire un swich () en utilisant la variable session pour faire un <select> ravitailler par la base de données de cette manière :
$user="root";
$host="localhost";
$password="";
$database="ma_base";
$connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
mysql_select_db($database,$connexion);
$Classe = $_SESSION['Classe'] ;
swich ($Classe)
{
case 'Sil' : $req = mysql_query("SELECT DISTINCT E.Nom , E.Prenom, I.Matricule FROM eleves As E, Classe_Sil_a As I WHERE E.Matricule = I.Matricule ORDER BY E.Nom") or die(print_r($base->errorInfo()));;
break;
case 'terminale': $req = mysql_query("SELECT DISTINCT E.Nom , E.Prenom, I.Matricule FROM eleves2 As E, Classe_terminale_a As I WHERE E.Matricule = I.Matricule ORDER BY E.Nom") or die(print_r($base->errorInfo()));;
break;
}
?>
Malheureusement ma variable $_SESSION['Classe'] n'existe pas. J'ai même fait un
if(!empty($_SESSION['Classe']))
{
$Classe = $_SESSION['Classe'];
echo $Classe;
}
else {echo 'La variable Classe n\'existe pas';} ça affiche : 'La variable Classe n'existe pas'
S'il vous plait aidez-moi ! Sauvez ma relation avec php.
J'ai un formulaire sur lequel je fais de vérification grâce au PCRE, vérifications après lesquelles je fais une redirection avec la fonction header(). Sur la page cible je récupère mes variables en session ($_SESSION['non_de_variable']). Il y a donc une variable de session que je définis par le résultat que retourne une fonction. Pour être clair voici le code :
Code html:
<html>
<head>
<title> Mon mariage avec php est douteux</title>
</head>
<body>
<form method="post">
<fieldset>
<legend> Ecole primaire</legend>
<label> Choisissez votre classe : <Label>
<select id="classe_primaire " name="primaire">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >SIL</option>
<option value="valeur2">Cours préparatoire</option>
<option value="valeur3">Cour élémentaire2</option>
<option value="valeur3">Cour moyen1</option>
<option value="valeur3">Cour moyen2</option>
</select>
</fieldset>
<br />
<fieldset>
<legend> Collège</legend>
<label> Choisissez votre classe : <Label>
<select id="college " name="college">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >6ème</option>
<option value="valeur2">5ème</option>
<option value="valeur3">4ème</option>
<option value="valeur3">3ème</option>
<option value="valeur3">2nd</option>
<option value="valeur3">première</option>
<option value="valeur3">Terminale</option>
</select>
</fieldset>
<br />
<fieldset>
<legend>enseignement Supérieur</legend>
<label> Choisissez votre niveau : <Label>
<select id="superieur " name="superieur">
<option value="Sélectionner" selected="Sélectionner">SIL</option>
<option value="valeur1" >1ére année</option>
<option value="valeur2">2ème année</option>
<option value="valeur3">3ème année</option>
<option value="valeur3">4ème année</option>
</select>
</fieldset>
<br />
<input type="submit" value="Valider"/>
</body>
</html>
Code php: voici les deux fonctions que j'ai utilisées pour créer la variable $Classe.
<?php
function affiche_option($chaine1, $chaine2, $chaine2)
{
if( $chaine2 == 'Sélectionner' && $chaine3 == 'Sélectionner')
{
echo $chaine1;
}
elseif( $chaine1 == 'Sélectionner' && $chaine3 == 'Sélectionner')
{
echo $chaine2;
}
else//(Si la variable $chaine1 et $chaine2 valent 'Sélectionner'
{
echo $chaine3;
}
}
//la 2ème fonction
function affiche_classe($chaine1, $chaine2, $chaine3)
{
$liste_classe = array('$chaine1', 'chaine2', 'chaine3');
foreach($liste_classe as $valeur)
{
if( strlen($valeur) < 12 )
{
echo $valeur;
}
}
}
//Enfin je définis ma variable de session :
$Classe_prim = $_POST['primaire'] ;
$Classe_col = $_POST['college'] ;
$Classe_sup = $_POST['superieur'] ;
$_SESSION['Classe'] = affiche_classe($Classe_prim, $Classe_col, $Classe_sup);
//ou alors l'autre fonction pas les deux à la fois !
$_SESSION['Classe'] = affiche_option($Classe_prim, $Classe_col, $Classe_sup);
?>
< ?php
// dans la page cible je voudrais faire un swich () en utilisant la variable session pour faire un <select> ravitailler par la base de données de cette manière :
$user="root";
$host="localhost";
$password="";
$database="ma_base";
$connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
mysql_select_db($database,$connexion);
$Classe = $_SESSION['Classe'] ;
swich ($Classe)
{
case 'Sil' : $req = mysql_query("SELECT DISTINCT E.Nom , E.Prenom, I.Matricule FROM eleves As E, Classe_Sil_a As I WHERE E.Matricule = I.Matricule ORDER BY E.Nom") or die(print_r($base->errorInfo()));;
break;
case 'terminale': $req = mysql_query("SELECT DISTINCT E.Nom , E.Prenom, I.Matricule FROM eleves2 As E, Classe_terminale_a As I WHERE E.Matricule = I.Matricule ORDER BY E.Nom") or die(print_r($base->errorInfo()));;
break;
}
?>
Malheureusement ma variable $_SESSION['Classe'] n'existe pas. J'ai même fait un
if(!empty($_SESSION['Classe']))
{
$Classe = $_SESSION['Classe'];
echo $Classe;
}
else {echo 'La variable Classe n\'existe pas';} ça affiche : 'La variable Classe n'existe pas'
S'il vous plait aidez-moi ! Sauvez ma relation avec php.
A voir également:
- Les variables globales($_SESSION[''])
- Echange de variables globales entre fichiers programmes - Forum Python
- Problemes avec les sessions ($_SESSION) - Forum Webmastering
- Amandine utilise une application pour gérer les inscriptions aux activités de son club. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « inscriptions » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Loisirs / Divertissements
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « reservations » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Programmation
- Les variables ✓ - Forum Python