Requete php mysql
Résolu
dupont123
-
dupont123 -
dupont123 -
Bonjour,
mon probleme est que ma requete ne fonctionne pas comme je voudrait, dans ma base de donnée mysql j'ai un champ droit util compose de 1 et 0
la reque te doit faire que si c'est 0 il affiche message .php et si c'est 1 ecrire et message .php
voici mon code
pour l'instant quand je l'execute il met toujours ecrire et message .php
if (!isset($_SESSION['nom'])) {
}else{
include('calendrier.php');
$req2 = 'SELECT DroitUtil
FROM utilisateur
WHERE NomUtil = "'.$_SESSION['nom'].'";';
$result2= mysql_query($req2);
while($data = mysql_fetch_assoc($result2)) {
if ($data = 0) {
include('message.php');
}else{
include('ecrire.php');
include('message.php');
}
}
}
mon probleme est que ma requete ne fonctionne pas comme je voudrait, dans ma base de donnée mysql j'ai un champ droit util compose de 1 et 0
la reque te doit faire que si c'est 0 il affiche message .php et si c'est 1 ecrire et message .php
voici mon code
pour l'instant quand je l'execute il met toujours ecrire et message .php
if (!isset($_SESSION['nom'])) {
}else{
include('calendrier.php');
$req2 = 'SELECT DroitUtil
FROM utilisateur
WHERE NomUtil = "'.$_SESSION['nom'].'";';
$result2= mysql_query($req2);
while($data = mysql_fetch_assoc($result2)) {
if ($data = 0) {
include('message.php');
}else{
include('ecrire.php');
include('message.php');
}
}
}
13 réponses
-
Voilà ce que je propose
if (isset($_SESSION['nom'])) // pas la peine de mettre ! { include('calendrier.php'); $req2 = 'SELECT DroitUtil FROM utilisateur WHERE NomUtil = "'.$_SESSION['nom'].'";'; $result2= mysql_query($req2); echo($req2); // j'ai remis echo pour la forme :p $data = mysql_fetch_array($result2) // pas besoin de boucle si on attends une seule ligne if ($data[0] == 0) // ne pas oublier l'indice { include('message.php'); } else { include('ecrire.php'); include('message.php'); } } -
Fait un "echo $data" pour voir "en quoi c'est différent de 0". ;)
On ne sait pas ce qu'il y a dans ta BDD nous.-
j'ai mis ecr(echo $data); apres la requete et il affiche : c'est a dire la ligne que je vient d'ajouter
Parse error: parse error, expecting '')'' in C:\wamp\www\calendrier\index.php on line 40
et quand je fait Resource ecr($result2); il m'affiche id #11
ma base est compse de 5 champs :
IdUtil LoginUtil MdpUtil NomUtil DroitUtil
-
-
Bonjour,
Essaye de mettre ta variable de session dans une variable simple, puis mettre cette dernière dans ta requete SQL -
if ($data = 0) {
à remplacer par:
if ($data == 0) { -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Fait un "echo $req2;" Pour voir si ta requête est bonne.
Montre nous ce que ça t'affiche. -
$req2 = 'SELECT DroitUtil
FROM utilisateur
WHERE NomUtil = "'.$_SESSION['nom'].'";';
à remplacer par:
$req2 = "SELECT 'DroitUtil' FROM 'utilisateur' WHERE 'NomUtil' = '".$_SESSION['nom']."'";
Attention: les apostrophes avant et après: DroitUtil utilisateur NomUtil sont les apostrophes Alt Gr + 7-
-
Tu peux toujours changer mysql_fetch_assoc par mysql_fetch_array fonction qui a le même but.
Par contre si l'erreur est encore la, alors c'est la requete qui est fausse auquel cas je te propose de la revoir, surtout avec les apostrophes... peut-être un echo $req2; permettrait de savoir si $_SESSION alimente correctement la requete.
Ensuite, comme m_f_a comme m_f_a retourne un tableau donc dans ta ligne
if ($data = 0) {
Il faudrai mettre plutôt:
while{...
if ($data[0]=0) {
...etc...
}
}
-
-
sa ne marche toujours pas en faisant un echo $req2 il affiche
echo SELECT DroitUtil FROM utilisateur WHERE NomUtil = "dupont";
pourtant je suis sur que ma requete est bonne : -
-
Colle nous ton code, tu as une erreur dedans qui fait que un "echo" s'intègre a ta requête ;)
-
<?php
//Paramètes de connexions à la base de données
require('scripts2/bdd_param.php');
//Connexion à la base de données
require('scripts2/bdd_connexion.php');
//Récupération des fonctions
require('scripts2/fonctions.php');
//Récupération des informations de connexion
require('scripts/param.php');
//Connexion à la base de données
mysql_connect($bdd_hote,$bdd_login,$bdd_mdp) or die('Erreur de connexion au serveur MySQL');
//Sélection de la base de données
mysql_select_db($bdd_nom) or die('Erreur de sélection de la base de données');
//Sessions
session_start();
//Entête page HTML
ecr('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">');
ecr('<html xmlns="http://www.w3.org/1999/xhtml">');
ecr('<head>');
ecr('<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />');
ecr('<title>Site Mairie</title>');
ecr('<link href="scripts/style.css" rel="stylesheet" type="text/css" />');
ecr('</head>');
ecr('<body>');
$nom_ut=
include('connexion.php');
if (!isset($_SESSION['nom'])) {
}else{
include('calendrier.php');
$req2 = 'SELECT DroitUtil
FROM utilisateur
WHERE NomUtil = "'.$_SESSION['nom'].'";';
$result2= mysql_query($req2);
ecr('echo $req2');
while($data = mysql_fetch_array($result2)) {
if ($data == 0) {
include('message.php');
}else{
include('ecrire.php');
include('message.php');
}
}
}
//Fermeture page HTML
ecr('</body>');
ecr('</html>');
?> -
C'est quoi ça? => ecr('echo $req2');
Remplace par echo $req2; -