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

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] trouve pas la table alors qu'elle existe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] trouve pas la table alors qu'elle existe

n°747576
bobbyz
Posté le 01-06-2004 à 16:17:11  profilanswer
 

bonjour,
 
g un petit pb de requete sql. Voici mon script:

Code :
  1. <?php
  2. // Script de Connection à la base de données
  3. // Parametres de connection a la Base de Données
  4. $dbhost = "localhost";
  5. $user = "consept";
  6. $password = "";
  7. $usebdd = "consept";
  8. // Script de connnection
  9. $connexion = mysql_connect("$dbhost","$user","$password" ) or die("Connexion impossible" );
  10. // Sélection de la BDD
  11. $db = mysql_select_db("$usebdd" ) or die("base invalide" );
  12. $request = mysql_query("SELECT id FROM intrandf" );
  13. echo mysql_error();
  14. ?>


 
il me retourne Table 'consept.intrandf' doesn't exist
Pourtant ma table existe et je peux la consulter sous phpMyadmin.
 
Merci
 

mood
Publicité
Posté le 01-06-2004 à 16:17:11  profilanswer
 

n°747616
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:35:33  profilanswer
 

Berk berk berk ton code  :kaola:  
 
c'est un plus propre ci-dessous.

Code :
  1. <?php
  2.  
  3.   // Script de Connection à la base de données  
  4.   // Parametres de connection a la Base de Données  
  5.  
  6.   $dbhost = "localhost"; 
  7.   $user = "consept";
  8.   $password = "";
  9.   $usebdd = "consept";
  10.  
  11.   // Script de connnection  
  12.   $connexion = mysql_connect($dbhost,$user,$password) or die("Connexion impossible" );
  13.  
  14.   // Sélection de la BDD  
  15.   $db = mysql_select_db($usebdd, $connexion) or die("base invalide" );
  16.  
  17.   $request = mysql_query("SELECT id FROM intrandf" ); 
  18.   echo mysql_error(); 
  19. ?>


Il se pourrait que la fonction mysql_select_db est besoin quand meme de ton deuxieme parametre meme si celui-ci est facultatif.


Message édité par Berceker United le 01-06-2004 à 16:37:25
n°747618
juanetfann​y
Posté le 01-06-2004 à 16:37:42  profilanswer
 

Salut  :)  
 
j'ai regardé vite fait. Enlèves les guillemets, comme ceci :
 

Code :
  1. mysql_connect($dbhost,$user,$password) or die("Connexion impossible" );


   
 
et comme ça :
 

Code :
  1. $db = mysql_select_db($usebdd) or die("base invalide" );

 
 
de plus, mets un point virgule pour terminer ta requete :
 

Code :
  1. mysql_query("SELECT id FROM intrandf;" );


 
Y a peut être autre chose, faut voir

n°747623
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 16:39:47  profilanswer
 

juanetfanny a écrit :

Salut  :)  
 
j'ai regardé vite fait. Enlèves les guillemets, comme ceci :
 

Code :
  1. mysql_connect($dbhost,$user,$password) or die("Connexion impossible" );


   
 
et comme ça :
 

Code :
  1. $db = mysql_select_db($usebdd) or die("base invalide" );

 
 
de plus, mets un point virgule pour terminer ta requete :
 

Code :
  1. mysql_query("SELECT id FROM intrandf;" );


 
Y a peut être autre chose, faut voir


heuu j'ai pas testé mais le point virgule à la fin d'un requete je crois pas que ça soit cela. mais en tous cas ça fonctionne sans, garantie sur facture!...

n°747649
juanetfann​y
Posté le 01-06-2004 à 16:52:53  profilanswer
 

ouais, mais ça fait plus propre quand même  :D  :D  
 
 ;)

n°747658
ratibus
Posté le 01-06-2004 à 16:58:04  profilanswer
 

Note: The query string should not end with a semicolon.  
(source www.php.net)
Encore une fois RTFM :)
 
Sinon pour la question d'origine, l'erreur est sans doute du à la casse : en effet sous MySQL le nom des tables et des bases sont sensibles à la casse (pas le nom des champs).
Cette remarque est valable uniquement sous Linux (pas sensible à la casse sous Windows).
 

n°747668
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 17:03:04  profilanswer
 

juanetfanny a écrit :

ouais, mais ça fait plus propre quand même  :D  :D  
 
 ;)


mmmhh!... je doute , tu sais au moin dans quel cas exactement il faut mettre le point virgule en sql ;) heinn!...

n°747683
bobbyz
Posté le 01-06-2004 à 17:11:15  profilanswer
 

Je suis sous Windows donc pas de pb de casse. J'ai enleve les quotes et rajouter le deuxieme parametre ds mysql_select_db.
Mais toujours le meme message....

n°747689
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 17:13:45  profilanswer
 

bobbyz a écrit :

Je suis sous Windows donc pas de pb de casse. J'ai enleve les quotes et rajouter le deuxieme parametre ds mysql_select_db.
Mais toujours le meme message....


regarde les fonction permettant de lister les tables present dans ta base de données.

n°747719
bobbyz
Posté le 01-06-2004 à 17:32:29  profilanswer
 

j'ai listé mes tables de ma base avec SHOW TABLE STATUS.
G bien la table sur laquelle je veux executer la requete.

mood
Publicité
Posté le 01-06-2004 à 17:32:29  profilanswer
 

n°747761
juanetfann​y
Posté le 01-06-2004 à 18:12:54  profilanswer
 

berceker united a écrit :

mmmhh!... je doute , tu sais au moin dans quel cas exactement il faut mettre le point virgule en sql ;) heinn!...


 
Bin, en sql pur j'en mets toujours à la fin de mes requêtes  :??:  
Faut pas ?
 
En tout cas, j'ai appris un truc aujourd'hui  ;)  :jap:  
 
 :hello:

n°747764
jagstang
Pa Capona ಠ_ಠ
Posté le 01-06-2004 à 18:18:21  profilanswer
 

en SQL oui, avec la fonction mysql query, non !
 
http://ch2.php.net/mysql_query
 

Citation :


Note :  La requête ne doit pas être terminée par un point-virgule.

n°747770
sielfried
Posté le 01-06-2004 à 18:30:37  profilanswer
 

T'aurais pas un espace juste devant le nom de ta table ? Ca se voit direct avec l'ordre alphabétique sur la partie gauche de PhpMyAdmin.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°747873
juanetfann​y
Posté le 01-06-2004 à 19:35:07  profilanswer
 

Pour ton problème, c'est vraiment un truc tout bête, j'ai eu ça plusieurs fois mais je me souviens jamais pourquoi !
 
Et si déjà tu remplaces les guillements par des ' ici :

Code :
  1. $dbhost = "localhost"; 
  2. $user = "consept"; 
  3. $password = ""; 
  4. $usebdd = "consept";


 
Non ?
 
 
et vérifie que ton id est bien orthographié de cette Façon dans ta bdd (et non Id ni ID) :
 

Code :
  1. $request = mysql_query("SELECT id FROM intrandf" );


Message édité par juanetfanny le 01-06-2004 à 19:40:15
n°747943
Berceker U​nited
PSN : berceker_united
Posté le 01-06-2004 à 20:07:59  profilanswer
 

Sielfried a écrit :

T'aurais pas un espace juste devant le nom de ta table ? Ca se voit direct avec l'ordre alphabétique sur la partie gauche de PhpMyAdmin.


haaa ouais ouais ouais ! je confirme haut et fort si tu as éditer le nom de ta table via phpmyadmin car ce dernier ne fait pas de controle sur les espaces devant et (peut être) et c'est souvent les erreur commune.


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

  [PHP] trouve pas la table alors qu'elle existe

 

Sujets relatifs
[PHP/MySQL] Afficher une fiche avec une url variable[PHP / XML] Problème de fichier UTF-8 [Résolu]
[PHP] récuperer variables d'un form qui est dans un mail[PHP] htaccess, Restriction des droits sur les img d'une galerie photo
Méthodes Statiques en PHP?Manuel Php a télécharger
access runtime pour access2003, ça existe ?[PHP] astuce redirection erreurs ! help!
[PHP]Authentification par certificat? 
Plus de sujets relatifs à : [PHP] trouve pas la table alors qu'elle existe


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