selection multiple

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : selection multiple

par _activmik » 04 août 2008, 17:41

Exact, j'ai été trop vite, donc astorn si tu reviens par là :

Code : Tout sélectionner

SELECT COUNT(DISTINCT id_annonce) AS compteur, nom_utilisateur FROM utilisateur, annonce WHERE annonce.id_annonce = utilisateur.id_annonce GROUP BY nom_utilisateur;


annonce.id_annonce = ta clé primaire de la table annonce
utilisateur.id_annonce = ta clé étrangère dans ta table utilisateur qui fait référene à la clé primaire de la table annonce

par zeus » 04 août 2008, 17:35

Il ne manque pas la clause de jointure ?

par _activmik » 04 août 2008, 17:25

Je pense qu'étant donné qu'il connait son problème, le fait qu'on lui donne une solution va lui permettre de pouvoir confronter son problème, le resultat et le traitement.
C'est un petit coup de pouce qu'on lui donne, on lui fait pas son site non plus :wink:

par astorn » 04 août 2008, 17:25

merci a tous de ces réponses très rapide, specialement big thx a _activmik

par hakazizi » 04 août 2008, 17:18

il faudrais peut-etre le laisser reflechir un peu sinon il ne progressera pas...

par _activmik » 04 août 2008, 17:14

il y a bin plus simple.

Code : Tout sélectionner

SELECT id_annonce,compteur, nom_utilisateur FROM utilisateur, annonce WHERE compteur=compteur>3 ORDER BY compteur ASC

Oui, sauf que la colonne compteur est définie par le SELECT COUNT (DISTINCT xxx) de la requête que je lui ai donné.


Donc Astorn, pour le traitement php tu peux faire :
$sql = 'SELECT COUNT(DISTINCT id_annonce) AS compteur, nom_utilisateur FROM utilisateur, annonce GROUP BY nom_utilisateur';
$req = mysql_query($sql);

while ($row = mysql_fetch_array($req)) 
{
   //tu fais un tri sur ceux qui ont plus de 3 annonces
   if($row['compteur'] > 3)
   {
   //tu places ici ta fonction d'envoi de mail
   }	
}

par hakazizi » 04 août 2008, 17:05

il y a bin plus simple.

Code : Tout sélectionner

SELECT id_annonce,compteur, nom_utilisateur FROM utilisateur, annonce WHERE compteur=compteur>3 ORDER BY compteur ASC
ensuite tu n'as plus qu'as traiter les reponses.


je ne suis pas sur de l'orientation de>

par astorn » 04 août 2008, 17:03

Tout d'abord merci de cette reponse rapide

En fait le but de ma requete et de recupere le nom des personnes qui ont 3 annonces pour leur envoyer un mail.

donc je souhaite faire du traitement php

Re: selection multiple

par _activmik » 04 août 2008, 16:56

Salut,


Tu peux faire en SQL :

Code : Tout sélectionner

SELECT COUNT(DISTINCT id_annonce) AS compteur, nom_utilisateur FROM utilisateur, annonce GROUP BY nom_utilisateur;
Ca te donnera le nombre d'annonce par utilisateur.
Ensuite tu n'as plus qu'à "sélectionner les utilisateur qui ont par exemple 3 annonces ou +" grâce à la colonne "compteur". (je te cite parceque je n'ai pas compris si tu voulais faire le traitement en sql ou php)...

selection multiple

par astorn » 04 août 2008, 16:42

Bonjour

J'ai une table contenant des annonces correspondant a un utilisateur.

J'aimerai savoir la condition de ma requête sql pour sélectionner que les utilisateur qui ont par exemple 3 annonces ou +

J'avoue que je sèche un peu sur la syntaxe


Merci d'avance