Problème mysql_fetch_array
Résolu
Kitty-cat
Messages postés
141
Statut
Membre
-
Kitty-cat Messages postés 141 Statut Membre -
Kitty-cat Messages postés 141 Statut Membre -
Bonjour à vous chers ccmistes ;)
Désolé de revenir aussi souvent, mais autant je n'ai aucun problème à créer des bugs, autant, les résoudre, c'est autre chose. Je viens donc vous quérir suite à un problème avec un mysql_fetch_array().
En effet, au lieu de me renvoyer les valeurs suivantes ==> 68,69,70,71,72, il me renvoie celles ci ==> 68,68,70,70,72. Chose qui m'échappe, puisque j'utilise la même méthode pour tout les mysql_fetch_array, et qu'à part celui-ci tous marchent.
Je me demande si cela n'a pas un rapport avec le fait que j'utilise de l'ajax pour lancer ce bout de code, mais si tel est le cas, je serai fort marri car je suis forcé de ne pas recharger ma page pour mon application :(
Voilà la méthode que j'utilise pour imputer des valeurs à mes variables, j'espère que cela vous permettra de m'aider ==>
[code]
$sqlconnect=mysql_connect($dsn,$username,$password);
if (!$sqlconnect)
{
die('Connexion impossible : ' . mysql_error());
}
mysql_select_db('Intranet',$sqlconnect);
$select = "select F.*, R.Chemin from repertoires R, fichiers F where R.id = " . $_POST['path'] . " and R.Id = F.Repertoire";
$results = mysql_query($select);
if ($results)
{
while ($tab = mysql_fetch_array($results))
{
array_push($TabResChemin, $tab['Chemin']);
array_push($TabResNomDoc, $tab['NomDocument']);
array_push($TabResTitreDoc, $tab['TitreDocument']);
array_push($TabResDescription, $tab['Description']);
array_push($TabResDateMAJ, $tab['DateMAJ']);
array_push($TabResEmetteur, $tab['Emetteur']);
array_push($TabResTypeDoc, $tab['TypeDocuments']);
array_push($TabResNatureDoc, $tab['NatureDocument']);
array_push($TabResES, $tab['EntrantSortant']);
array_push($TabResCodeImputation, $tab['CodeImputation']);
array_push($TabResAuteurDoc, $tab['AuteurDocument']);
array_push($TabResFinConsult, $tab['DateFinConsultation']);
array_push($TabResCommentaire, $tab['Commentaire']);
array_push($TabResDestinataire, $tab['Destinataire']);
array_push($TabResNomOriginal, $tab['NomOriginalFichier']);
array_push($TabResIdFichier, $tab['Id']);
array_push($TabResIdLien, $tab['IdLien']);
array_push($TabResLienURL, $tab['LienURL']);
array_push($TabResIdFichier, $tab['Id']);
}
}
mysql_close($sqlconnect);
/code
Je précise aussi que j'utilise les tableaux ainsi récupérés comme paramètres d'une fonction que j'utilise juste derrière. (Et dans laquelle, je me suis aperçu que les valeurs n'étaient pas bonnes)
Je remercie d'avance tout ceux qui pourront m'aider.
Cordialement,
Kitty-Cat
Désolé de revenir aussi souvent, mais autant je n'ai aucun problème à créer des bugs, autant, les résoudre, c'est autre chose. Je viens donc vous quérir suite à un problème avec un mysql_fetch_array().
En effet, au lieu de me renvoyer les valeurs suivantes ==> 68,69,70,71,72, il me renvoie celles ci ==> 68,68,70,70,72. Chose qui m'échappe, puisque j'utilise la même méthode pour tout les mysql_fetch_array, et qu'à part celui-ci tous marchent.
Je me demande si cela n'a pas un rapport avec le fait que j'utilise de l'ajax pour lancer ce bout de code, mais si tel est le cas, je serai fort marri car je suis forcé de ne pas recharger ma page pour mon application :(
Voilà la méthode que j'utilise pour imputer des valeurs à mes variables, j'espère que cela vous permettra de m'aider ==>
[code]
$sqlconnect=mysql_connect($dsn,$username,$password);
if (!$sqlconnect)
{
die('Connexion impossible : ' . mysql_error());
}
mysql_select_db('Intranet',$sqlconnect);
$select = "select F.*, R.Chemin from repertoires R, fichiers F where R.id = " . $_POST['path'] . " and R.Id = F.Repertoire";
$results = mysql_query($select);
if ($results)
{
while ($tab = mysql_fetch_array($results))
{
array_push($TabResChemin, $tab['Chemin']);
array_push($TabResNomDoc, $tab['NomDocument']);
array_push($TabResTitreDoc, $tab['TitreDocument']);
array_push($TabResDescription, $tab['Description']);
array_push($TabResDateMAJ, $tab['DateMAJ']);
array_push($TabResEmetteur, $tab['Emetteur']);
array_push($TabResTypeDoc, $tab['TypeDocuments']);
array_push($TabResNatureDoc, $tab['NatureDocument']);
array_push($TabResES, $tab['EntrantSortant']);
array_push($TabResCodeImputation, $tab['CodeImputation']);
array_push($TabResAuteurDoc, $tab['AuteurDocument']);
array_push($TabResFinConsult, $tab['DateFinConsultation']);
array_push($TabResCommentaire, $tab['Commentaire']);
array_push($TabResDestinataire, $tab['Destinataire']);
array_push($TabResNomOriginal, $tab['NomOriginalFichier']);
array_push($TabResIdFichier, $tab['Id']);
array_push($TabResIdLien, $tab['IdLien']);
array_push($TabResLienURL, $tab['LienURL']);
array_push($TabResIdFichier, $tab['Id']);
}
}
mysql_close($sqlconnect);
/code
Je précise aussi que j'utilise les tableaux ainsi récupérés comme paramètres d'une fonction que j'utilise juste derrière. (Et dans laquelle, je me suis aperçu que les valeurs n'étaient pas bonnes)
Je remercie d'avance tout ceux qui pourront m'aider.
Cordialement,
Kitty-Cat
3 réponses
Les données dans ta BDD sont correctes ?
Fais-tu un traitement particulier dans ta fonction avant de voir les données ?
Si tu fais un var_dump($tab) dans ta boucles while, les données sont correctes ?
Autrement dit, à partir de quel moment les données ne sont plus correctes ?
A quoi correspondent tes valeurs 68 à 72 ?
Fais-tu un traitement particulier dans ta fonction avant de voir les données ?
Si tu fais un var_dump($tab) dans ta boucles while, les données sont correctes ?
Autrement dit, à partir de quel moment les données ne sont plus correctes ?
A quoi correspondent tes valeurs 68 à 72 ?
Dans la BDD, oui elles sont correctes. Dans la fonction, je ne touche pas à cette variable, et les quelques rares que je touche sont comme toutes les autres : Correctes. Mes valeurs 68 à 72 correspondent à l'id du fichier.
Et si je fais un var_dump juste après le while sur la variable $TabResIdFichier, il m'a crée les valeurs en double.
le résultat du vardump ==>
array(10) { [0]=> string(2) "70" [1]=> string(2) "70" [2]=> string(2) "68" [3]=> string(2) "68" [4]=> string(2) "69" [5]=> string(2) "69" [6]=> string(2) "67" [7]=> string(2) "67" [8]=> string(2) "71" [9]=> string(2) "71" }
Ma question est donc : Pourquoi cette variable s'affecte mal contrairement aux autres?
Edit : Raaaaaaaaaaah, le noob. j'affecte deux fois ma valeur. *Part se pendre*
Et si je fais un var_dump juste après le while sur la variable $TabResIdFichier, il m'a crée les valeurs en double.
le résultat du vardump ==>
array(10) { [0]=> string(2) "70" [1]=> string(2) "70" [2]=> string(2) "68" [3]=> string(2) "68" [4]=> string(2) "69" [5]=> string(2) "69" [6]=> string(2) "67" [7]=> string(2) "67" [8]=> string(2) "71" [9]=> string(2) "71" }
Ma question est donc : Pourquoi cette variable s'affecte mal contrairement aux autres?
Edit : Raaaaaaaaaaah, le noob. j'affecte deux fois ma valeur. *Part se pendre*