|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
bonjour,
voila mon code : Code :
Parse error: parse error, unexpected T_VARIABLE in C:\Program Files\EasyPHP 2.0b1\www\suncopy\catalogue\brother\jet d'encre\dcp\110c\index.php on line 15 voici mon mcd pour que cela soit plus clair imprimante(id_imprimante,nom_imprimante) cartouche(ref_cartouche,designation_cartouche,...) accepter(id_cartouche,id_imprimante) je sais je n ai pas eu le temps de changer les nom des champs, mais ce le select qui ne fonctionne pas. |
||
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : janvier 2005 Messages : 71 ![]() |
Salut déjà est-ce que c'est une erreur de copie/colle mais tu n'as pas de ; sur ta ligne
Code :
$marque = mysql_fetch_array($liste_marque) Dinde |
|
|
00
|
|
|
#3 | ||
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
merci de me repondre voila c est vrai je n avais pas vus le ; qui manquer mais maintenant il me donne ceci j ai changer de plus le debut avec select * marque par select cartouche:
Code :
Erreur SQL !Select * FROM cartouche INNER JOIN accepter ON imprimante.id_imprimante = accepter.id_imprimante WHERE accepter.id_cartouche = 1 Champ 'imprimante.id_imprimante' inconnu dans on clause |
||
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
bonjour,une erreur que j avais faite oublier dans from imprimante.
voila mon nouveau code maintenant le tableau apparait bien mais il affiche toute la table des cartouche plutôt que de sélectionner que les cartouche corresponde a la marque. Merci de votre aide. Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Pour moi ta as un prob dans ta requête SQL, tu pourrais pas la tester direct dans phpmyadmin pour voire le résultat. Si le résultat est bon le prob est dans le code mais je suis septique.
Je pense que c'est un prob SQL. Fais le test et dit nous quoi. |
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
je suis complètement perdu aidez moi j ai tout essayer que quelque un m aide svp je ne vois pas d ou cela peut venir voici ma base de donne si voulez tester.
|
|
|
00
|
|
|
#7 | ||
|
Membre du Club
![]() Inscription : janvier 2005 Messages : 71 ![]() |
Il te manquerai pas une jointure dans ta requete? (tu as 3 tables et une seule jointure il y a un souci - dans la théorie c'est une jointure par table si la clé est unique)
(Pis mes des alias a ta table tu t'embeteras moins pour les requetes) Code :
|
||
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Je veux bien regarder à ton prob mais le plus simple est que tu fasses le test avec phpmyadmin.
Tu vas dans ta base de données, tu sélectionne ta table, au dessus tu as un onglet SQL, tu cliques dessus et tu as une fenêtre exécuter une ou des requêtes sur la base X. Tu recopie ta requête et tu l'exécute et tu nous donnes le résultat on verra déjà plus clair. Ici à mon boulot je peux pas mettre ta base, je suis pas le boss Mais fait au moins le test svp. |
|
|
00
|
|
|
#9 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
j ai tester et il me retourne toujours 1 pour l'id de la cartouche pour tous le marque ce qui faux car certains sont a 2 mais rien a faire j ai tout dit que c etait a 2 il continue de me donner tout la table en disant qu'elle fait partie 1 quelqu'un pourrai regarder ma base svp
|
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Salut Kate,
Effectivement ta requête ne retourne pas d'erreur, mais à mon sens elle n'est pas correcte ou alors je ne comprend pas ce à quoi tu veux arriver. J'ai pu installer ta base de données, et effectivement elle est sommaire sans vouloir de choquer. Surtout pour une application qui à un but professionnel. Explique concrètement ce que tu veux faire en étant le plus précis possible et puis on verra ce que l'on peut faire pour t'aider. Attention cela ne veut pas dire que je vais faire le boulot. T'aider ok |
|
|
00
|
|
|
#11 |
|
Membre du Club
![]() Inscription : janvier 2005 Messages : 71 ![]() |
Salut Kate,
As tu essayé ma solution en rajoutant une jointure dans ta requete? Et si tu l'as fait que ça n'a pas marché est ce que ça a quand même changé quelque chose? Dinde |
|
|
00
|
|
|
#12 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Salut Dinde,
je suis du même avis je pense qu'il y a un problème de jointure, mais pour ca j'aimerais comprendre parfaitement ce qu'elle veut. Car je comprend pas trop. Sinon je suis sur que la solution est dans la requête sql, donc rien de bien grave. |
|
|
00
|
|
|
#13 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
voila je vais expliquer les grande lignes je vais créer un page qui affiche la liste des cartouches qui correspond a la marque sélectionner dans la page précédentes oui j ai essayer mais voila il continue il me met ce message:
Erreur SQL !Select * FROM cartouche c, imprimante i INNER JOIN accepter a ON i.id_imprimante = a.id_imprimante WHERE accepter.ref_cartouche = 1 AND c.ref_cartouche=a.ref_cartouche Champ 'accepter.ref_cartouche' inconnu dans where clause je precise donc mes tables: accepter(ref_cartouche,id_imprimante) cartouche(ref_cartouche,...) imprimante(id_imprimante,..) |
|
|
00
|
|
|
#14 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Ok, je vois un peu plus clair
Si oui pourquoi faire une requête sur tes trois tables. |
|
|
00
|
|
|
#15 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
ce n est pas moi qui est proposer ça, mais je pense que a présent vous avez compris mais moi de mon cote je n arrive toujours pas obtenir ce que je veux.
|
|
|
00
|
|
|
#16 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Ok, je termine de régler un prob sur une table pour mon boulot et je look ton prob et te propose une solution.
|
|
|
00
|
|
|
#17 |
|
Membre régulier
![]() |
La base de données est quand même un peu louche pour faire les recherches, mais bon, j'ai essayé de faire une requête, qui n'est pas de haut niveau vu que je bosse pas dans les BDD, mais j'ai tenté ca :
Code :
Select * FROM cartouche c WHERE ref_cartouche IN (SELECT id_cartouche FROM accepter WHERE id_imprimante=1) |
|
|
00
|
|
|
#18 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Bonsoir,
Je viens de refaire les tests comme jonathan3357 et j'arrive au même résultat. Donc pour moi, tu peux franchement travailler sur base de cette requête. Mais je pense que tu ne dois pas perdre de vue que la structure de ta table est légère pour une application pro. Test et tiens nous au courant, on pourra encore t'aider. Bonne soirée |
|
|
00
|
|
|
#19 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 706 ![]() |
merci encore,mais pourquoi pensez vous qu'elle est legere?je ne pense pas avoir oublier quelques chose.
|
|
|
00
|
|
|
#20 |
|
Membre du Club
![]() Inscription : octobre 2005 Messages : 103 ![]() |
Bonjour Kate,
je suis pas spécialiste en base de données mais tout doucement je prend de l'expérience dans le domaine, moi je suis analyste programmeur. Mais bon passons, quand je développe une BD de ce genre j'essaye de faire en sorte d'éviter les redondances. Cela prend vite bcp de place, de plus je regarde attentivement si mes tables on un rapport entre elle. Un exemple concret dans ton cas : Tu as les tables suivantes imprimantes, marques, séries, cartouches. Toutes ces tables sont indépendantes les unes des autres. Donc si tu veux faire une recherche à partir de la marque tu vas devoirs faire une requête sql complexe et qui va demander bcp de ressource. Par contre si dans ta table par exemple imprimantes, tu as un champs id_marque, id_série, id_cartouche, ... Tu peux à partir d'une recherche sur une table ici imprimante avoir toutes les infos sur cette imprimante. Tu le fais déjà mais ppas avec suffisamment de paramètres, hors tu pourrais le faire sans porb. Je sais pas si j'ai été claire, il ne faut surtout pas te décourager. On a tous fait ces erreurs, le tout est dans tenir compte pour ne plus les faires. Voilà si tu veux d'autre info je suis là. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com