cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008
-
4 juin 2008 à 11:25
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008
-
5 juin 2008 à 08:26
Bonjour à vous j'ai un petit probleme d'sql
alors voila lorsque je fais ceci : " SELECT * from general,ecran where general.id_ecran=ecran.id_ecr and id_ecran=1;"
J'ai aucun probleme cela trouve le resultat, jusqu'ici tout va bien pour moi
maintenant mon soucis est ici
"SELECT * from general,ecran,imprimante where general.id_ecran=ecran.id_ecr and and general.id_impr=imprimante.id_imprimante and id_ecran=1" alors la requete est correct tout les champs sont bon, SAUF qu'il ne trouve plus la valeur demander alors pourquoi ??? pk le fait d'affecté une nouvelle table fais planté ma selection please aidez moi
Cordialement Pyobour
theguitou
Messages postés75Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention14 janvier 200935 4 juin 2008 à 23:34
Salut,
Essais sa :
SELECT *
FROM general
LEFT JOIN ecran ON general.id_ecran=ecran.id_ecr
LEFT JOIN imprimante ON general.id_impr=imprimante.id_imprimante
WHERE id_ecran=1;
Si tu as des NULL dans le résultat, c'est tout simplement que tu n'as pas, dans tes tables, de quoi faire une jointure ...
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 4 juin 2008 à 13:38
pardon j'ai mal fé mon c/c le truc c'est que y a pas d'erreur tu enleves l'element " imprimante" et la recherche se fait correctement, alors que si tu laisse imprimante il trouve plus rien et me met aucun message d'erreur
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 4 juin 2008 à 13:56
bah en gros comme sa tu vois tt le code
if($champ==1)
{
$requete="SELECT *
from general,unite_central,ecran,ordinateur_portable,imprimante,utilisateur where
utilisateur.id_uti=general.id_utilisateur and
general.id_ucc=unite_central.id_uc and
ecran.id_ecr=general.id_ecran and
imprimante.id_imprimante=general.id_impr and
ordinateur_portable.id_portable=general.id_op";
if($ecran!='aucun')
{
$requete .=" and id_ecr='$ecran' ";
}
if($portable!='-1')
{
$requete .=" and id_op=$portable";
}
if($ordinateur!='-1')
{
$requete .=" and id_ucc=$ordinateur";
}
if($imprimante!='aucun')
{
$requete .=" and id_impr=$imprimante";
}
if($utilisateur!='aucun')
{
$requete .=" and id_utilisateur='".$utilisateur."'";
}
MasterCent
Messages postés83Date d'inscriptionjeudi 22 septembre 2005StatutMembreDernière intervention14 décembre 20111 4 juin 2008 à 15:06
Bonjour Coucou747,
Que le rouge de la honte empourpre mon visage,...
Je partagais ton bout de phrase "[...]il doit planter logiquement
",
Par ailleurs, je respecte ta recherche d'erreur via mysql_error.
Je proposais simplement d'envisager aussi l'idée qu'il n'y a pas d'erreur, car Pyobour dit : "[...]
il trouve plus rien", c'est pourquoi, je proposais de vérifier la requête directement en SQL,
le Die($requete) me fournissant le texte SQL, dans lequel les variables ont été converties, avant même de tenter un mysql_query .
Je me retire sur la pointe des pieds car du boulot m'attends.
Courrage
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 4 juin 2008 à 17:06
alors oui le probleme c'est que j'ai testér directement en SQL alors comme je vous les dit la premiere marche la deuxieme selectionne juste la base sans trouvé l'element determiner alors que avec d'autre table d'autres elements sa marche la sa coince
y a t'il de nouvelle norme en SQL ???oiu qqchose comme sa car je bloque
(ps merci pour tte ces reponses)