Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/11/2007, 10h02   #1
Invité régulier
 
Inscription : juillet 2004
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 50
Points : 9
Points : 9
Par défaut [SQL] Problème SHOW TABLES

Bonjour,

j'utilise le code suivant pour lister les tables d'une base:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
	// On vérifie la connexion SQL
	@$db_link = mysql_connect($dbhost,$dbuser,$dbpasswd);
	if(!$db_link)
	{
		header('location:../../info.php?Inf=NoSql');
		exit;
	}
	else
	{
		echo 'connexion OK!';
	}
 
	// liste les tables de la bdd
	$show = mysql_query("SHOW TABLES");
 
	while($row = mysql_fetch_row($show))
	{	
	     echo $row[0];
	}
 
	// on libere la memoire
	mysql_free_result($show);
et j'ai systématiquement une erreur du type:
Citation:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource
Pourtant ma connexion SQL est bonne puisque mon echo 'connexion OK!'; s'affiche et que l'utilisateur possède tous les privilèges sur la bdd.

Quelqu'un a une idée ?

Merci !
zouetchou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2007, 10h22   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
A mon avis c'est lié au fait que vous ne spécifiez à aucun moment la base utilisée. Que ce soit par la fonction mysql_select_db ou lors de la requête SHOW TABLES FROM ma_base.

Par ailleurs, je vous prierez de bien vouloir vérifier l'exécution de votre requête et nous donner le message d'erreur :
Code :
$show = mysql_query("SHOW TABLES") or die(mysql_error());
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2007, 10h42   #3
Invité régulier
 
Inscription : juillet 2004
Messages : 50
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 50
Points : 9
Points : 9
Effectivement !
En fait ma variable $dbuser est le nom de la table. C'est pourquoi la connexion SQL est bonne.

Par contre il manquait effectivement le nom de la table pour SHOW TABLES.

En faisant SHOW TABLES FROM ma_base cela fonctionne.

Merci bien.
zouetchou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h51.


 
 
 
 
Partenaires

Hébergement Web