function recup_table_nouv_musique() {
// requête mysql
$reqnouvmusique= mysql_query('SELECT login FROM log WHERE rubrique=\'Musique\' AND confirm=\'n\''); // selection de la colonne nom dans musique;
// création d'un tableau destiné à contenir les infos de la table et nommé en conséquence
$tbl_array = array();
// remplissage du tableau avec le contenu de la requête
while($data = mysql_fetch_array($reqnouvmusique)) {
foreach($data as $key => $value) {
$tbl_array[$key][] = $value;
}
}
return $tbl_array;
}
$tbl_array = recup_table_nouv_musique();
$cpt = count($tbl_array);
for ($i=0;$i<$cpt;$i++){
$cpt2 = count($tbl_array[$i]);
for ($j=0;$j<$cpt2;$j++)
print_r ($tbl_array[$i][$j].'[?page=change_profile modification]
');
}
a part une erreur :
Notice : Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\essai php\script_espace_membres\adminiroo2.php on line 63 ca fonctionne bien
mais maintenant je voudrais que le resultat de mon tableau ce transforme en variable
pour que je puisse réutilisé les valeurs recues je sais pas si je suis bien clair...
le résultat en html me donne ca :
Musique (3)
jphil=change_profile modification coel modification essai modification en fait c'est pour réutiliser les login dans le href après...
merci du coup de main
www.creativs.fr
A voir également:
Recuperation champ bdd puis transformation en variable
undefine notice, c'est pour la variable que tu as à la ligne 63: elle est pas déclarée (tu as un error reporting à E_ALL chez toi...)
Ensuite, permets moi de te dire sans méchanceté que tu es un peu aux fraises sur ton code (cf les autres topics que tu as ouvert) et que tu devrais vraiment prendre du temps pour apprendre les bases de la programmation sur un site comme celui du zero. je suis persuadé que tu gagnerais bcp de temps...
Pour ton problème (pour ce que j'ai compris de ta demande), celà vient de
print_r ($tbl_array[$i][$j].'[?page=change_profile modification]
');
Il ne faut pas l'utiliser comme ça. Il faut que tu emploies $tbl_array[$i][$j] en fonction de ce que tu as besoin, de tes critères d'utilisation. Le tableau $tbl_array contient les résultats de la requête, à toi de l'utiliser comme bon te semble. Il est clair qu'en l'état ton code affiche le résultat, puisque tu as mis un print_r (je conseillerais d'ailleurs un echo au lieu du print_r là).
Exemple:
for ($i=0;$i<$cpt;$i++){
$cpt2 = count($tbl_array[$i]);
for ($j=0;$j<$cpt2;$j++)
echo '[?page=change_profile&profil='.$tbl_array[$i][$j].' modification du profil de '.$tbl_array[$i][$j].']
';
}
Ou suivant quoi, il faut que tu utilises les fonctions de manipulation des tableaux -> http://ch2.php.net/array
// requête mysql
$reqnouvmusique=mysql_query('SELECT login FROM log WHERE rubrique=\'Musique\' AND confirm=\'n\''); // selection de la colonne nom dans musique;
// création d'un tableau destiné à contenir les infos de la table et nommé en conséquence
$tbl_array = array();
// remplissage du tableau avec le contenu de la requête
while($data = mysql_fetch_array($reqnouvmusique)) {
// ecriture de la nouvelle adresse de modification
echo ' [?page=change_profile&profil='.$data['login'].' '.$data['login'].']
';
}
Tu as un reporting defini à E_ALL je te dis... cf dans ton easyphp, dossier conf_files (sauf erreur), fichier php.ini: je suis sûr que tu as la ligne "error_reporting = E_ALL" (sans ";") quelque part. Si tu veux changer ça, mets y "error_reporting = E_ALL & ~E_NOTICE".
Tes variables ne sont pas déclarées, d'où l'erreur. Déclare les avant $tbl_array = recup_table_nouv_musique();.
Tu écris simplement $cpt2 = ''; par exemple.