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

  FORUM HardWare.fr
  Programmation
  PHP

  erreur SQL sans référence

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

erreur SQL sans référence

n°983110
ragexen
Hasta la victoria siempre
Posté le 16-02-2005 à 04:41:28  profilanswer
 

on cherche à faire un espace membre.
Après une formulaire avec 2 champs: login et mot de passe, le script php nous fais une erreur inexpliqué:
 
Erreur SQL :
SELECT password, Nom, login, Prenom, Id_pers, Projet_noto, Formation, Id_projet_ent, Projet_ent FROM Trombinoscope, Projet_ent WHERE login = 'xxx'
 
Le site est hébergé sur online.net.
Voilà le code source si qqn est capable d'identifier le problème:
 

Code :
  1. <?
  2. // On appelle la session
  3. session_start();
  4. include "base.php";
  5. // Connexion à la base de données
  6. $db = mysql_connect($hotebado,$logbado,$passbado);
  7. mysql_select_db($nombado,$db);
  8. // On n'effectue les traitement qu'à la condition que  
  9. // les informations aient été effectivement postées
  10. if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) {
  11.   extract($_POST);  // je vous renvoie à la doc de cette fonction
  12.  
  13.   // On va chercher le mot de passe afférent à ce login
  14.   $sql = "SELECT password, Nom, login, Prenom, Id_pers, Projet_noto, Formation, Id_projet_ent, Projet_ent FROM Trombinoscope, Projet_ent WHERE login = '".addslashes($login)."'";
  15.   $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
  16.  
  17.   // On vérifie que l'utilisateur existe bien
  18.   if (mysql_num_rows($req) > 0) {
  19.      $data = mysql_fetch_assoc($req);
  20.    
  21.     // On vérifie que son mot de passe est correct
  22.     if ($password == $data['password']) {
  23.       $loginOK = true;
  24.  }
  25.   }
  26. }
  27. // Si le login a été validé on met les données en sessions
  28. if ($loginOK) {
  29.   $_SESSION['password'] = $data['password'];
  30.   $_SESSION['Nom'] = $data['Nom'];
  31.   $_SESSION['login'] = $data['login'];
  32.   $_SESSION['Prenom'] = $data['Prenom'];
  33.   $_SESSION['Id_pers'] = $data['Id_pers'];
  34.   $_SESSION['Projet_noto'] = $data['Projet_noto'];
  35.   $_SESSION['Projet_ent'] = $data['Projet_ent'];
  36.   $_SESSION['Id_projet_ent'] = $data['Id_projet_ent'];
  37.   $_SESSION['Formation'] = $data['Formation'];
  38.  
  39.   if ($_SESSION['Formation'] == "professeur" )
  40.  
  41. {
  42.    echo "Vous êtes bien connectés à notre espace interne ";
  43. echo '<table width="900" border="0" cellspacing="0" cellpadding="4">';
  44.    echo "<tr>";
  45. echo "<td>";
  46. echo "<a href='ges_projet.php'> Gestion de projets </a>";
  47. echo "</td>";
  48. echo "</tr>";
  49. echo "<tr>";
  50. echo "<td>";
  51. echo "<a href='ajou_info.php'> Votre fiche personnelle </a>";
  52. echo "</td>";
  53. echo "</tr>";
  54. echo "</table>";
  55. }
  56. else
  57. {
  58. echo "Vous êtes bien connectés à notre espace interne ";
  59. echo '<table width="900" border="0" cellspacing="0" cellpadding="4">';
  60.    echo "<tr>";
  61.     echo "<td>";
  62. echo "Bonjour $Prenom $Nom";
  63. echo "</td>";
  64. echo "</tr>";
  65. echo "<tr>";
  66. echo "<td>";
  67. echo "<a href='ajou_info_cv.php'> Fo k'j'travaille </a>";
  68. echo "</td>";
  69. echo "</tr>";
  70. echo "<tr>";
  71. echo "<td>";
  72. echo "<a href='ges_projet.php'> Gestion de projets </a>";
  73. echo "</td>";
  74. echo "</tr>";
  75. echo "<tr>";
  76. echo "<td>";
  77. echo "<a href='communautes.php'> 1,2,3 ... Communautés </a>";
  78. echo "</td>";
  79. echo "</tr>";
  80. echo "</table>";
  81. }
  82. }
  83. else if ( isset($_GET) && (!empty($_GET['login']))) {
  84. echo "Vous êtes bien connectés à notre espace interne ";
  85. echo '<table width="900" border="0" cellspacing="0" cellpadding="4">';
  86.    echo "<tr>";
  87.     echo "<td>";
  88. echo "Bonjour $Prenom $Nom";
  89. echo "</td>";
  90. echo "</tr>";
  91. echo "<tr>";
  92. echo "<td>";
  93. echo "<a href='ajou_info_cv.php'> Fo k'j'travaille </a>";
  94. echo "</td>";
  95. echo "</tr>";
  96. echo "<tr>";
  97. echo "<td>";
  98. echo "<a href='ges_projet.php'> Gestion de projets </a>";
  99. echo "</td>";
  100. echo "</tr>";
  101. echo "<tr>";
  102. echo "<td>";
  103. echo "<a href='communautes.php'> 1,2,3 ... Communautés </a>";
  104. echo "</td>";
  105. echo "</tr>";
  106. echo "</table>";
  107. }
  108. else
  109. {
  110. echo "Vos informations ne sont pas correctes ! Veuillez les entrer de nouveau ";
  111. echo "<a href='../index.php'> Retour </a>";
  112. }
  113. ?>


Message édité par ragexen le 16-02-2005 à 04:42:12
mood
Publicité
Posté le 16-02-2005 à 04:41:28  profilanswer
 

n°983131
Xav_
The only one...
Posté le 16-02-2005 à 09:05:04  profilanswer
 

c'est pas une erreur SQL que tu nous a marqué, c'est juste la requete...


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°983137
esox_ch
Posté le 16-02-2005 à 09:08:12  profilanswer
 

Exact, l'erreur c quoi ? :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°983215
ragexen
Hasta la victoria siempre
Posté le 16-02-2005 à 10:18:20  profilanswer
 

esox_ch a écrit :

Exact, l'erreur c quoi ? :D


justement, j'ai erreur tout seul, il ne précise pas quoi  c'est iben le prob :)

n°983216
skeye
Posté le 16-02-2005 à 10:20:15  profilanswer
 

Citation :


$req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);


 
Il risque pas de te donner l'erreur, là...essaie avec

Citation :


$req = mysql_query($sql) or die('Erreur SQL : <br />'.mysql_error());


---------------
Can't buy what I want because it's free -
n°983217
esox_ch
Posté le 16-02-2005 à 10:21:15  profilanswer
 

J'me trompe ou c'est pas toi qui a ecrit le script ?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°983219
skeye
Posté le 16-02-2005 à 10:22:39  profilanswer
 

(et la sélection sur 2 tables sans jointure j'y crois pas des masses...[:dawa])


---------------
Can't buy what I want because it's free -
n°983221
FlorentG
Unité de Masse
Posté le 16-02-2005 à 10:23:08  profilanswer
 

C'est quoi tout ces echo avec des double-quotes :o Et c'est quoi tous ces tableaux :o

n°983224
skeye
Posté le 16-02-2005 à 10:25:25  profilanswer
 

FlorentG a écrit :

C'est quoi tout ces echo avec des double-quotes :o Et c'est quoi tous ces tableaux :o


(c'est pas le problème, dehors les intégristes!:o)


---------------
Can't buy what I want because it's free -
n°983233
esox_ch
Posté le 16-02-2005 à 10:30:49  profilanswer
 

skeye a écrit :

(c'est pas le problème, dehors les intégristes!:o)


 
Je crois qu'on est pas à un problème près


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mood
Publicité
Posté le 16-02-2005 à 10:30:49  profilanswer
 

n°983237
skeye
Posté le 16-02-2005 à 10:31:55  profilanswer
 

esox_ch a écrit :

Je crois qu'on est pas à un problème près


On va commencer par l'aider pour la question posée, on verra le reste après, non?[:itm]


---------------
Can't buy what I want because it's free -
n°983244
esox_ch
Posté le 16-02-2005 à 10:37:58  profilanswer
 

Tout a fait d'accord, c'est pour ca que j'ai pas fait la meme remarque que Florent, meme si je n'en pense pas moins.  
Mais la visiblement faut lui sortir toute l'artillerie de sites ... Parceque des requetes intertables comme ça je trouve  assez risqué... Personnellement j'utilise tres rarement la commande JOIN , mais je met au moins les identifiant de la table avant le champ ... Sinon on est vite sur un duplicata de champs ...  
 
Site php parceque confondre une variable avec une fonction c'est grave. Else If s'ecrit en 1 mot .
Et site Xhtml / css parcequ'un truc pareil ça fait mal au yeux


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°983246
Xav_
The only one...
Posté le 16-02-2005 à 10:38:52  profilanswer
 

c'est clair, un chose à la fois, qu'il fasse déjà la modif de skeye pour avoir l'erreur retournée par MySQL.
 
... une fois que le code fonctionnera, vous pourrez laisser libre court à vos proposition d'amélioration :P


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°983248
esox_ch
Posté le 16-02-2005 à 10:41:29  profilanswer
 

Oui mais avant de faire quoique ce soit je voudrais savoir si c'est lui qui a écrit son script, parcequ'il a l'air de pas etre au courrant de ce qui se passe. Deplus le style d'ecriture utilisé pour son message a l'air different que celui pour les commentaires
 
[Edit] Parcontre j'ai honte, je connaissais pas la fonction extract() .. Je crois que je vais aller bruler mes livres PHP et leur auteurs :p


Message édité par esox_ch le 16-02-2005 à 10:50:02

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°983249
skeye
Posté le 16-02-2005 à 10:43:33  profilanswer
 

Personnellement je parie sur une erreur due à l'oubli du préfixage des champs par la table et de la jointure entre ses tables...;)


---------------
Can't buy what I want because it's free -
n°983619
Xav_
The only one...
Posté le 16-02-2005 à 15:20:48  profilanswer
 

je partage ton avis skeye...


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°983847
ragexen
Hasta la victoria siempre
Posté le 16-02-2005 à 18:20:55  profilanswer
 

Merci de vos réponses.
 
Effectivement, je n'ai pas écrit ce script.
c'est pour le site de mon école et c'est une fille du groupe de projet. Moi je ne suis censé m'occuper que du référencement de nos différents sites, mais vu que le développement est à la bourre (entre ce qui bug et ce qui n'est pas fait), j'essaye d'améliorer les choses bien que je n'y connaisse pas grand grand chose en php/sql (j'ai qd meme compris qu'il ne fallait pas de html avant le header pour les sessions; youpi uen erreur de moins).
 
Bon je ramène la développeuse ici, vu que y a pleins de choses à apprendre ;)

n°983866
esox_ch
Posté le 16-02-2005 à 18:37:15  profilanswer
 

C'est bien, faut des filles ici :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait

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

  erreur SQL sans référence

 

Sujets relatifs
[Erreur BuffReader] pkoi ca boucle?[PHP/SQL] Avis pour remplir un calendrier
Page d'erreur Websphere Application Server [résolu]Erreur de permission lors de copie de fichiers
Trop dure pour moi (Requete SQL niveau 5 sur l'échelle de Richter)[Requet SQL] Avec des dates....
Comment migrer une base de SQL Server 2000 vers MySQL???[SQL Server] base de données réparties, comment faire ?
erreur de lecture dans un fichierErreur CaML débutant.
Plus de sujets relatifs à : erreur SQL sans référence


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