Requete PHP SQL qui n'affiche rien, même pas
Résolu
nico_2712
-
lewis34 Messages postés 2557 Date d'inscription Statut Membre Dernière intervention -
lewis34 Messages postés 2557 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis entrain d'essayer de faire des requetes sql via php et je bloque...j'avais deja réussis le meme genre de lecture de la base mais là...après avoir parcouru le net entre les fetch assoc array row et j'en passe...je n'ai plus de message d'erreur mais rien ne s'affiche!
Il y a la table Compte qui possède Nom, Prenom1, Date_Naissance, Num_Matricule (clé primaire autoincrementée)
Un autre table Ternaire (table d'association) qui possède Num_Matricule, Cycle et Annee
Voici mon code:
//On se connecte à la base de données
mysql_connect("localhost", "root", "");
mysql_select_db("bdda2");
// On récupère nom, prenom, date de naissance, cycle et année de cycle:
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = '.$num_matricule.'
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
$result=mysql_query($request);
while($ligne = mysql_fetch_array($result))
{
$nom= $ligne['Nom'];
$prenom1 = $ligne['Prenom1'];
$date_naissance = $ligne['Date_Naissance'];
$cycle = $ligne['Cycle'];
$année = $ligne['Annee'];
echo "Numero ".$id.": ".$prenom1.$nom." né le ".$date_naissance." étudie en année ".$année." de ". $cycle." <br />";
Merci si vous pouviez m'éclairer un petit peu :)
Cordialement, nicolas ^^
}
mysql_close();
Je suis entrain d'essayer de faire des requetes sql via php et je bloque...j'avais deja réussis le meme genre de lecture de la base mais là...après avoir parcouru le net entre les fetch assoc array row et j'en passe...je n'ai plus de message d'erreur mais rien ne s'affiche!
Il y a la table Compte qui possède Nom, Prenom1, Date_Naissance, Num_Matricule (clé primaire autoincrementée)
Un autre table Ternaire (table d'association) qui possède Num_Matricule, Cycle et Annee
Voici mon code:
//On se connecte à la base de données
mysql_connect("localhost", "root", "");
mysql_select_db("bdda2");
// On récupère nom, prenom, date de naissance, cycle et année de cycle:
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = '.$num_matricule.'
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
$result=mysql_query($request);
while($ligne = mysql_fetch_array($result))
{
$nom= $ligne['Nom'];
$prenom1 = $ligne['Prenom1'];
$date_naissance = $ligne['Date_Naissance'];
$cycle = $ligne['Cycle'];
$année = $ligne['Annee'];
echo "Numero ".$id.": ".$prenom1.$nom." né le ".$date_naissance." étudie en année ".$année." de ". $cycle." <br />";
Merci si vous pouviez m'éclairer un petit peu :)
Cordialement, nicolas ^^
}
mysql_close();
A voir également:
- Requete PHP SQL qui n'affiche rien, même pas
- Easy php - Télécharger - Divers Web & Internet
- Le clavier de mon telephone ne s'affiche plus - Guide
- Ma clé usb ne s'affiche pas - Guide
- Expert php pinterest - Télécharger - Langages
- Logiciel sql - Télécharger - Bases de données
7 réponses
Salut ,
tu a testé la requête dans phpmyadmin ?
tu a testé la requête dans phpmyadmin ?
nico_2712
Je viens de tester, ça marche sous phpmyadmin :s
nico_2712
>
nico_2712
MAIS ca ne marche toujours pas TOUT COURT :(
Slut.
Il faut savoir ce ke tu executes comme requete...
affiches la dans ton navigateur avec un echo juste avant de l'executer...
Et juges par toi mm..
Il faut savoir ce ke tu executes comme requete...
affiches la dans ton navigateur avec un echo juste avant de l'executer...
Et juges par toi mm..
pourqoui tu t'embete comme ça ??
tu rajoute simplement 2 champs a ta table compte Cycle et Annee
sinon utilise la clause joint, mais a mon avis, tu cherche la difficulté.. ;-)
voila un code plus simple qui devrais marcher
(evite d'employer des accents dans tes variable==> $année c'est pas bon met $annee)
tu rajoute simplement 2 champs a ta table compte Cycle et Annee
sinon utilise la clause joint, mais a mon avis, tu cherche la difficulté.. ;-)
$req= "SELECTNum_matricule, Nom,Prenom1,Date_Naissance,Cycle,Annee FROM Compte WHERE Compte.Num_Matricule = '.$num_matricule.'"; $res=mysql_query($req); while(list($id, $nom, $prenom1,$date_Naissance,$cycle,$annee)=mysql_fetch_array($res)) { echo "Numero ".$id.": ".$prenom1.$nom." né le ".$date_naissance." étudie en année ".$annee." de ". $cycle." <br />"; }
voila un code plus simple qui devrais marcher
(evite d'employer des accents dans tes variable==> $année c'est pas bon met $annee)
Non mais c'est qu'en fait c'est une partie des 18 tables de la base :)
La relation Ternaire est liée avec une entité Fac_Service_Info et une personne peut avoir 2 statuts différents et des cycles diffférents et des années de cycle différentes...
Enfin j'avais concu le truc comme ça (enfin on est plusieurs c'est pour un travail à rendre) et on a pas trouvé mieux d'un point de vue conceptuel...après on est pas des pros mais...faut voir le sujet tordu qui ne ressemble en rien a un cahier des charges qu'on nous a pondu la!
Avec la clause Join en fait j'enleve l'égalité qui lie les tables et je met JOIN WITH c'est ça?
Compte JOIN WITH Ternaire ?
La relation Ternaire est liée avec une entité Fac_Service_Info et une personne peut avoir 2 statuts différents et des cycles diffférents et des années de cycle différentes...
Enfin j'avais concu le truc comme ça (enfin on est plusieurs c'est pour un travail à rendre) et on a pas trouvé mieux d'un point de vue conceptuel...après on est pas des pros mais...faut voir le sujet tordu qui ne ressemble en rien a un cahier des charges qu'on nous a pondu la!
Avec la clause Join en fait j'enleve l'égalité qui lie les tables et je met JOIN WITH c'est ça?
Compte JOIN WITH Ternaire ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
T'as pas trop compris le truc...
le echo devait etre fait avant l'execution et non après... c'est juste pr te montrer que t'as pas bien joué avec les ' et "
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = '.$num_matricule.'
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
tu dois plutot etre uniforme dans ton truc et faire plutot
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = ' ".$num_matricule." '
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
J'ai mis des espaces pr bien faire la difference..
et tu mets juste un echo genre
echo $request;
/* avant de faire ton execution */
$res=mysql_query($request);
tu verras toute la difference
l'affichage de "Resource id #3" : te montre ke ta requete s'est bien éxécuté
le echo devait etre fait avant l'execution et non après... c'est juste pr te montrer que t'as pas bien joué avec les ' et "
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = '.$num_matricule.'
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
tu dois plutot etre uniforme dans ton truc et faire plutot
$request= "SELECT Nom,Prenom1,Date_Naissance,Cycle,Annee
FROM Compte, Ternaire
WHERE Compte.Num_Matricule = ' ".$num_matricule." '
AND Compte.Num_Matricule=Ternaire.Num_Matricule";
J'ai mis des espaces pr bien faire la difference..
et tu mets juste un echo genre
echo $request;
/* avant de faire ton execution */
$res=mysql_query($request);
tu verras toute la difference
l'affichage de "Resource id #3" : te montre ke ta requete s'est bien éxécuté
18 tables c'est rien , a mon avis revoit plutot la structures de tes tables en fonction de ton cahiers des charges, personellement je n'emploie que tres rarement join (au boulot)
Désolé pour la réponse tardive...mon PC a fait des siennes...il va pas tarder a finir contre le mur (genre 15min d'attente pour passer d'une fenetre a l'autre avec le disque dur qui s'emballe! mémoire virtuelle insuffisante? desfois il me met ce message...bref ce n'estp as le sujet!)
Donc un GRAND merci, je vois que j'aurais mieux fais de prendre du recul, surtout que j'avais deja fais ce type de requete mais je pensais que l'erreur venait du code de retransmission du resultat. MErci encore
Au passage, j'ai une autre question (je viens d'envoyer le rapport au prof donc cest plus personnel)...dans le sujet il y avait une table serveur qui pouvait etre accédé par tout compte.
Enin un compte a acces a un ou plusieurs serveurs et un serveur est accessible par 1 ou plsuieurs comptes.
Mais apres dans les questions il demandait de pouvoir verifier pour 1 compte: a quels serveurs a t il accédé?
C'est une notion d'historique...mais en fait dans la réalité, comment ça se passe ce genre de chose?
Historiques stockés dans la base? un attribut dateheure sur la liaison compte-serveur?
Juste par curiosité...
Merci encore.
PS comment je fais pour mettre résolu sans être inscris?
Donc un GRAND merci, je vois que j'aurais mieux fais de prendre du recul, surtout que j'avais deja fais ce type de requete mais je pensais que l'erreur venait du code de retransmission du resultat. MErci encore
Au passage, j'ai une autre question (je viens d'envoyer le rapport au prof donc cest plus personnel)...dans le sujet il y avait une table serveur qui pouvait etre accédé par tout compte.
Enin un compte a acces a un ou plusieurs serveurs et un serveur est accessible par 1 ou plsuieurs comptes.
Mais apres dans les questions il demandait de pouvoir verifier pour 1 compte: a quels serveurs a t il accédé?
C'est une notion d'historique...mais en fait dans la réalité, comment ça se passe ce genre de chose?
Historiques stockés dans la base? un attribut dateheure sur la liaison compte-serveur?
Juste par curiosité...
Merci encore.
PS comment je fais pour mettre résolu sans être inscris?
en general tout bon serveur qui se respecte possede son fichier de log, dans lequel tu a plein d'info, no, tament qui s'est connecté, a quelle heure quel reprtoire ont été vu etc..;, donc il est tres facile de savoir ce genre de renseignement.
il suffit juste de consulter le log,une petite requete toute simple pou rlire le fichier texte et tu stocke tes resultats dans une BD, le tour est joué
je contact quelqu'un pour le resolu ;-)
il suffit juste de consulter le log,une petite requete toute simple pou rlire le fichier texte et tu stocke tes resultats dans une BD, le tour est joué
je contact quelqu'un pour le resolu ;-)