ik probeer een tabel uit te lezen met een bepaalde selectie, maar ik heb geen idee hoe ik dit precies moet doen. Het gaat om het volgende.

Ik heb een tabel met de volgende velden:

woningnummer: produkt: aantal opties: omzet: klantnaam: maand:
17A huur 2 200,00 piet 10
17A energie 1 35,00 piet 10
19C huur 1 150,00 kees 10
19C energie 1 45,00 kees 10
19C gas 1 10,00 kees 10
20B huur 3 700,00 henk 10
20B energie 1 35,00 henk 10
etc.

Wat de bedoeling is dat per woningnummer/per klantnaam een subtoaal gemaakt wordt van de omzet.
Dus zoiets:

woningnummer: produkt: aantal opties: omzet: klantnaam: maand:
17A huur 2 200,00 piet 10
17A energie 1 35,00 piet 10
subtotaal: 235,00
19C huur 1 150,00 kees 10
19C energie 1 45,00 kees 10
19C gas 1 10,00 kees 10
subtotaal: 205,00
20B huur 3 700,00 henk 10
20B energie 1 35,00 henk 10
subtotaal: 735,00
etc.

Is dit mogelijk? Kan iemand mij hiermee helpen?

Hieronder het scriptje zoals ik het nu uitlees.


<?PHP
include('system/config.php');

echo '
	<table align="center" cellpadding="0" cellspacing="0" border="1">
	  <tr class="blauw">
	    <td width="70">Woningnr:</td>
		<td width="200">Produkt:</td>
		<td width="50">Opties:</td>
		<td width="75">Omzet:</td>
		<td width="130">Klantnaam:</td>
		<td width="50">Maand:</td>
	  </tr>';

$sSql = "SELECT * FROM menukaart WHERE klantnaam = 'Nelis' ";
$result = mysql_query( $sSql ) or die ( "Mislukt".$sSql );

while( $rows = mysql_fetch_assoc( $result ) ){
	echo '
		<tr>
			<td>'.$rows['woningnummer'].'</td>
			<td>'.$rows['produkt'].'</td>
			<td>'.$rows['aantal'].'</td>
			<td align="right">&#8364; '.str_replace(".", ",", $rows['omzet']).'</td>
			<td>'.$rows['klantnaam'].'</td>
			<td>'.$rows['maand'].'</td>
		</tr>';
	}

$sql = "SELECT 
			woningnummer, 
			produkt, 
			aantal,
			SUM(omzet) AS kosten, 
			klantnaam, 
			maand 
		FROM menukaart 
		WHERE klantnaam = 'Nelis'
		GROUP BY woningnummer";
$rResult = mysql_query( $sql ) or die ( "Mislukt".$sql );
	
if( mysql_num_rows( $rResult )) {

	$rij = mysql_fetch_assoc( $rResult );
	
	echo '
		<tr>
		  <td>'.$rij['woningnummer'].'</td>
		  <td>&nbsp;</td>
		  <td align="right">Subtotaal:</td>
		  <td align="right">&#8364; '.str_replace(".", ",", $rij['kosten']).'</td>
		  <td>'.$rij['klantnaam'].'</td>
		  <td>&nbsp;</td>
		</tr>';
	}


echo '</table>';
?>
SELECT SUM(omzet) FROM menukaart WHERE klantnaam = 'Nelis';
Wat ik bedoel is een combinatie dus van die 2 query's.
Ik krijg het wel apart voor elkaar om de gehele lijst te laten zien en dan apart de totalen zoals:

woningnummer: produkt: aantal opties: omzet: klantnaam: maand:
17A huur 2 200,00 piet 10
17A energie 1 35,00 piet 10
19C huur 1 150,00 kees 10
19C energie 1 45,00 kees 10
etc.

En een aparte lijst met de totalen:
woningnummer: produkt: aantal opties: omzet: klantnaam: maand:
17A subtotaal: 235,00 piet 10
19C subtotaal: 195,00 kees 10
etc.

Maar nu wil ik het dus gecombineerd hebben:
woningnummer: produkt: aantal opties: omzet: klantnaam: maand:
17A huur 2 200,00 piet 10
17A energie 1 35,00 piet 10
17A subtotaal: 235,00 piet 10
19C huur 1 150,00 kees 10
19C energie 1 45,00 kees 10
19C subtotaal: 195,00 kees 10
etc.

Kan dit?

Wellicht handig om te laten zien wat ik nu heb.
http://testen.frankodesign.nl/exceldb/overzicht.php
Dus 2 aparte tabellen met gegevens.

Maar wat de bedoeling is is dat onder woningnummer 17A een totaal komt en dan onder woningnummer 19C een totaal komt etc.

$sql = "SELECT 
            woningnummer, 
            produkt, 
            aantal,
            omzet,
            SUM(omzet) AS kosten, 
            klantnaam, 
            maand 
        FROM menukaart


Ik weet niet of het werkt maar je kunt het proberen.
Nee had ik zelf ook aan gedacht, maar maakt geen verschil helaas.

Reageren