Beste allen,
Ik heb een tabel klant, een tabel producten en een bestelregel

Als een klant iets bestelt, worden de gegevens in twee tabellen opgeslagen. Als een klant meer dan een product bestelt, dan wordt er in de tabel bestelregel, twee producten met een hetzelfde klant nummer opgeslagen.

Nu wil dat alle producten van de klant op een factuur komt te staan. Probleem is dat ik nu alleen en product kan selecteren. Kan iemand mij hierbij helpen.

Ik wil dus een overzicht van:

Klant gegevens
alle bestelde artikelen
de totale prijs en zo...

Ik weet dat ik iets met GROUP BY moet doen, maar weet niet precies wat...

Dank
Je query aanpassen met group by en having om ook het totaal aantal producten dat de klant heeft besteld opgeteld in een regel op de factuur te zetten.
Want een handige titel, help help

doe es veranderen
Pepijn schreef op 04.02.2010 15:15
Want een handige titel, help help

doe es veranderen

Nu moet jij je bericht veranderen!! :p
<?php

$LinkID = mysql_connect("$hostname", "$username", "$password") or die("MySQL Connectie mislukt");
mysql_select_db("$dbname") or die("verkeerde database");
$query = "
SELECT artnr, aantal, prijs, naam SUM(artnr) AS artnr
FROM bestelregel
GROUP BY email HAVING SUM(artnr)";

$resultaat = mysql_query($query, $LinkID);
$column_count = mysql_num_fields($resultaat) or die (mysql_error()."<br>Couldn't execute query: $SQLquery");
while ($row = mysql_fetch_row($resultaat)){

echo"Bestelde artikelen"; echo"$row[5]";
echo"
Artikel
$row[1]<br><br>

Aantal<br>
$row[2]<br><br>

Prijs<br>
$row[4]<br><br><br>

Totaal
$row[2] * $row[4]";

}
?>

Mijn artikelnummers zijn niet altijd numeriek, ik weet niet of dat wat uitmaakt. maar ik krijg een error..
En welke error is dat?
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SUM(artnr) AS artnr FROM bestelregel GROUP BY email HAVING SUM(artnr' at line 1
Couldn't execute query:
Hier mist een komma:
naam SUM(artnr) AS artnr
SanThe
Dank het is gelukt inderdaad. Volgende probleem is, Ik kan artikelen niet onder elkaar krijgen. Bijvoorbeeld.

Artikelnummer - aantal - prijs
P78788 - 2 - 50.95
Y77887 - 2 - 79.95

Zo wil ik dat hebben, nu wordt er artikel alles weer herhaald:

Artikelnummer - aantal - prijs
P78788 - 2 - 50.95

Artikelnummer - aantal - prijs
Y77887 - 2 - 79.95

thanks

Dan moet je die benamingen buiten je while lus zetten..

Alles in de while lus wordt telkens afgedrukt..
Ja weet ik, alleen ik heb tabel zeg maar en een deel van dat tabel dat binnen de while zit moet herhaald worden. Er wordt maar een product in de tabel gezet en de tweede buiten de tabel: ik ben dit nu aan het proberen, maar wil nog niet lukken. :D

<?php

$resultaat = mysql_query($query, $LinkID);
$column_count = mysql_num_fields($resultaat) or die (mysql_error()."<br>Couldn't execute query: $SQLquery");

$counter=1;

echo"
<table width=\"634\" height=\"121\" border=\"1\">
<tr>
<td height=\"33\" colspan=\"4\">Bestelling per klant </td>
</tr>
<tr>
<td valign=\"top\">Artikelnummer</td>
<td valign=\"top\">Aantal</td>
<td valign=\"top\">Prijs</td>
<td valign=\"top\">Totaal/artikel</td>
</tr>
<tr>";
while ($row = mysql_fetch_row($resultaat))
{
echo"
<td>$row[0]</td>
<td>$row[1]</td>
<td>$row[2]</td>
<td>$prijs</td>";

if($counter%4==0)
{
echo"<td>";
}
$counter++;
echo"</td></TR></TABLE>\n";
}
?>

Reageren