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 31/10/2011, 16h32   #1
Futur Membre du Club
 
Homme
Développeur informatique
Inscription : décembre 2008
Messages : 97
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : Maroc

Informations professionnelles :
Activité : Développeur informatique
Secteur : Conseil

Informations forums :
Inscription : décembre 2008
Messages : 97
Points : 15
Points : 15
Par défaut Boucle FOR dans une requete Mysql

Je souhaite compter le nombre de personnes respectant un nombre de critère.
Le nombre de critère peut varier de 1 jusqu’à X.
Les critères de la requete sont stockés dans des tableau php
J'ai commencer par :

Code sql :
1
2
3
4
5
6
7
8
9
10
 
$result=mysql_query ("SELECT COUNT(*) AS nbr FROM Table WHERE 
for($i=1; $i <= $j ; $i++)
{
$Kipi_eyes = $Array1 [$i];
$Seuil = $Array2 [$i];
$PA_Valeur = $Array3 [$i];
$Kipi_eyes $Seuil '$PA_Valeur' AND Week = '$PA_semaine' AND Statut = '$PA_Statut'
}
" );

Mais cela ne marche pas
Avez une petite idées ?
Merci d'avance
skins est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 01/11/2011, 12h19   #2
Membre habitué
 
Avatar de rinuom99
 
Étudiant
Inscription : août 2007
Messages : 238
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2007
Messages : 238
Points : 125
Points : 125
Envoyer un message via MSN à rinuom99
une boucle for dans une requête sql
__________________
Si tu peux voir détruit l'ouvrage de ta vie.
Et sans dire un seul mot te mettre à rebâtir,
Tu seras un Homme, mon fils.
rinuom99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 12h10   #3
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 661
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 661
Points : 5 388
Points : 5 388
Une requête sql, ce n'est jamais qu'une chaine. Tu peux donc la construire par concaténation
Code :
1
2
3
4
5
6
7
8
9
10
$requete = 'SELECT COUNT(*) AS nbr FROM Table WHERE ';
 
for($i=1; $i <= $j ; $i++)
{
	$Kipi_eyes = $Array1 [$i];
	$Seuil = $Array2 [$i];
	$PA_Valeur = $Array3 [$i];
	$requete .= "$Kipi_eyes $Seuil '$PA_Valeur' AND Week = '$PA_semaine' AND Statut = '$PA_Statut' ";
}
mysql_query($requete) or die('Erreur sur '.$requete.'<br/>'.mysql_error());
Bon, là a priori, ça ne va pas marcher non plus, mais je ne peux pas deviner ta requête non plus Le plus simple dans ce genre de cas, c'est d'écrire la requête en dur pour quelques exemples et ensuite de la décomposer pour pouvoir la construire par la boucle.
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/11/2011, 19h04   #4
Membre habitué
 
Avatar de rinuom99
 
Étudiant
Inscription : août 2007
Messages : 238
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2007
Messages : 238
Points : 125
Points : 125
Envoyer un message via MSN à rinuom99
pour construire la requête en tant que chaine de caractères oui je suis d'accord, mais pas utiliser for ou if intégrés avec la syntaxe sql !!
__________________
Si tu peux voir détruit l'ouvrage de ta vie.
Et sans dire un seul mot te mettre à rebâtir,
Tu seras un Homme, mon fils.
rinuom99 est dé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 10h15.


 
 
 
 
Partenaires

Hébergement Web