logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
25 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 109 410 260

  • Nb. de membres 8 696
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  Le coin des codeurs »» Session php dure dure.. :-)

Session php dure dure.. :-)#9590

4Contributeur(s)
nicolas2Yoplaitmillo-wasTribal-Dolphin
3 Modérateur(s)
developpeurjpbJireck
millo-was millo-wasicon_post
Salut tt le monde !

Je suis entrain de me faire un petit espace membre pour un site qui est en préparation mais j'ai kelke problème... J'ai réalisé une page d'identification avec un formulaire(login.php) et une autre qui vérifie les infos et redirige en fonction du résultat(identifier.php) dans cette dernière page j'ai cette erreur :

Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in c:program fileseasyphpwwwparlonsdamour2identifier.php on line 34

Ligne 34 : $exist = mysql_numrows($res);

et pour info :

$sql = "SELECT * FROM esp_membres WHERE login=$login and pass=$pass";

$res = mysql_query($sql);

ce sont les lignes précédante à l'erreur

Merci à ceu ki pourron m'aidé

++
Yoplait Yoplaiticon_post
Salut Millo-was

V'la ton prob, c'est pas

mysql_numrows();
mais :
mysql_num_rows();

De plus je te conseille de faire des "or die" suite à tes requetes en cas d'erreur :

Exemple :

Remplace :
$res = mysql_query($sql);

par :
$res = mysql_query($sql) or die("Probleme dans la requete");

Voila, content si ça t'a aidé, bonne continuation !!! :-D
millo-was millo-wasicon_post
J'ai bien mis : mysql_num_rows() comme tu la di mai ça me fai toujours la meme erreur et voila ce que me retourne si je rajoute or die ( mysql_error() ); après $res = mysql_query($sql);

Something is wrong in your syntax près de '' à la ligne 1
nicolas2 nicolas2icon_post
tout simplement

$sql = "SELECT * FROM esp_membres WHERE login='$login' and pass='$pass'"; :-D
Yoplait Yoplaiticon_post
Ouais ça devrait aller mieux la normalement :=!
millo-was millo-wasicon_post
Merci à vous deux ça marche maintenant !
Mais maintenant j'ai un autre problème du au session.
Mon site utilise des !include! pour afficher la page centrale avec un adresse du genre : index.php?page=test

Mais apparemment ça pose problème au session car l'erreur suivant es affiché après identification :

Warning: Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp\www\xxx\index.php:5) in c:\program files\easyphp\www\xxx\membre.php on line 3

et le reste du programme s'exécute correctement.
Commen puis-je remèdier à ce problème ?
nicolas2 nicolas2icon_post
tu a pas une ligne de redirection du style header("location. ...........php")

si oui place un @ devant le header ou si ton script fonctionne sous npds tu remplace le header("location: ....php") par redirect_url(".......php")

[ Message édité par : nicolas2 : 18-01-2004 17:01 ]
millo-was millo-wasicon_post
Le script ne fonctionne pas sous npds et nulpart je n'utilise header("location: ... donc ça peu venir que des !include! l'erreur se produi ke kan la page d'identification es inclu avec le reste du site.
Yoplait Yoplaiticon_post
Faut p'tet faire l'appel à l'!include! au tout début de ton script :-?
millo-was millo-wasicon_post
Ba en faite mon site est organisé comme ça :

- index.php qui contient le design et à l'intèrieur un !include! du fichier inc.php

- inc.php contient :
<?php
if($page ==""){!include! ("accueil.php");}
if($page =sections=""){!include! ("sections.php");}

?>

Donc les page d'identification et la page membre son inclu dans la page index mais à cause de ça j'ai l'erreur décrite ci dessus alors que si je fai fonctionné le programme sans l'inclure dans index.php il marche parfaitement !

Yoplait Yoplaiticon_post
Euh tu veux dire plutot :

if($page =="sections"){!!include!! ("sections.php");}

au lieu de

if($page =sections=""){!!include!! ("sections.php");}

n'est ce pas ?
millo-was millo-wasicon_post
Oui mais ça ne résou pas mon problème
Tribal-Dolphin Tribal-Dolphinicon_post
Les header s'emploient avant tout envoie de code.
Donc ta ligne de session doit être le première (ou deuxième si tu à une condition)
millo-was millo-wasicon_post
Merci Tribal