Mysql_fetch_array PHP

Résolu/Fermé
milou - 9 mars 2009 à 17:09
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 - 9 mars 2009 à 21:58
Bonjour,

je ne sais pas si c'est possible mais j'aimerais pouvoir appeler une variable d'une table d'une bdd grace a une autre variable ... voici mon code pour plus de compréhension

$reponse3 = mysql_query("SELECT * FROM matable WHERE nom=$logi");
$donnees3 = mysql_fetch_array($reponse3);
$att = $donnees3['$id_attaquant'];


et bien sur $att ne renvoi rien :(
comment faire svp
A voir également:

12 réponses

NookZ Messages postés 2138 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 7 mars 2013 514
9 mars 2009 à 17:18
c'est possible déjà après faudrait, si ton nom est une chaîne de caractère faire
$reponse3 = mysql_query("SELECT * FROM matable WHERE nom='$logi' ");
1
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 95
9 mars 2009 à 21:50
Ok essayes donc :

$att = $donnees3[$id_attaquant];
1
oui le nom est une chaine de caractere mais ça ne change rien quand je le modifie :( je pense que l'erreur vient plutot de

$donnees3['$id_attaquant']; la le $id_attaquant est un chiffre et je pense qu'il n'arrive pas a lire la donnée correspondante ? est ce que ca pourrait etre un probleme avec le fait d'appeler le "donnees[] avec une variable ?
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
9 mars 2009 à 18:55
Bonsoir,

$donnees3 = mysql_fetch_array($reponse3);
$att = $donnees3['$id_attaquant'];


quand tu utilises cette methode, $donnees3['champ_table']

la partie entre les [] doit correspondre à un nom de champ de ta table de la base de données, dans ton cas ce doit être id_attanquant je pense

donc $att=$donnees3['id_attaquant'];
0

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

Posez votre question
en fait pas du tout ... les champs de ma table sont composés de chiffre (1 a 200) par exemple ... mon soucis est que cette fonction est incluse dans une page ou je récupère le $id_attaquant qui dépend de la personne qui appelle cette page et donc qui peut etre variable ... comme je n'ai pas d'autre moyen pour indiquer le champ que je souhaite j'ai donc posé cette question pour savoir s'il était possible d'opérer ainsi c'est a dire mettre une variable pour appeler un champ ...

si c'est possible j'ai surement fait une erreur de syntaxe ...

j'espere que l'un d'entre vous aura une solution a me proposer :(
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
9 mars 2009 à 20:54
les champs de ma table sont composés de chiffre (1 a 200) ç a fait beaucoup 200 champs pour une table

sinon fais un echo de $id_attaquant pour voir si cette variable a bien une valeur
0
oui cette variable a bien une valeur et d'ailleurs si je mets un chiffre au lieu de id_attaquant ça marche impeccable ... faut vraiment que j'apprene comment faire pour appeler un champ à partir d'une variable :( ...

peut être des guillemet à mettre ?? j'en sais fichtrement rien j'ai fait des essais mais point concluants :(
0
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 95
9 mars 2009 à 21:26
Après ta requete sql :

<?php

echo $id_attaquant.'<br/>';
print_r($donnees3);

?>

Dis nous ce que tu devrais obtenir comme résultats et ce que tu obtiens actuellement.
0
1
Array ( [0] => Emiliejolienb [nom] => Emiliejolienb [1] => 5 [4] => 0 [2] => 0 [3] => 0 [5] => 0 [7] => 0 [6] => 0 [8] => 0 [9] => 0 [10] => 0 [149] => 0 [150] => 0 [11] => 0 [151] => 0 [12] => 0 [152] => 0 [13] => 0 [155] => 0 [14] => 0 [157] => 0 [15] => 0 [159] => 0 [16] => 0 [158] => 0 [17] => 0 [160] => 0 [18] => 0 [156] => 0 [19] => 0 [161] => 0 [20] => 0 [162] => 0 [21] => 0 [163] => 0 [22] => 0 [164] => 0 [23] => 0 [165] => 0 [24] => 0 [166] => 0 [25] => 0 [167] => 0 [26] => 0 [168] => 0 [27] => 0 [169] => 0 [28] => 0 [170] => 0 [29] => 0 [171] => 0 [30] => 0 [172] => 0 [31] => 0 [173] => 0 [32] => 0 [174] => 0 [33] => 0 [175] => 0 [34] => 0 [176] => 0 [35] => 0 [177] => 0 [36] => 0 [178] => 0 [37] => 0 [179] => 0 [38] => 0 [180] => 0 [39] => 0 [181] => 0 [40] => 0 [182] => 0 [41] => 0 [183] => 0 [42] => 0 [184] => 0 [43] => 0 [185] => 0 [44] => 0 [186] => 0 [45] => 0 [187] => 0 [46] => 0 [188] => 0 [47] => 0 [189] => 0 [48] => 0 [190] => 0 [49] => 0 [191] => 0 [50] => 0 [192] => 0 [51] => 0 [193] => 0 [52] => 0 [194] => 0 [53] => 0 [195] => 0 [54] => 0 [196] => 0 [55] => 0 [197] => 0 [56] => 0 [198] => 0 [57] => 0 [199] => 0 [58] => 0 [200] => 0 [59] => 0 [201] => 0 [60] => 0 [202] => 0 [61] => 0 [203] => 0 [62] => 0 [204] => 0 [63] => 0 [205] => 0 [64] => 0 [206] => 0 [65] => 0 [207] => 0 [66] => 0 [208] => 0 [67] => 0 [209] => 0 [68] => 0 [210] => 0 [69] => 0 [211] => 0 [70] => 0 [212] => 0 [71] => 0 [213] => 0 [72] => 0 [214] => 0 [73] => 0 [215] => 0 [74] => 0 [216] => 0 [75] => 0 [217] => 0 [76] => 0 [218] => 0 [77] => 0 [219] => 0 [78] => 0 [220] => 0 [79] => 0 [221] => 0 [80] => 0 [222] => 0 [81] => 0 [223] => 0 [82] => 0 [224] => 0 [83] => 0 [225] => 0 [84] => 0 [226] => 0 [85] => 0 [227] => 0 [86] => 0 [228] => 0 [87] => 0 [229] => 0 [88] => 0 [230] => 0 [89] => 0 [231] => 0 [90] => 0 [232] => 0 [91] => 0 [233] => 0 [92] => 0 [234] => 0 [93] => 0 [235] => 0 [94] => 0 [236] => 0 [95] => 0 [237] => 0 [96] => 0 [238] => 0 [97] => 0 [239] => 0 [98] => 0 [240] => 0 [99] => 0 [241] => 0 [100] => 0 [242] => 0 [101] => 0 [243] => 0 [102] => 0 [244] => 0 [103] => 0 [245] => 0 [104] => 0 [246] => 0 [105] => 0 [247] => 0 [106] => 0 [248] => 0 [107] => 0 [249] => 0 [108] => 0 [250] => 0 [109] => 0 [251] => 0 [110] => 0 [252] => 0 [111] => 0 [253] => 0 [112] => 0 [254] => 0 [113] => 0 [255] => 0 [114] => 0 [256] => 0 [115] => 0 [257] => 0 [116] => 0 [258] => 0 [117] => 0 [260] => 0 [118] => 0 [259] => 0 [119] => 0 [261] => 0 [120] => 0 [262] => 0 [121] => 0 [263] => 0 [122] => 0 [264] => 0 [123] => 0 [265] => 0 [124] => 0 [266] => 0 [125] => 0 [267] => 0 [126] => 0 [268] => 0 [127] => 0 [269] => 0 [128] => 0 [270] => 0 [129] => 0 [271] => 0 [130] => 0 [272] => 0 [131] => 0 [273] => 0 [132] => 0 [274] => 0 [133] => 0 [275] => 0 [134] => 0 [276] => 0 [135] => 0 [277] => 0 [136] => 0 [278] => 0 [137] => 0 [279] => 0 [138] => 0 [280] => 0 [139] => 0 [281] => 0 [140] => 0 [282] => 0 [141] => 0 [283] => 0 [142] => 0 [284] => 0 [143] => 0 [285] => 0 [144] => 0 [286] => 0 [145] => 0 [287] => 0 [146] => 0 [288] => 0 [147] => 0 [289] => 0 [148] => 0 [290] => 0 [291] => 0 [292] => 0 [293] => 0 [294] => 0 [153] => 0 [295] => 0 [154] => 0 [296] => 0 [297] => 0 [298] => 0 [299] => 0 [300] => 0 [301] => 0 [302] => 0 [303] => 0 [304] => 0 [305] => 0 [306] => 0 [307] => 0 [308] => 0 [309] => 0 [310] => 0 [311] => 0 [312] => 0 [313] => 0 [314] => 0 [315] => 0 [316] => 0 [317] => 0 [318] => 0 [319] => 0 [320] => 0 [321] => 0 [322] => 0 [325] => 0 [323] => 0 [324] => 0 [326] => 0 [327] => 0 [328] => 0 [329] => 0 [330] => 0 [331] => 0 [332] => 0 [333] => 0 [334] => 0 [335] => 0 [336] => 0 [337] => 0 [339] => 0 [338] => 0 [340] => 0 )

ça devrait me donner 5
0
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 95
9 mars 2009 à 21:52
Nb : pour alléger tes recherches dans la base sql :

$reponse3 = mysql_query("SELECT * FROM matable WHERE nom=$logi");

Remplacer le * par les champs sur lesquels tu souhaites agir. En l'occurence ici : le champs associé à l'enregistrement sensé te retourner "1".
0
ah ba tient ça marche ? curieux me semblait vraiment l'avoir essayer en premier ce truc ? par contre j'avais pas mis me semble t il le '$logi' du coup c'est peut être ça qui n'allait pas tout simplement ...


un grand merci pour vos réponses et votre temps ... au plaisir de pouvoir a mon tour aider mon prochain ... bonne soirée à vous et encore merci
0
djflexlive Messages postés 557 Date d'inscription mercredi 26 mars 2008 Statut Membre Dernière intervention 23 avril 2015 95
9 mars 2009 à 21:58
De rien, bonne soirée.
0