Probleme de Mysql, en php

Lrnv -  
Smoking bird Messages postés 911 Statut Membre -
Bonjour!!

Voila, je me trouve confronter a une ereur sql, qui je ne comprend pas ...

voila mon code :

$reponce_sql = mysql_query ("SELECT * FROM membres WHERE membre_pseudo = '$pseudo'");
$donnees_sql = mysql_fetch_array("$reponse_sql");

ET php me dit :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\oskar\bas_de_la_page.php on line 12

Pourquoi?

Merci d'avence de me repondre!
A voir également:

20 réponses

Dr Zoidberg Messages postés 547 Statut Membre 100
 
Salut,

Tu appels ta variable $reponce_sql et la ligne d'après $reponse_sql
0
gigaga Messages postés 2347 Date d'inscription   Statut Membre Dernière intervention   301
 
Vérifie ta requête ou ta connexion.
0
Lrnv
 
Merci!!!

toiut sa pour une faute d'orthographe!^^^^
0
Lrnv
 
Ah ben non, sa marche toujour pas...
0
gigaga Messages postés 2347 Date d'inscription   Statut Membre Dernière intervention   301
 
C'est souvent dû à une erreur rencontré à l'exécution de la requête ou à la connexion à la base!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Smoking bird Messages postés 911 Statut Membre 58
 
sors le pseudo de ta requête:
"SELECT * FROM ... where membre_pseudo=' ".$pseudo." ' "

mysql a du mal parfois avec des variables qui ne sont pas concaténées
0
Lrnv
 
Non, merci, mais c'etait pas sa, j'ai quand memem copier ton code, il est plus propre...

D'auters idées?
0
gigaga Messages postés 2347 Date d'inscription   Statut Membre Dernière intervention   301
 
Donne le code complet (avec la connexion)
0
Lrnv
 
<?php
if(isset($_SESSION['pseudo']))
{
$pseudo = $_SESSION['pseudo'];
$reponce_sql = mysql_query ("SELECT * FROM membres where membre_pseudo=' ".$pseudo." ' " ) or die(mysql_error);
// $donnees_sql = mysql_fetch_array("$reponce_sql");
if( $donnees_sql['membre_droitadmin'] = 1 )
{
?>
<li id="active"><a href="#" id="current">Administration</a>
<ul class="navsouscontener">
<li><a href="/oskar/admin/liste_news.php">Liste des News</a></li>
<li><a href="/oskar/rediger_news.php">Rediger une news</a></li>
<li><a href="#">Lien3</a></li>
</ul>
</li>
<?php
}
}
?>






Voila le code...

Je vien de remarquer un truc, il me domnne une erueur, mais il m'aficher quand meme la partie de menu qui est dans le if $donnees_sql['membre_droitadmin'] = 1

Pourquoi?
0
Smoking bird Messages postés 911 Statut Membre 58
 
la partie du menu s'affiche précisément parce que tu as réaffecté une valeur^^ tu n'as pas comparé, donc puisque tu as réaffecté, c'est toujours vrai, donc ça exécute ton if
0
Smoking bird Messages postés 911 Statut Membre 58
 
faut que tu fasses un while pour balayer le retour de ta bdd^^ sinon t'es sûr que ça marchera pas^^
0
Lrnv
 
Coment sa un while?
0
Smoking bird Messages postés 911 Statut Membre 58
 
$sql="select * from membres where membre_pseudo='".$pseudo."'";
$query=mysql_query($sql) or die(mysql_error());
while($membres=mysql_fetch_array($query)) {
//là tu mets toutes les instructions qui ont besoin de traiter avec les données que tu as récupérées de ta bdd, qui se prendront ainsi: $membres['nom_colonne']
ex:
if($membres['droit_admin']==1) {
//faire truc
}
}
0
Lrnv
 
mais non, je veut pas faire sa!

Je veut juste verifier si ce chant a la colne xxx est egal a 1, si il est agal, alor tu afiche le reste UNE SEULE FOIS.

ton script l'aficherait autant de fois qu'il y a de chant avec la colone xxx egal a 1.
0
Smoking bird Messages postés 911 Statut Membre 58
 
quand tu compares des données, utilises == pour comparer le contenu, et === pour comparer l'égalité de contenu et de type de variables. Un simple = ne comparera rien du tout, il ne fera que réaffecter une valeur à une variable
0
Smoking bird Messages postés 911 Statut Membre 58
 
bien sûr que non, puisque que tu as sélectionné que les données contenant l'utilisateur $pseudo avec le where de ta requête
0
Lrnv
 
Je vien de le faire, mais sa ne marche toujour pas...

Merci quand meme de tout ces conseil.
0
gigaga Messages postés 2347 Date d'inscription   Statut Membre Dernière intervention   301
 
Y a toujours pas la connexion!!

Ton code du style :
if (!$db = @mysql_connect(DBHOST,DBUSER,DBPASSWD))
return FALSE; # pas de connexion
if (!@mysql_select_db(DBNAME, $db)) {
@mysql_close($db);
return FALSE; # bdd introuvable
}

?
0
Smoking bird Messages postés 911 Statut Membre 58
 
no worries^^

tes droits d'utilisateurs sont toujours en chiffres?
Ca affiche quoi maintenant?
0
Lrnv
 
qué droit d'utilisateur?
0
Smoking bird Messages postés 911 Statut Membre 58
 
ta colonne membre_droitadmin, y'a que des chiffres mit dedans?
0
Lrnv
 
oui bien sur, des 0 et des 1.

la il me semble que c'est bon... attend, je verifie que tout va bien, et je te dit
0
Lrnv
 
AH, il me semble que c'est bon...

Mercii beaucoup!!!!
0
Smoking bird Messages postés 911 Statut Membre 58
 
j't'en prie^^

J'me permet de te recommander un apprentissage plus rigoureux du php et de ses manipulations de base, elles ne sont pas compliquées, pas nombreuses, et permettent de faire un paquet de truc. Et si tu mets l'accent sur une pratique rigoureuse et disciplinée du code, tu avanceras plus vite et seras nettement moins confronté à ce genre de petits soucis^^ (qui freinent le travail et usent les nerfs quand on commence :D on s'en souvient tous^^)
0