Forum de discussion et d'aide au php
Vous n'êtes pas identifié.
|
Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides. FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans. Proposez vos news : si vous avez un evenement à annoncer le chat : venez discuter de php. |
||
Bonjour a vous,
Je suis suis sur quelques script en php et la je bloque ![]()
J utilise ce code pour recuperer l'ID d un objet en possession d'un joueur.
$db_user = "dbuser";
$db_pass = "dbpass";
$db_name = "db";
$db_serv = "localhost";
$db = mysql_connect ( $db_serv, $db_user, $db_pass ) or die ("Connection a [$db_serv] impossible");
mysql_select_db ( $db_name );
$result = mysql_query("SELECT `object_id` FROM items WHERE `owner_id` = '$id' AND `loc` = 'PAPERDOLL'");
while($row = mysql_fetch_row($result)){
$itemideq = $row[0]; }Cependant, le joueur ayant plus d'un seul items sur lui, il faut que dans ma boucle je puisse obtenir le nom de l item
via une autre boucle sur une autre table et lorsque je fais comme ci-dessous cela ne fonctionne pas
$db_user = "dbuser";
$db_pass = "dbpass";
$db_name = "db";
$db_serv = "localhost";
$db = mysql_connect ( $db_serv, $db_user, $db_pass ) or die ("Connection a [$db_serv] impossible");
mysql_select_db ( $db_name );
$result = mysql_query("SELECT `object_id` FROM items WHERE `owner_id` = '$id' AND `loc` = 'PAPERDOLL'");
while($row = mysql_fetch_row($result)){
$itemideq = $row[0];
$result2 = mysql_query("SELECT `name` FROM etcitems WHERE `item_id` = '$itemideq'");
while($row2 = mysql_fetch_row($result2)){
$itemeq = $row2[0];
echo $itemeq."<br />"; } }(PS: biensur $id est defini, par methode POST et ensuite recupére)
Ce code ne me retourne absolument rien
//
Pourtant, j ai teste les deux requètes via phpmyadmin et cela me retourne les bonnes valeurs.
Quelqu'un peut-il m'aider ?
Merci.
Dernière modification par Lereyn (18-02-2008 23:08:22)
Hors ligne
bonjour
Suis pas un pro, mais il me semble que tu peux faire une jointure interne avec tes deux tables et récupérer le résultat dans la boucle
a une seule condition :
en supposant que l'id de l'item soit présent dans les deux tables ( ce qui paraitrait logique, 1ere table le joueur possede l'item 'n' et deuxieme table, l'item 'n' a telles caractéristiques)
tu devrais pouvoir faire une requete du genre, qui te retournait en une fois les caractéristique "de l'item que le joueur possede"
ce qui donnerait une requete qui se présenterait comme ceci
SELECT table_joueur.item_id, table_item.nom FROM table_joueur, table_item WHERE table_joueur.owner_id='$id' AND table_joueur.loc='paperdoll' AND table_joueur.item_id = table_item.item_id
a moins qu'un joueur ne puisse posséder plusieurs fois le même item, tu n'es même pas obligé de passer par un WHILE ( puisqu'il ne devrait retourner qu'une ligne)
A moins bien sûr que quelque chose ne m'échappe :-)
Bonne journée
Hors ligne