IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Requête avec GROUP BY [MySQL]


Sujet :

PHP & Base de données

  1. #41
    Membre confirmé
    Femme Profil pro
    piano
    Inscrit en
    Décembre 2011
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : piano
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 131
    Par défaut
    Merci de revenir m'aider

    J'ai essayé ton code et voici les messages d'erreurs

    Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /home/httpd/vhosts/blabla.com/httpdocs/pages/osg/test3.php on line 35

    Notice: Undefined variable: data in /home/httpd/vhosts/blabla.com/httpdocs/pages/osg/test3.php on line 42

    Warning: Invalid argument supplied for foreach() in /home/httpd/vhosts/blabla.com/httpdocs/pages/osg/test3.php on line 42

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    <?php 
    error_reporting(E_ALL); 
    ini_set('display_errors', 1);
    include("include/variables.inc.php");
    $liendb  =  mysql_connect($bddserver,  $bddlogin,  $bddpassword);
    mysql_select_db  ($bdd);
    mysql_set_charset( 'utf8' );
    //include('include/var.inc.php');
    $pays = ( PHP_OS == "Windows" ) ? 'fra' : 'fr_FR';
    setlocale ( LC_TIME, $pays ) ;
     
    //$id = $_POST['id'];
     
    $result = mysql_query("SELECT
    		Personnes.IDPersonne,
    		Personnes.Nom_Personne,
    		Personnes.Prenom_Personne,
    		Concert.IDconcert,
    		Concert.titreconcert,
    		Concert.lieu,
    		DATE_FORMAT ( Concert.dateconcert, '%d/%m/%Y' ) AS datecon,
    		Prix.Prix,
    		SUM(Prix.Prix) AS prixbillets,
    		COUNT(Prix.Prix) AS nbillets
    		FROM Tab_NumPlace
    		INNER JOIN Personnes ON Tab_NumPlace.IDPersonne = Personnes.IDPersonne
    		INNER JOIN Instruments ON Personnes.IDInstruments = Instruments.IDInstruments
    		INNER JOIN Concert ON Tab_NumPlace.IDconcert = Concert.IDconcert 
    		INNER JOIN Zones ON Tab_NumPlace.IDZone = Zones.IDZone 
    		INNER JOIN Prix ON Zones.IDPrix = Prix.IDPrix
     		WHERE Concert.IDconcert  = 1
    		GROUP BY IDconcert, IDPersonne, IDPrix
    		ORDER BY IDConcert, IDPersonne, IDPrix");
     
    while ($row = mysql_fetch_assoc($result)) {
    	$data[$row['IDconcert']][$row['IDPersonne']][] = $row;
    	@$data_prix[$row['IDconcert']][$row['IDPersonne']] += $row['prixbillets'];
    	if (!isset($data_personne[$row['IDPersonne']])) { $data_personne[$row['IDPersonne']] = $row['Nom_Personne'] . ' ' . $row['Prenom_Personne']; }
    	if (!isset($data_concert[$row['IDconcert']])) { $data_concert[$row['IDconcert']] = $row['titreconcert'] . ' ' . $row['lieu']; }
    }
     
    foreach ($data as $IDconcert=>$data_personnes) {
    	foreach ($data_personnes as $IDPersonne=>$data_billets) {
    		echo $data_concert[$IDconcert] . ' : ' . $data_personne[$IDPersonne] . ' : ' . $data_prix[$IDconcert][$IDPersonne] . '€ <br/>';
    		foreach ($data_billets as $billets) {
    			echo $billets['nbillets'] . ' à ' . $billets['Prix'] . '€ = ' . $billets['prixbillets'] . '€ <br/>';
    		}
    	}
    }?>
    Ce doit être possible d'y arriver, mais comment ? là est toute la question

    Je te remercie chaleureusement pour ta patience et ton aide

  2. #42
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    ajoute
    après la requête.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #43
    Membre confirmé
    Femme Profil pro
    piano
    Inscrit en
    Décembre 2011
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : piano
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 131
    Par défaut


    Tu est tout simplement génial

    Ca marche, mais il y avait encore juste une petite erreur que j'ai trouvée grâce au
    echo mysql_error();
    il fallait rajouter "Prix.IDPrix" dans le SELECT

    Maintenant " y'a'plus'qu'à " adapter tout ça avec FPDF pour pouvoir imprimer !!! Ce n'est pas gagné d'avance et je sens que je vais avoir encore des heures de

    Je te remercie très chaleureusement pour ton aide et surtout ta patience

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Syntaxe d'une requête avec GROUP
    Par gvdmoort dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/10/2006, 16h10
  2. Requête avec Group by sur Oracle 8i
    Par madina dans le forum Oracle
    Réponses: 14
    Dernier message: 16/06/2006, 13h41
  3. requête avec group by...
    Par JerBi dans le forum Langage SQL
    Réponses: 3
    Dernier message: 29/03/2006, 04h17
  4. Problème requête avec group by et distinct
    Par tomca dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/07/2005, 17h10
  5. requête avec group by
    Par Staron dans le forum Langage SQL
    Réponses: 4
    Dernier message: 29/11/2004, 17h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo