Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2011, 16h08   #1
Futur Membre du Club
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 168
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 168
Points : 18
Points : 18
Par défaut Boucle ne fonctionne pas pourquoi ?

Bonjour

Encore moi, mais j'ai un autre souci
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function fille($iparent,$ienfant){
  $requete ='SELECT COUNT(id) as nenr FROM menug WHERE ID_parent='.$iparent.'AND id_enfants='.$ienfant;
  echo $requete; 
    global $db;
	 $req = $db->query($requete);
     $data = $req->fetch();
//	 $ienfant=$data['id_enfants'];
	 if($ienfant==0){
		   echo '<ul>'.$data['Titre'].'avec des enfants';
	   }else{
		   echo '<li>'.$data['Titre'].'</li>';
		   }
   $req->closeCursor();		   
}
// Lecture des enregistrements
	for($i=$parent;$i<=$nombre;$i++) {
	$requete ='SELECT * FROM menug WHERE ID_parent='.$i;
	$req = $db->query($requete);
   $data = $req->fetch();
   $Nbenfants = $data['nbenfants'];
   $enfants=$data['id_enfants'];
   if($Nbenfants ==0 ) {
 
	   echo '<ul>'.$data['Titre'];
   }else {
	   echo '<br/>Passer deux<br/>';
	   $max=nbenregistrement($i);
	   echo $max.' lu<br/>';
	   for($j=0;$j==$max;$j++){
		   echo $j.'dans la boucle';
	   fille($i,$j);
	   }
 
   };
   echo'</ul>';
   $req->closeCursor();}
La boucle for ne tourne pas et ne fonctionne pas. Pourquoi la fonction fille et la boucle ne se lance pas.

Merci

Cordialement
BXDSPORT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h12   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 119
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 119
Points : 8 468
Points : 8 468
$parent et $nombre n'existent pas
il faut travailler avec le niveau d'erreur maximal
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h35   #3
Futur Membre du Club
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 168
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 168
Points : 18
Points : 18
$parent est défini au départ
Voici le code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 try {
	   $options[PDO::ATTR_ERRMODE]=PDO::ERRMODE_EXCEPTION;
	   $db= new PDO('mysql:host=localhost;dbname=tests','root','',$options);
// echo '<p>connexion à la base de données</p>';
 
   }
   catch (Exeption $e) {
    die('erreur : '.$e->getMessage());   
	}
	$parent = 0;
 
//Maximum des id parents
   $req = $db->query("SELECT max(ID_parent) as rparent FROM menug ");
   $data = $req->fetch();
   $nombre = $data['rparent'];
//   echo '<p><h6>c\'est le nombre maximum : '.$nombre.'</p></h6>';
   $req->closeCursor();
 
//Fonction enregisteement   
 function nbenregistrement($iparent) {
    $requete ='SELECT COUNT(id) as nenr FROM menug WHERE ID_parent='.$iparent;
    global $db;
   $req = $db->query($requete);
   $data = $req->fetch();
   $nEnr = $data['nenr'];
  // echo '<p><h5>Le nombre d\'enregistrement de la fonction est de : '.$nEnr.'</p></h5>';
   return($nEnr);
 
   $req->closeCursor();}
BXDSPORT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h36   #4
Futur Membre du Club
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 168
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 168
Points : 18
Points : 18
Qu'est ce que tu entends par le nombre maximale d'erreur au départ ??

Merci de tes lumières
BXDSPORT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h37   #5
Modérateur
 
Inscription : septembre 2010
Messages : 7 119
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 119
Points : 8 468
Points : 8 468
Citation:
Envoyé par BXDSPORT Voir le message
Qu'est ce que tu entends par le nombre maximale d'erreur au départ ??

Merci de tes lumières
niveau d'erreur maximal

ton error_reporting


il faut aussi mettre ces variables en global
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h47   #6
Futur Membre du Club
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 168
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 168
Points : 18
Points : 18
Si je comprend bien, il faut que je demande lors de la lecture de la base de données que les OPTIONS soit réglées au maximum plutôt qu'à l'exception.
Si je te suis...
BXDSPORT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h52   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 119
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 119
Points : 8 468
Points : 8 468
Citation:
Envoyé par BXDSPORT Voir le message
Si je comprend bien, il faut que je demande lors de la lecture de la base de données que les OPTIONS soit réglées au maximum plutôt qu'à l'exception.
Si je te suis...
non rien a voir avec la base, si ton PHP est réglé pour n'afficher aucune erreur comme tu veux savoir ou elles se trouvent ? quand tu développes le niveau dois être au maximum
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 16h59   #8
Futur Membre du Club
 
Homme
Consultant informatique
Inscription : mars 2002
Messages : 168
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant informatique

Informations forums :
Inscription : mars 2002
Messages : 168
Points : 18
Points : 18
Explique moi lesquels variables tu mettrais en global et ta procédure afin que je puisse m'en inspirer pour avancer.
Tes remarques sont très intéressantes.

Merci
BXDSPORT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2011, 17h05   #9
Modérateur
 
Inscription : septembre 2010
Messages : 7 119
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 119
Points : 8 468
Points : 8 468
Citation:
Envoyé par BXDSPORT Voir le message
Explique moi lesquels variables tu mettrais en global et ta procédure afin que je puisse m'en inspirer pour avancer.
Tes remarques sont très intéressantes.

Merci
quand tes dans un function t'as pas acces au variable qui sont en dehors de ces functions, si tu veux y avoir acces il faut les mettre en global comem tu l'as fait pour $db il faut le faire pour $parent et $nombre
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h23.


 
 
 
 
Partenaires

Hébergement Web