Réaliser une boucle PHP

Fermé
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 - 18 déc. 2008 à 12:33
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 - 18 déc. 2008 à 15:49
Bonjour, a tous voila j'ai un probleme

J'execute une requete qui me retoruen les infos suivantes par exemple : 13/20, 10/30 je voulais séparé dénominateur et numérateur ce qu iest fait grave à c quelques ligne :

list($num_angl_parler, $deno_angl_parler ) = split('/,;', $angl_parler);
echo "$num_angl_parler et $deno_angl_parler <br />\n";

Le probleme ce que le resultat n'affiche que 13 et 20

Il s'arrete a la premiere note et moi j'aimerais qu'il prenne en compte la deuxieme note pour avoir : 13 et 20 10 et 30

Je pense qu'i lfaut faire un boucle mais comment ?????????

MERCI D'AVANCE

11 réponses

laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
18 déc. 2008 à 12:39
Bonjour compte le nombre de note dans ta base avec une requete et tu recupere la valeur dans un variable, ensuite tu fais une boucle pour de 0 a ta variable count
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 12:42
Oui ok meric je vais essayé j'ai essayé en faisant :

for(i=0; i<tableau.length; i++)
{


}

mais sa ne mache pas

alors j'essai ta solution
MERCI
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 12:53
NOn mais je pense qu'on peu y arriver avec un simple boucle for mais j'arrive pas a trouver la syntaxe !!!
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
18 déc. 2008 à 13:14
Bonjour,

comment est faite ta requête qui te sort les notes ?

donnes nous le bout de code correspondant

il doit y avoir une boucle while je suppose c'est donc la qu'il faut faire ta séparation entre num et denom
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 13:30
OUi effectivemen il y en a une voila mon code


<?php 
					
// Faire correspodnre l'ID eleve avec l'eleve
mysql_connect('localhost','root',''); 
mysql_select_db('bdd_langue'); 
				
$trimestre = $_POST['Liste3'] ;
				
$requete7=mysql_query('SELECT * FROM `FICHE_INDIV` WHERE `ID_FICHE_INDIV` ='.$trimestre.''); 
mysql_close(); 

while($r7=mysql_fetch_array($requete7)) 
     { 
	$angl_parler = $r7['ANGL_PARLER'];		
     } 

			
/*--------------------------------------MOYENNE CATEGORIE LIRE---------------------------------*/
			
list($num_angl_lire, $deno_angl_lire) = split('/,;', $angl_lire);
echo " $num_angl_lire et $deno_angl_lire<br />\n";
			
$resultat1 = ((($num_angl_lire) / ($deno_angl_lire)) * 20) ;
echo $resultat1;

0

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

Posez votre question
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
18 déc. 2008 à 13:35
pourquoi ne pas mettre ta fonction split dans ta boucle while comme sa se serra fait pour chaque note qui parcourera la boucle
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 13:40
J'ai essayé et tjs il me met que la premiere note
0
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
18 déc. 2008 à 13:44
$angl_parler = $r7['ANGL_PARLER']; represente quoi exactement?
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
18 déc. 2008 à 14:17
Essayes comme ça:

<?php 
					
// Faire correspodnre l'ID eleve avec l'eleve
mysql_connect('localhost','root',''); 
mysql_select_db('bdd_langue'); 
				
$trimestre = $_POST['Liste3'] ;
				
$requete7=mysql_query("SELECT * FROM `FICHE_INDIV` WHERE `ID_FICHE_INDIV` ='".$trimestre."'"); //modifie
mysql_close(); 

while($r7=mysql_fetch_array($requete7)){ 
	$angl_parler = $r7['ANGL_PARLER'];		
     
	 list($num_angl_lire, $deno_angl_lire) = split('/,;', $angl_lire);
	echo $num_angl_lire.' et '.$deno_angl_lire.'<br />\n';
			
	$resultat1 = ((($num_angl_lire) / ($deno_angl_lire)) * 20) ;
	echo $resultat1;
	 
	 
} 
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 14:23
Non sa ne marche pas
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 14:50
De la facon que tu ma dit sa affche 12/20; 35/40 mais sa séparre pas 12 et 20 et 35 et 40

MERCI DE TON AIDE
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
18 déc. 2008 à 15:34
tu demande à php de couper (split) par rapport à /,; il ne trouvera jamsi les trois à la fois, a la place de

list($num_angl_lire, $deno_angl_lire) = split('/,;', $angl_lire);


mets:

list($num_angl_lire, $deno_angl_lire) = split('/', $angl_lire);
0
Tony85 Messages postés 72 Date d'inscription lundi 13 octobre 2008 Statut Membre Dernière intervention 2 août 2011 7
18 déc. 2008 à 15:49
J'ai donc réflechi et mis sa de cette maniere la

$requete4=mysql_query('SELECT * FROM `FICHE_INDIV` WHERE `ID_FICHE_INDIV` ='.$trimestre.'');


while($r4=mysql_fetch_array($requete4))

{
$angl_lire = $r4['ANGL_LIRE'];
$tab_angl_lire = split("/,;",$r4['ANGL_LIRE']);

echo $tab_angl_lire[0];
echo $tab_angl_lire[1];
.........

}

mysql_close();

SA MARCHE NIKEL
0