Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
839 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  requete php mysql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

requete php mysql

n°1358959
jedebute75
Posté le 03-05-2006 à 17:55:30  profilanswer
 

cette fois, je bloque vraiment!!!
 
j'ai une requête de type : $query_resultatenquete = "SELECT * FROM information WHERE nom = '$choix'";
($choix etant une variable récupéré par la methode POST).
 
ça marche nikel... sauf que j'aimerais si $choix n'existe pas dans ma table (donc si l'utilisateur cherche une personne qui n'est pas dans la base) qu'il affiche une phrase du genre 'ce nom n'existe pas'
là, il m'affiche une page vide (forcément puisque je fais exprès de taper un nom qui n'existe pas).
je ne sais pas trop ou coder tout ça...
 
HELP, si quelqun a une idée, merci

mood
Publicité
Posté le 03-05-2006 à 17:55:30  profilanswer
 

n°1358965
hardrog
Play it fucking loud !!
Posté le 03-05-2006 à 17:59:21  profilanswer
 

Je vois pas trop ou est le probléme....
 

Code :
  1. $query_resultatenquete = "SELECT * FROM information WHERE nom = '$choix'"
  2. if($query_resultatenquete)
  3. {
  4.     //traitement
  5. }
  6. else
  7. {
  8.      echo"pas d'utilisateur de ce nom...";
  9. }


Message édité par hardrog le 03-05-2006 à 17:59:38
n°1358981
jedebute75
Posté le 03-05-2006 à 18:12:28  profilanswer
 

hemmm, ouais c mega simple :-(((, je cherchais tellement compliqué ma foi. MERCI MERCI

n°1358982
hardrog
Play it fucking loud !!
Posté le 03-05-2006 à 18:13:39  profilanswer
 

c la fin de la journée c normal :lol:

n°1359134
Djebel1
Nul professionnel
Posté le 04-05-2006 à 02:14:49  profilanswer
 

ouais enfin là le code de hardrog fera pas ce que tu veux : $query_resultatenquete existera toujours, le message d'abscence de résultat ne s'affichera jamais. Et même la ressource de ta requête à la base existera toujours, même s'il n'y a pas de résultat.  
C'est au niveau du mysql_fetch_array que ça se joue.
 

Code :
  1. //au passage, n'oublie pas de protéger tes string venant de l'utilisateur avec mysql_real_escape_string
  2. $query = 'SELECT * FROM information WHERE nom = "'.mysql_real_escape_string($choix).'"';
  3. $rs = mysl_query($query) //sera une ressource meme s'il n'y a pas de résultat
  4. $data = null;
  5. //c'est ici que ça se joue
  6. //mysql_fetch_array($rs) renverra false s'il n'y a pas de résultats
  7. if ($data = mysql_fetch_array($rs)) {
  8. //résultat
  9. } else {
  10. //pas de résultat
  11. }


Message édité par Djebel1 le 04-05-2006 à 02:18:02
n°1359294
jedebute75
Posté le 04-05-2006 à 10:33:36  profilanswer
 

merci Djebel1, effectivement, je m'en suis rendu compte... je cherchais une autre solution avant de poster mais ta réponse vient à point :-)
Je teste de suite!

n°1359332
jedebute75
Posté le 04-05-2006 à 11:09:14  profilanswer
 

j'ai testé!! il bloque sur   $data = null;
j'ai un message d'erreur :  
Parse error: parse error, unexpected T_VARIABLE in D:\serveur\monsite.com\annuairecrit.php on line 12   (ligne 12 c donc le $data = null;

n°1359335
FlorentG
Unité de Masse
Posté le 04-05-2006 à 11:10:24  profilanswer
 

Parce qu'il manque un point-virgule après mysql_query()

n°1359368
jedebute75
Posté le 04-05-2006 à 11:27:18  profilanswer
 

bahhh vouiiiiiiiiiiii :-(((!!! ça marche du coup merci

n°1359384
jedebute75
Posté le 04-05-2006 à 11:43:31  profilanswer
 

suite : bon je change un peu de sujet
variable de session :  
j'ai créé une variable de session :  
if (isset($_POST['login']))  
{ session_register('login');
$_SESSION ['login'] = $_POST['login'];
 
et en debut de chaque page :  
session start() puis je teste si la variable de session login existe
session_start();
if ( $_SESSION ['login'] == "password" ) // Si le mot de passe est bon
{ traitement}
else {formulaire de saisie du login}
 
sauf que quand je rentre l'url d'une des pages protégé en direct, effectivement il m'affiche le formulaire de saisie (normal puisque la variable login n'existe pas) mais j'ai en plus un :  
Undefined index: login in D:\serveur\monsite.com\criteres.php on line 3 la ligne 3 correspondant à  
if ( $_SESSION ['login'] == "password" )  
j'ai déjà testé avec un if (isset($_SESSION['login'])) et j'ai le même résultat.
 
d'autre part, j'ai un ensemble de 4 pages necessitant la variable de session pour s'afficher,  
formulaire de saisie du mot de passe... si ok... affichage page 1, de page une lien vers page 2...de page 2 lien vers page 3 ect... en debut de chaque page, le fameux test si la variable de session est bonne... donc ça marche mais quand de la page 2 par exemple je clique sur le lien de retour en page 1, j'ai automatiquement le formulaire de saisie du login qui s'affiche alors que la variable de saisie existe déjà!!!
 
je ne comprend pas trop!!!

mood
Publicité
Posté le 04-05-2006 à 11:43:31  profilanswer
 

n°1359385
sielfried
Posté le 04-05-2006 à 11:45:58  profilanswer
 

if (isset($_SESSION['login']) && $_SESSION['login'] == ...) ne doit pas afficher de Notice.
 
Sinon, ton session_register ne sert à rien.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1359403
jedebute75
Posté le 04-05-2006 à 12:01:31  profilanswer
 

moi j'hallucine un peu parceque ça marche juste avec un if (isset($_SESSION['login'])) BIZZARD mais pourtant ça marchait pas...
bref, je ne test pas si le mot de passe est bon puisque à priori si la variable de session existe c que forcément l'utilisateur c'est authentifié avec le bon mot de passe au debut!!! oulààà j'ai besoin de vacance moi :-))))
MERCI


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  requete php mysql

 

Sujets relatifs
requete php pour base mysqlpetit probléme de requete MySQL avec l'utilisation d'une variable PHP
PHP/MySQL: requete de tri et LEFT JOIN[PHP]Utiliser le resultat d'un DATE_FORMAT de requete mysql sous dream
Requete MySQL avec des variables ?Requete mysql complexe
requête mysql pour récupérer plusieurs valeurs sur 1 champrequête php/mysql
Optimisation d'une requete mysql[MySQL] Requete SQL pour supprimer des enregistrements identiques
Plus de sujets relatifs à : requete php mysql


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR