requête de base ; résultat bizarre ... [ PHP / MySQL ] - PHP - Programmation
Marsh Posté le 17-10-2003 à 10:27:42
j'ai lancé la même requête directement avec phpmyadmin et ça marche impec'
Marsh Posté le 17-10-2003 à 10:51:23
ben tiens
pourquoi ça fonctionne une fois sur 5 alors ? Certains chiffres, ça fonctionne tout le temps, d'autres jamais !
Marre de cette roulette russe
Marsh Posté le 17-10-2003 à 10:55:47
muzah a écrit : [g]Une idée ? |
SELECT * FROM joueurs WHERE id='".$id."'";
ou
SELECT * FROM joueurs WHERE id='1';
Marsh Posté le 17-10-2003 à 11:06:42
muzah a écrit : ben tiens |
ben passe nous le code qui est en relation avec la requete.
sinon essaye ca:
Code :
|
Marsh Posté le 17-10-2003 à 11:22:01
<?php
$id = $_GET['id'];
echo $id;
$requete = "SELECT * FROM joueurs WHERE id='".$id."'";
$resultat = mysql_query($requete,$connexion) or die ("Erreur : ".mysql_error() );
$colonne = mysql_fetch_row($resultat);
echo "<table style=\"border:3px solid #D9E1EA;\" cellpadding=\"0\" cellspacing=\"0\">";
echo "<tr style=\"font-weight:bold;\"><td class=\"joueurs2\">prénom</td><td class=\"joueurs2\">nom</td><td class=\"joueurs2\">âge</td><td class=\"joueurs2\">taille</td><td class=\"joueurs2\">maillot</td><td class=\"joueurs2\">poste</td><td class=\"joueurs2\">nationalité</td><td class=\"joueurs2\">formation</td></tr>";
while($ligne = mysql_fetch_object($resultat))
{
echo "<tr><td class=\"joueurs2\">".ucfirst($ligne->prenom)."</td><td class=\"joueurs2\">".ucfirst($ligne->nom)."</td><td class=\"joueurs2\">".$ligne->age."</td><td class=\"joueurs2\">".$ligne->taille."</td><td class=\"joueurs2\">".$ligne->maillot."</td><td class=\"joueurs2\">".$ligne->poste."</td><td class=\"joueurs2\">".$ligne->nationalite."</td><td class=\"joueurs2\">".$formation."</td></tr>";
}
echo "</table>";
mysql_close($connexion);
?>
Marsh Posté le 17-10-2003 à 11:31:18
tu te connectes à ta bdd au moins?
tu utilises $connexion mais il est meme pas initialisé
Marsh Posté le 17-10-2003 à 11:36:15
si.
cette page est inclue dans un index.php et la connexion est initialisé dans l'index.php. ça fonctionne pour d'autres tableaux
Marsh Posté le 17-10-2003 à 11:38:06
dans le doute j'ai inclu le script de connexion directment dans la page et ça ne fonctionne pas mieux
Marsh Posté le 17-10-2003 à 11:45:02
je c pas comment t'aider mais je te fais part de tout mon soutien
Marsh Posté le 17-10-2003 à 11:49:36
id est numérique?
|
Marsh Posté le 17-10-2003 à 11:49:47
essaye ça déjà :
Code :
|
Marsh Posté le 17-10-2003 à 11:56:01
résultat :
Array ( [0] => 6 [id] => 6 [1] => jardon [nom] => jardon [2] => maxime [prenom] => maxime [3] => 23 [age] => 23 [4] => 10 [maillot] => 10 [5] => 1.92 [taille] => 1.92 [6] => français [nationalite] => français [7] => récept/att [poste] => récept/att [8] => 0 [formation] => 0 [9] => [parcours] => [10] => [palmares] => )
Marsh Posté le 17-10-2003 à 12:00:42
ben ça marche (edit: ça marche pas??)
maintenant adapte!
Marsh Posté le 17-10-2003 à 12:05:33
si je remplace
print_r($val);
par
echo $val->nom;
ça n'affiche rien du tout
Marsh Posté le 17-10-2003 à 12:08:16
j'ai adpaté ton script ; remplacé
$id = 6;
par
$id = $_GET['id'];
et ça fonctionne.
J'ai viré ton script de connexion et ça fonctionne aussi
et quand je met echo $val->nom; crack ! ça déconne
Marsh Posté le 17-10-2003 à 12:10:00
essaye echo($val['nom']);
Marsh Posté le 17-10-2003 à 12:12:32
effectivement, ça fonctionne.
pourtant 'echo $val->nom;' devrait fonctionner, non ?
j'utilise ce type d'accès aux tables depuis pas mal de temps (c comme ça qu'on me l'a appris aussi ) et c'est la première fois que ça déconne ... enfin il toujours temps de changer
Marsh Posté le 17-10-2003 à 12:25:17
heu -> c'est pour acceder à un objet propriété ou methode..
et vu que la c'est un tableau..
enfin bref j'utilise jamais -> pour acceder a un tableau
muzah a écrit : en tous cas, merci pour ton coup de main diligent |
mais de rien
Marsh Posté le 17-10-2003 à 12:30:28
En fait, dans le code de Mr Yvele on fait une fetch array et donc on accède à un tableau alors que dans le code de base de muzah, c'est un fetch object qui renvoie donc un objet.
Marsh Posté le 17-10-2003 à 12:35:20
par exemple j'accède à ce même tableau sur une page similaire avec la méthode '->' et ça fonctionne :
...
echo "<tr><td class=\"joueurs1\"><a class=\"texte\" href=\"index.php?lang=fr§ion=professionnel&sujet=identite&id=".$ligne->id."\" title=\"renseignements\">".ucfirst($ligne->prenom)."</a></td><td class=\"joueurs1\">".ucfirst($ligne->nom)."</td><td class=\"joueurs1\">".$ligne->age."</td><td class=\"joueurs1\">".$ligne->taille."</td><td class=\"joueurs1\">".$ligne->maillot."</td><td class=\"joueurs1\">".$ligne->poste."</td><td class=\"joueurs1\">".$ligne->nationalite."</td><td class=\"joueurs1\">".$formation."</td></tr>";
...
va comprendre
Marsh Posté le 17-10-2003 à 12:38:12
Belgique a écrit : En fait, dans le code de Mr Yvele on fait une fetch array et donc on accède à un tableau alors que dans le code de base de muzah, c'est un fetch object qui renvoie donc un objet. |
voilà une analyse intelligente
on m'a dit que le fetch object est mieux alors quid ?
Marsh Posté le 17-10-2003 à 12:42:00
Belgique a écrit : En fait, dans le code de Mr Yvele on fait une fetch array et donc on accède à un tableau alors que dans le code de base de muzah, c'est un fetch object qui renvoie donc un objet. |
ah ben oui
muzah a écrit : on m'a dit que le fetch object est mieux alors quid ? |
ah ouè?!
Marsh Posté le 17-10-2003 à 12:48:04
c'est mon prof de l'année dernière qui a toute ma considération
Marsh Posté le 17-10-2003 à 09:58:35
je sais que c'est une question à la con mais là ça me bloque ; même un message de soutien sera le bienvenu
je fais une requête toute bête dans une base MySQL :
SELECT * FROM joueurs WHERE id=".$id.";
ou
SELECT * FROM joueurs WHERE id=1; (par ex.)
et je n'ai pas de résultat pour tous les 'id'
c'est bizarre tout de même ... je ne comprend pas.
Et pas d'erreur
Une idée ?
Message édité par muzah le 17-10-2003 à 10:18:30