JeuWeb - Crée ton jeu par navigateur
[Rêglé][SQL]Problème avec le nom d'un champ - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Rêglé][SQL]Problème avec le nom d'un champ (/showthread.php?tid=1694)



[Rêglé][SQL]Problème avec le nom d'un champ - Byleth - 02-09-2007

Bonjour à tous, voici mon problème :

chaque joueur possède de la nourriture qui est répartie en plusieurs types : viandes, légumes,etc... et stockée dans les champs correspondant dans ma BdD

L'un des champs est "Viande aquatiques" (et non poisson car il concerne aussi les tétards et les crevettes ^^) mais il pose problème car il est composé de 2 mots séparés par un espace.

Lorsque je le sélectionne dans ma requête, rien ne se passe :

Code PHP :
<?php 
$ressources
= mysql_query("SELECT Racines,Végétaux,Viandes,Viandes aquatiques,Insectes,Conserves FROM possessions WHERE Id = '$id'");

$nombre= mysql_fetch_row($ressources);

for (
$i=0,$j=0;$i<6;$i++){
$choix=mysql_field_name($ressources,$i);
if (
$nombre[$i] > 0){
$bouffe[$j]['nom']=$choix;
$bouffe[$j]['nombre']=$nombre[$i];
$j++;
}
}

Comme vous le voyez, j'utilise mysql_field_name() donc le nom du champ doit être exactement le nom qui sera affiché par la suite.

J'ai essayé divers solutions mais aucune n'a fonctionnée, donc si vous avez une idée, je suis preneur (trouver un nom de remplacement étant une solution ^^)


RE: [SQL]Problème avec le nom d'un champ - Sephi-Chan - 02-09-2007

Et si tu remplaçais l'espace par un underscore _ ? Ou en ajoutant les fameux ` autour de tes noms de champs ?


Sephi-Chan


RE: [SQL]Problème avec le nom d'un champ - Roworll - 02-09-2007

Si tu veux garder ce nom de champ tel quel, il faut l'encadrer par des `
C'est un caractère propre à mysql qui permet de délimiter les noms de champs, tables, etc.
Essaye de créer ta requête sous phpMyAdmin en utilisant l'assistant et regarde bien ce qu'il met pour encadrer ton champ.


RE: [SQL]Problème avec le nom d'un champ - Byleth - 02-09-2007

J'avais déjà mis le underscore sans succès et des ' ' aussi, mais je n'avais pas pensé à ces petits `` que je n'utilise jamais.

Merci bien, je viens en plus de découvrir à quoi ils servaient (un amis avais fait les présentations mais je n'avais pas compris l'intérêt à ce moment là).

Edit : j'ai été content trop vite, maintenant mon mysql_fetch_row ne veux plus rien entendre Sad

Edit2 : en fait pas de soucis, juste un oubli de mis à jour de ma BdD ^^


RE: [Rêglé][SQL]Problème avec le nom d'un champ - Sephi-Chan - 02-09-2007

J'suis trop fort ! Première lecture du sujet et déjà la réponse. :p



Sephi-Chan, je m'aime


RE: [Rêglé][SQL]Problème avec le nom d'un champ - Prizor - 03-09-2007

Comment ça l'underscore marchait pas ?:omg::omg::omg:
Si dans ta requète tu mets Viandes_aquatiques et que dans ta table tu as le champ Viandes_aquatiques, y a aucune raison que ça marche pas, ou alors j'y comprends plus rien...>.<


RE: [Rêglé][SQL]Problème avec le nom d'un champ - Byleth - 03-09-2007

Va savoir, j'ai peut être oublié un truc au passage, mais dans tous les cas, ça m'intéressait pas car justement, il y a l'underscore Smile