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 16/03/2011, 12h24   #1
Candidat au titre de Membre du Club
 
Inscription : février 2009
Messages : 94
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 94
Points : 11
Points : 11
Par défaut Variable dans le Where d'un select

Bonjour à tous,

j'ai besoin d'un petit coup de main,

je cherche à effectuer une requête d'envoi de mailing en fonction du statut (en faite du numéro de la liste )
or mes if et elseif ne fonctionne pas et me retourne 1
je ne vois pas mon erreur

Merci d'avance
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
37
 
// //////////////////////////////////////////////////////////////////////////////
// **********Requete d'envoi email en fonction du statut*************************
// //////////////////////////////////////////////////////////////////////////////
$select_statut = $_POST['select_statut'];
//echo $select_statut ;
 
$select_statut=9;  //pour essai
 
if ($select_statut= 1) {
	$statut= 1; // email aux membres du bureau
}
elseif ($select_statut= 2){
	$statut= 2;
}
elseif ($select_statut= 4){
	$statut= 4; // email aux membres actifs
}
elseif ($select_statut= 5){
	$statut= 5; // email aux anciens membres
}
elseif ($select_statut= 9){
	$statut= 9;  // essais
}
 
echo $statut ;
 
$requete = "
SELECT DISTINCT email_adh
FROM $table
where
id_statut= '$statut' ";
 
 
$result = mysql_query($requete);
 
$taillepaquet = mysql_num_rows($result); //Nbre Enregistrements
claude77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 12h43   #2
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 014
Points : 5 014
Hello

Déjà remplace ta série de if / elseif par un switch, ce sera plus propre.
Tu utilise l'opérateur = et pas == pour tester tes valeurs dans les if
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/03/2011, 14h20   #3
Candidat au titre de Membre du Club
 
Inscription : février 2009
Messages : 94
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 94
Points : 11
Points : 11
Merci Benjamin de ta réponse,

avec les if ca fonctionne, c'est super

avec switch je n'ai pas encore tout compris en particulier pour les syntaxes

si je peux abuser de ta bonté,

je voudrais que l'option 2 soit en fait le cumul des deux listes 1 et 2

"les membres du bureau sont en fait également administrateurs "

merci d'avance bonne journée
claude77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 15h17   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 014
Points : 5 014
Avec un swtich ça se fait comme ça:
Code :
1
2
3
4
5
6
7
8
 
switch ($select_statut) {
  case 1:
  case 2: $status = 2; break;
  case 3: $status = 3; break;
  // ... tous tes cases
  default: throw new RuntimeException("Unexpected value for \$select_status: $selected_status"); break;
}
Ne JAMAIS oublier les break
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 16h19   #5
Candidat au titre de Membre du Club
 
Inscription : février 2009
Messages : 94
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 94
Points : 11
Points : 11
Merci pour to bout de script qui fonctionne, mais j'ai toujours le problème pour le résultat de case2 qui doit cumuler Case1+case2


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//$select_statut = $_POST['select_statut'];
$select_statut = 1;  //pour essai
echo $select_statut ;
switch ($select_statut) {
	case 1:	$statut = 1; break;
	case 1:	//ne fonctionne pas seul et donne le resultat de case 2
	case 2: $statut = 2; break;// OK donne le resultat case 2 seul
		//or je voudrais le resultat de case 1 + case 2
	case 3: $statut = 3; break;
	case 4: $statut = 4; break;
	case 5: $statut = 5; break;
	case 9: $statut = 9; break;
 
		// ... tous tes cases
	default: throw new RuntimeException("Unexpected value for \$select_status: $selected_status"); break;
}
claude77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 18h00   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 014
Points : 5 014
Quand tu ne mets pas de break dans un case, on passe automatiquement au contenu du case suivant:

Code :
1
2
3
4
5
6
7
 
$status = 0;
switch ($selected_status) {
  case 1: $status = 1;
  case 2: $status += 2; break;
  // ...
}
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h01.


 
 
 
 
Partenaires

Hébergement Web