Citation:
Envoyé par stunti
Je viens de relire ton code.
En fait, il faut faire :
Code:${'Name' . $i} =$data['Name'];
Version imprimable
Citation:
Envoyé par stunti
Je viens de relire ton code.
En fait, il faut faire :
Code:${'Name' . $i} =$data['Name'];
Il n'y a rien qui s'affiche mais pas d'erreur car j'ai ma pageCitation:
Envoyé par Mr N.
ce doit etre la bonne solution mais j'ai un probleme de syntaxe avec les differentes boucles dans mon code:Citation:
Code:
1
2 ${'Name' . $i} =$data['Name'];
cela m'affiche : "1English course2English courseEnglish course1UTSEnglish course2UTSUTS" La variable i est bien incrementer mais les valeur de $Name1 et $Name2 prenne les informations ("English course" et "UTS") mais ne me les mettent pas comme il faut.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 $sql5 = "SELECT * FROM studying WHERE IdStudent = '$Idstudent';"; $req5 = mysql_query($sql5) or die('Erreur SQL !<br>'.$sql5.'<br>'.mysql_error()); //$i = 1; while($data = mysql_fetch_assoc($req5)) { $IdCourse = $data['IdCourse']; $sql6 = "SELECT * FROM courses WHERE Idcourse = '$IdCourse';"; $req6 = mysql_query($sql6) or die('Erreur SQL !<br>'.$sql6.'<br>'.mysql_error()); for($i = 1; $i <= mysql_num_rows($req5); $i++){ while($data = mysql_fetch_assoc($req6)){ $Name = $data['Name']; } ${'Name' . $i} = $Name; echo $i; echo $Name1; echo $Name2; } }
Le resultat que je voudrai est : "1English course2UTS"
pouvez vous m'aidez sur la facon d'obtenir ce resultat?
J'en fait une utilisation minutieuse d'eval. Mais le plus important c'est de l'utiliser la ou tu en as vraiment besoin. Voir seulement quand tu n'a pas d'autre possibilité.
Essaie ceci :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 $sql5 = "SELECT * FROM studying WHERE IdStudent = '$Idstudent';"; $req5 = mysql_query($sql5) or die('Erreur SQL !<br>'.$sql5.'<br>'.mysql_error()); while($data = mysql_fetch_assoc($req5)) { $IdCourse = $data['IdCourse']; $sql6 = "SELECT * FROM courses WHERE Idcourse = '$IdCourse';"; $req6 = mysql_query($sql6) or die('Erreur SQL !<br>'.$sql6.'<br>'.mysql_error()); $i = 1; while($data = mysql_fetch_assoc($req6)){ ${'Name' . $i} = $Name; echo $i; echo ${'Name' . $i}; $i++; } }
Citation:
Envoyé par Mr N.
Heu $Name ne prends jamais de valeur, donc les $Name1, $Name2, ... seront tjs vide !
Mais euhh... J'ai pas vérifier son code... :oops:Citation:
Envoyé par stunti
Je dirais donc au hasard :
Bien vu, Oeil-De-LynxCode:${'Name' . $i} = $data['Name'];
ok ca a l'air de marcher mais je n'arrive pas au resultat voulu.Citation:
Envoyé par Mr N.
comment a partir de ces deux requete :
- SELECT IdCourse FROM studying WHERE IdStudent = '$Idstudent';
- SELECT * FROM courses WHERE Idcourse = '$IdCourse';
metre la valeur de Name de la table courses qui corespond au Idcourse requete dans une variable qui a un nom different en fonction des differentes courses. $Name1 pour le premier idcourse qui corespond, $Name2 pour le second ....
j'ai vraiment besoin d'aide car j'ai essayer des tones de chose mais rien ne marche comme je veux.
Je te propose de ne pas travailler avec des variables dynamiques. On s'embrouille tous les pinceaux, on perd du temps alors qu'avec un bête tableau, ton problème serait déjà résolu depuis longtemps...
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <?php $names = array(); //<----------- $sql5 = "SELECT * FROM studying WHERE IdStudent = '$Idstudent';"; $req5 = mysql_query($sql5) or die('Erreur SQL !<br>'.$sql5.'<br>'.mysql_error()); while($data = mysql_fetch_assoc($req5)) { $IdCourse = $data['IdCourse']; $names[$IdCourse] = array(); //<----------- $sql6 = "SELECT * FROM courses WHERE Idcourse = '$IdCourse';"; $req6 = mysql_query($sql6) or die('Erreur SQL !<br>'.$sql6.'<br>'.mysql_error()); $i = 1; while($data = mysql_fetch_assoc($req6)){ $names[$IdCourse][] = $Name; //<----------- } } echo '<pre>'; var_dump($names); //<----------- echo '</pre>'; ?>
ok c'est vrai que c'est beaucoup plus simple mais je debute et les tableau je ne connaissais pas vraiment!Citation:
Envoyé par Mr N.
Peux tu me dire commment recuperer mes differents IdCourse car si je fais un print de $IdCourse cela me les affiche mais tous a la suite. Or pour acceder aux infos dans le tableau j'ai besoin de ces IdCourse mais 1 par 1.
Pour un parcours de tableau :Code:
1
2
3 foreach($tableau as $key => $value) { echo '<p>La valeur pour la clef "'. $key .'" est : '. $value .'</p>'; }