Het resultaat toont mij 1 record te weinig
Op regel 53 staat nog een mysqli_ functie. Die dien je te veranderen naar mysql_
(en eigenlijk zou je alles naar mysqli_ of PDO moeten veranderen maar bewaar dat nu maar even voor later).
Gewijzigd op 30/09/2019 20:54:21 door Frank Nietbelangrijk
Gewijzigd op 30/09/2019 21:42:08 door - Ariën -
Gewijzigd op 02/10/2019 09:56:32 door Leon Low
Wat voor producten betreft dit precies, want je meet letterlijk met twee maten: S, M en L en 38, 40 en 44. Is dit enerzijds (dames?)mode en anderzijds schoenen ofzo? Dit kun je niet echt met goed fatsoen op één hoop gooien? En wat als er dadelijk een maat (bijvoorbeels XS of XL, of 36) bij komt, dan komt het aantal kolommen met de andere maat mogelijk niet meer overeen?
Dan kan ik mij nog het volgende voorstellen: een concreet, fysiek product is de configuratie van een aantal kenmerken. Neem een t-shirt. Deze kan bijvoorbeeld een bepaalde halsvorm hebben, een bepaalde kleur, mogelijk met of zonder lange mouwen, en een maat et cetera. De unieke combinatie van al deze kenmerken vormt tezamen een concreet product, bijvoorbeeld een roze longsleeve maat XYZ met een v-hals.
Verschillende producten kunnen verschillende kenmerken met verschillende (specifieke) waarden bevatten. Het is dan niet bepaald vanzelfsprekend dat je die allemaal in eenzelfde tabel zet. Temeer als dit compleet verschillende categorieën (bijvoorbeeld "schoenen" of "ondergoed") betreft.
Ik zou als je een soort van voorraadbeheer wilt bijhouden eigenlijk meerdere tabellen (zowel in de database alsook de HTML :)) verwachten, waarbij je het een en ander rubriceert. En als de inventaris niet zo groot is, dan zou ik er misschien een platte lijst van maken, maar dan enkel met een titel (waar verder de kenmerken min of meer uit af te leiden zijn of op een andere manier een unieke productcode hebben ofzo) en een aantal.
Dit kun je in je databaseopzet ook een stuk beter uit de verf laten komen door de structuur verder uit te bouwen, waarbij deze eigenschappen beter tot hun recht komen. Deze is op dit moment waarschijnlijk verre van uitgenormaliseerd.
Gewijzigd op 30/09/2019 23:38:36 door Thomas van den Heuvel
Code (php)
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<?php
include "storescripts/locadatabase.php";
mysqli_select_db( $locadatabase, $database_locadatabase );
$qryRaadpleeg = "SELECT * FROM merken INNER JOIN (artikelen INNER JOIN voorraad ON artikelen.ArtikelCode = voorraad.Artikelcode) ON merken.MERKCODE = voorraad.Merknr" ;
$resultRaadpleeg= mysqli_query( $locadatabase, $qryRaadpleeg )or die( mysqli_error( $locadatabase ) );
$Aantal = mysqli_num_rows( $resultRaadpleeg );
$qryMaten = "SELECT * From voorraad_maten ORDER BY Matenbalk" ;
$resultMaten=mysqli_query( $locadatabase, $qryMaten )or die( mysqli_error( $locadatabase ) );
if ( $Aantal > 0 ) {
echo "<table border='solid 1px' width=90% align='center'>";
$tabel .= "<thead>";
$tabel .= "<tr>";
$tabel .= "<th>ID</th>";
$tabel .= "<th>MERK</th>";
$tabel .= "<th>ARTIKELNAAM</th>";
$tabel .= "<th>KLEUR</th>";
$tabel .= "<th>AP</th>";
$tabel .= "<th>PRIJS 1</th>";
$tabel .= "<th>PRIJS 2</th>";
$tabel .= "<th>ARTIKEL</th>";
$tabel .= "<th>AFDELING</th>";
$tabel .= "<th>DATUM BIJVOEGING</th>";
$tabel .= "<th>OMSCHRIJVING</th>";
$tabel .= "</tr>";
$tabel .= "</thead>";
while ( $row = mysqli_fetch_array( $resultRaadpleeg ) ) {
if ( $row[ 'Afdeling' ] == 1 ) {
$afdeling = "Dames";
} elseif ( $row[ 'Afdeling' ] == 2 ) {
$afdeling = "Trend";
} elseif ( $row[ 'Afdeling' ] == 3 ) {
$afdeling = "Heren";
} elseif ( $row[ 'Afdeling' ] == 4 ) {
$afdeling = "Schoenen";
} else {
$afdeling = "Ander";
}
$rowMaten = mysqli_fetch_array( $resultMaten );
$tabel .= "<tr>";
$tabel .= "<td align='center'>" . $row[ 'ID' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Merkomschrijving' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Artikelnaam' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Kleur' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'AP' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'VP' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'VP2' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Omschrijving' ] . "</td>";
$tabel .= "<td align='center'>" . $afdeling . "</td>";
$tabel .= "<td align='center'>" . date( "d-m-Y", strtotime( $row[ 'datum_invoeging' ] ) ) . "</td>";
$tabel .= "<td align='center'>" . $row[ 'omschrijving' ] . "</td>";
do { // start een do-while lus voor iedere balk -->
$currentBalk = $rowMaten[ 'Matenbalk' ]; // onthoud in welke balk we bezig zijn
do { // start een do-while lus voor iedere kledingmaat
$tabel .= '<td>' . $rowMaten[ 'Maat' ] . '</td>';
$tabel .= '<td>[' . $rowMaten[ 'Aantal' ] . ']</td>';
$rowMaten = mysqli_fetch_array( $qryMaten ); // haal de volgende rij op!
} while ( $rowMaten && $currentBalk == $rowMaten[ 'Matenbalk' ] ); // zolang we nog een nieuwe rij konden ophalen EN de nieuwe rij bij de huidige balk hoort.
} while ( $rowMaten ); //zolang we nog een nieuwe rij konden ophalen
}
$tabel .= "</table>";
}
mysqli_close( $locadatabase );
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Webshop BackOffice Voorraad</title>
<style>
td {
color: black;
}
thead {
color: black;
}
</style>
</head>
<body>
<?php include_once("../Hoofding.html") ?>
<div align="center">
<p align="right" style="padding-right: 5%;"><?php echo date('d-m-Y H:m'); ?></p>
<br />
<div align="center">
<?php
echo $tabel;
?>
</div>
</body>
</html>
include "storescripts/locadatabase.php";
mysqli_select_db( $locadatabase, $database_locadatabase );
$qryRaadpleeg = "SELECT * FROM merken INNER JOIN (artikelen INNER JOIN voorraad ON artikelen.ArtikelCode = voorraad.Artikelcode) ON merken.MERKCODE = voorraad.Merknr" ;
$resultRaadpleeg= mysqli_query( $locadatabase, $qryRaadpleeg )or die( mysqli_error( $locadatabase ) );
$Aantal = mysqli_num_rows( $resultRaadpleeg );
$qryMaten = "SELECT * From voorraad_maten ORDER BY Matenbalk" ;
$resultMaten=mysqli_query( $locadatabase, $qryMaten )or die( mysqli_error( $locadatabase ) );
if ( $Aantal > 0 ) {
echo "<table border='solid 1px' width=90% align='center'>";
$tabel .= "<thead>";
$tabel .= "<tr>";
$tabel .= "<th>ID</th>";
$tabel .= "<th>MERK</th>";
$tabel .= "<th>ARTIKELNAAM</th>";
$tabel .= "<th>KLEUR</th>";
$tabel .= "<th>AP</th>";
$tabel .= "<th>PRIJS 1</th>";
$tabel .= "<th>PRIJS 2</th>";
$tabel .= "<th>ARTIKEL</th>";
$tabel .= "<th>AFDELING</th>";
$tabel .= "<th>DATUM BIJVOEGING</th>";
$tabel .= "<th>OMSCHRIJVING</th>";
$tabel .= "</tr>";
$tabel .= "</thead>";
while ( $row = mysqli_fetch_array( $resultRaadpleeg ) ) {
if ( $row[ 'Afdeling' ] == 1 ) {
$afdeling = "Dames";
} elseif ( $row[ 'Afdeling' ] == 2 ) {
$afdeling = "Trend";
} elseif ( $row[ 'Afdeling' ] == 3 ) {
$afdeling = "Heren";
} elseif ( $row[ 'Afdeling' ] == 4 ) {
$afdeling = "Schoenen";
} else {
$afdeling = "Ander";
}
$rowMaten = mysqli_fetch_array( $resultMaten );
$tabel .= "<tr>";
$tabel .= "<td align='center'>" . $row[ 'ID' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Merkomschrijving' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Artikelnaam' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Kleur' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'AP' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'VP' ] . "</td>";
$tabel .= "<td align='right' style='padding-right:5px'>" . $row[ 'VP2' ] . "</td>";
$tabel .= "<td align='center'>" . $row[ 'Omschrijving' ] . "</td>";
$tabel .= "<td align='center'>" . $afdeling . "</td>";
$tabel .= "<td align='center'>" . date( "d-m-Y", strtotime( $row[ 'datum_invoeging' ] ) ) . "</td>";
$tabel .= "<td align='center'>" . $row[ 'omschrijving' ] . "</td>";
do { // start een do-while lus voor iedere balk -->
$currentBalk = $rowMaten[ 'Matenbalk' ]; // onthoud in welke balk we bezig zijn
do { // start een do-while lus voor iedere kledingmaat
$tabel .= '<td>' . $rowMaten[ 'Maat' ] . '</td>';
$tabel .= '<td>[' . $rowMaten[ 'Aantal' ] . ']</td>';
$rowMaten = mysqli_fetch_array( $qryMaten ); // haal de volgende rij op!
} while ( $rowMaten && $currentBalk == $rowMaten[ 'Matenbalk' ] ); // zolang we nog een nieuwe rij konden ophalen EN de nieuwe rij bij de huidige balk hoort.
} while ( $rowMaten ); //zolang we nog een nieuwe rij konden ophalen
}
$tabel .= "</table>";
}
mysqli_close( $locadatabase );
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Webshop BackOffice Voorraad</title>
<style>
td {
color: black;
}
thead {
color: black;
}
</style>
</head>
<body>
<?php include_once("../Hoofding.html") ?>
<div align="center">
<p align="right" style="padding-right: 5%;"><?php echo date('d-m-Y H:m'); ?></p>
<br />
<div align="center">
<?php
echo $tabel;
?>
</div>
</body>
</html>
Toevoeging op 30/09/2019 23:59:44:
Gewijzigd op 01/10/2019 22:33:12 door Leon Low