Fetch_array invalide ?? MYSQL

Destroy2 -  
 destroy2 -
Bonjour,

j'ai un petit problème c'est que je voudrais récupérer une variable dans une table de ma base de donnée MYSQL mais après requête rien ne sort ...

Voici mon script :

 $reponse = mysql_query("SELECT DISTINCT * FROM conn WHERE id='". $id ."'"); 
	  $donnees = mysql_fetch_array($reponse);
	  $ident = $donnees['pseudo'];
	  $identi = $ident[0];
	  
	  $pseud = $donnees['pseudo'];
	  $retour = mysql_query("SELECT COUNT(*) AS id FROM story WHERE pseudo='". $pseud ."'");
	  $donnees2 = mysql_fetch_array($retour);
	  
	  $nbrtxt=$donnees2[0];

	  
	  
	  			echo '<p align="center" class=style"> Bienvenue </ br> '. $identi .'</p></ br>';
				echo '<p align="center" class=style">Vous avez post&eacute; '. $nbrtxt .' textes(s)</p></ br></ br>';
				echo '<div align="center"><a href="accueil.php"><img src="/logout.gif" width="105" height="35" border="0" /></a></div>';


Mon code affiche " Bienvenue" puis laisse un blanc ...
Tandis qu'il compte correctement le nombre d'entrée avec le pseudo dans ma deuxième base de donnée.

Merci d'avance.

8 réponses

Utilisateur anonyme
 
bonsoir,

ajoutes cette ligne poour voir ce qui est exactement renvoyé
$donnees = mysql_fetch_array($reponse);

echo "<pre>";print_r($donnees);echo "</pre>";// tu auras ainsi les bons noms des variables retournées

$ident = $donnees['pseudo'];
$identi = $ident[0];
0
masdmaah Messages postés 49 Statut Membre 2
 
$reponse = mysql_query("SELECT DISTINCT * FROM conn WHERE id='". $id ."'");
$donnees = mysql_fetch_assoc($reponse);
$ident = $donnees['pseudo'];

$reponse = mysql_query("SELECT DISTINCT * FROM conn WHERE id='". $id ."'");
$donnees = mysql_fetch_array($reponse);
$ident = $donnees[0];
0
Destroy2
 
Aucune des deux méthode ne fonctionne ...

Ca me remet toujours un blanc masi le décompte d'entrée est toujours valide ... C'est à n'y rien comprendre ...
0
Utilisateur anonyme
 
Bonjour,
attention, je que j'ai dit n'est pas une méthode (car cela ne change rien au comportement du pgm), mais une trace pour voir ce que le programme recevait : pour aider au debogage
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

$ident = $donnees['pseudo'];
$identi = $ident[0];

Tu es bien conscient que tu ne prends dans $identi que la première lettre du pseudo ?
0
Destroy2
 
Bonjour,

Je ne prend que la première lettre ??

Comment devrais faire alors ?

Quel serais le script pour récupérer une variable dans ma table en se basant sur un numéro ID prédéfini et récupérant sur ma ligne uniquement le pseudo de la ligne correspondante à l' ID ??
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Quand tu écris ça :

$ident = $donnees['pseudo'];

Tu places ce que tu souhaites (c'est-à-dire le pseudo de la ligne récupérée par mysql_fetch_array, qui prend en fait la première ligne du résultat de la requête) dans la variable $ident.
$ident contient donc le pseudo, et est une chaine de caractère.

Ensuite, quand tu fais
$identi = $ident[0];

Tu prends en fait la première lettre (indice [0]) de cette chaine de caractère !
Cette ligne n'est pas utile et il faut t'arrêter avant ;)
0
masdmaah Messages postés 49 Statut Membre 2
 
Salut,

$requete  = "SELECT 'pseudo' FROM 'table' WHERE 'id' LIKE '" .$id. "' LIMIT1";
$resultat = mysql_query( $requete );
$row      = mysql_fetch_row( $resultat );
$pseudo   = row[0];


ça si ça ne fonctionne pas, on ne peut plus rien ^^.
0
destroy2
 
Merci je vais faire ça et je vous tiens au courant ;)

Et merci pour la remarque sur les chaines de caractères je ne savais pas ^^
0