Insert into
er zijn 10 query's en ik wil er nog een toevoegen maar het lukte me niet.
Deze query wil ik nog erbij toevoegen, hij stuurt alleen geen gegevens naar de tabel.
Zou iemand dit voor mij kunnen doen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$query = "INSERT INTO
leden
(voornaam,
adres,
postcode,
plaats,
email,
signupdate)
VALUES
('".$naam."',
'".$adres."',
'".$postcode."',
'".$plaats."',
'".$email."',
'".date("Y-m-d H:i:s")."')";
$result = mysql_query($query8) or die (mysql_error());
$bestellingsID = mysql_insert_id();
leden
(voornaam,
adres,
postcode,
plaats,
email,
signupdate)
VALUES
('".$naam."',
'".$adres."',
'".$postcode."',
'".$plaats."',
'".$email."',
'".date("Y-m-d H:i:s")."')";
$result = mysql_query($query8) or die (mysql_error());
$bestellingsID = mysql_insert_id();
En hier de code
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?php
include('config.php');
if ($_SERVER['REQUEST_METHOD'] == "POST") //als er op submit gedrukt is
{
extract($_POST); //alle velden ophalen
$query1 = "INSERT INTO
bestellingen
(naam,
adres,
postcode,
plaats,
email,
datum)
VALUES
('".$naam."',
'".$adres."',
'".$postcode."',
'".$plaats."',
'".$email."',
'".date("Y-m-d H:i:s")."')";
$result1 = mysql_query($query1) or die (mysql_error());
$bestellingsID = mysql_insert_id();
$query2 = "SELECT * FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$result2 = mysql_query($query2) or die (mysql_error());
while ($row2 = mysql_fetch_array($result2))
{
$query3 = "INSERT INTO
besteldeproducten
(bestellingsID,
productID,
aantal)
VALUES
('".$bestellingsID."',
'".$row2['productID']."',
'".$row2['aantal']."')";
$result3 = mysql_query($query3) or die (mysql_error());
}
//e-mail bericht opstellen
$bericht = "Geachte ".$naam.",\n\n";
$bericht .= "U heeft uw bestelling succesvol geplaatst\n\n";
$bericht .= "Binnen enkele uren zult u een factuur ontvangen\n";
$bericht .= "Uw gegevens en bestelling staan hieronder\n";
$bericht .= $naam."\n";
$bericht .= $adres."\n";
$bericht .= $postcode." ".$plaats."\n\n";
$query4 = "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
$result4 = mysql_query($query4) or die (mysql_error());
$row4 = mysql_fetch_array($result4);
$query5 = "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
$result5 = mysql_query($query5) or die (mysql_error());
while ($row5 = mysql_fetch_array($result5))
{
$query6 = "SELECT naam,prijs FROM producten WHERE id=".$row5['productID'];
$result6 = mysql_query($query6) or die (mysql_error());
$row6 = mysql_fetch_array($result6);
$bericht .= "Product: ".$row6['naam']."\n";
$bericht .= "Prijs: ".number_format($row6['prijs'],2,',','.')."\n";
$bericht .= "Aantal: ".$row5['aantal']."\n";
$bericht .= "Subtotaal: ".number_format($row6['prijs'] * $row5['aantal'],2,',','.')."\n\n";
$totaalprijs += $row6['prijs'] * $row5['aantal'];
}
$bericht .= "Totaal: € ".number_format($totaalprijs,2,',','.');
//e-mail bericht opstellen
$bericht2 = "Er is een bestelling geplaatst door de klant ".$naam.",\n\n";
$bericht2 .= "Hieronder ziet u een overzicht van zijn bestelling\n\n";
$bericht2 .= "Het adres van deze klant is\n";
$bericht2 .= $naam."\n";
$bericht2 .= $adres."\n";
$bericht2 .= $postcode." ".$plaats."\n\n";
$query7 = "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
$result7 = mysql_query($query7) or die (mysql_error());
$row7 = mysql_fetch_array($result7);
$query9 = "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
$result9 = mysql_query($query9) or die (mysql_error());
while ($row8 = mysql_fetch_array($result8))
{
$query10 = "SELECT naam,prijs FROM producten WHERE id=".$row10['productID'];
$result10 = mysql_query($query10) or die (mysql_error());
$row10 = mysql_fetch_array($result10);
$bericht2 .= "Product: ".$row10['naam']."\n";
$bericht2 .= "Prijs: ".number_format($row9['prijs'],2,',','.')."\n";
$bericht2 .= "Aantal: ".$row9['aantal']."\n";
$bericht2 .= "Subtotaal: ".number_format($row10['prijs'] * $row9['aantal'],2,',','.')."\n\n";
$totaalprijs2 += $row9['prijs'] * $row8['aantal'];
}
$bericht2 .= "Totaal: € ".number_format($totaalprijs2,2,',','.');
$headers = "FROM: ".$from;
//e-mail versturen
mail($email,'Uw Bestelling',$bericht,$headers);
mail($emailbestellingen,'Bestelling',$bericht2,$headers);
//winkelwagen leegmaken
$query10 = "DELETE FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$result10 = mysql_query($query10) or die (mysql_error());
echo('Uw bestelling is geplaatst, u heeft hiervan een bevesting per e-mail ontvangen');
}
else //zolang dat nog niet gedaan is, formulier weergeven
{
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<table>
<tr>
<td>Naam</td>
<td><input type="text" name="naam" id="naam"></td>
</tr>
<tr>
<td>E-mail</td>
<td><input type="text" name="email" id="email"></td>
</tr>
<tr>
<td>Adres</td>
<td><input type="text" name="adres" id="adres"></td>
</tr>
<tr>
<td>Postcode</td>
<td><input type="text" name="postcode" id="postcode"></td>
</tr>
<tr>
<td>Plaats</td>
<td><input type="text" name="plaats" id="plaats"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" id="submit" value="Bestellen"></td>
</tr>
</table>
</form>
<?php
}
?>
include('config.php');
if ($_SERVER['REQUEST_METHOD'] == "POST") //als er op submit gedrukt is
{
extract($_POST); //alle velden ophalen
$query1 = "INSERT INTO
bestellingen
(naam,
adres,
postcode,
plaats,
email,
datum)
VALUES
('".$naam."',
'".$adres."',
'".$postcode."',
'".$plaats."',
'".$email."',
'".date("Y-m-d H:i:s")."')";
$result1 = mysql_query($query1) or die (mysql_error());
$bestellingsID = mysql_insert_id();
$query2 = "SELECT * FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$result2 = mysql_query($query2) or die (mysql_error());
while ($row2 = mysql_fetch_array($result2))
{
$query3 = "INSERT INTO
besteldeproducten
(bestellingsID,
productID,
aantal)
VALUES
('".$bestellingsID."',
'".$row2['productID']."',
'".$row2['aantal']."')";
$result3 = mysql_query($query3) or die (mysql_error());
}
//e-mail bericht opstellen
$bericht = "Geachte ".$naam.",\n\n";
$bericht .= "U heeft uw bestelling succesvol geplaatst\n\n";
$bericht .= "Binnen enkele uren zult u een factuur ontvangen\n";
$bericht .= "Uw gegevens en bestelling staan hieronder\n";
$bericht .= $naam."\n";
$bericht .= $adres."\n";
$bericht .= $postcode." ".$plaats."\n\n";
$query4 = "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
$result4 = mysql_query($query4) or die (mysql_error());
$row4 = mysql_fetch_array($result4);
$query5 = "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
$result5 = mysql_query($query5) or die (mysql_error());
while ($row5 = mysql_fetch_array($result5))
{
$query6 = "SELECT naam,prijs FROM producten WHERE id=".$row5['productID'];
$result6 = mysql_query($query6) or die (mysql_error());
$row6 = mysql_fetch_array($result6);
$bericht .= "Product: ".$row6['naam']."\n";
$bericht .= "Prijs: ".number_format($row6['prijs'],2,',','.')."\n";
$bericht .= "Aantal: ".$row5['aantal']."\n";
$bericht .= "Subtotaal: ".number_format($row6['prijs'] * $row5['aantal'],2,',','.')."\n\n";
$totaalprijs += $row6['prijs'] * $row5['aantal'];
}
$bericht .= "Totaal: € ".number_format($totaalprijs,2,',','.');
//e-mail bericht opstellen
$bericht2 = "Er is een bestelling geplaatst door de klant ".$naam.",\n\n";
$bericht2 .= "Hieronder ziet u een overzicht van zijn bestelling\n\n";
$bericht2 .= "Het adres van deze klant is\n";
$bericht2 .= $naam."\n";
$bericht2 .= $adres."\n";
$bericht2 .= $postcode." ".$plaats."\n\n";
$query7 = "SELECT * FROM bestellingen WHERE id=".$bestellingsID;
$result7 = mysql_query($query7) or die (mysql_error());
$row7 = mysql_fetch_array($result7);
$query9 = "SELECT productID,aantal FROM besteldeproducten WHERE bestellingsID = ".$bestellingsID;
$result9 = mysql_query($query9) or die (mysql_error());
while ($row8 = mysql_fetch_array($result8))
{
$query10 = "SELECT naam,prijs FROM producten WHERE id=".$row10['productID'];
$result10 = mysql_query($query10) or die (mysql_error());
$row10 = mysql_fetch_array($result10);
$bericht2 .= "Product: ".$row10['naam']."\n";
$bericht2 .= "Prijs: ".number_format($row9['prijs'],2,',','.')."\n";
$bericht2 .= "Aantal: ".$row9['aantal']."\n";
$bericht2 .= "Subtotaal: ".number_format($row10['prijs'] * $row9['aantal'],2,',','.')."\n\n";
$totaalprijs2 += $row9['prijs'] * $row8['aantal'];
}
$bericht2 .= "Totaal: € ".number_format($totaalprijs2,2,',','.');
$headers = "FROM: ".$from;
//e-mail versturen
mail($email,'Uw Bestelling',$bericht,$headers);
mail($emailbestellingen,'Bestelling',$bericht2,$headers);
//winkelwagen leegmaken
$query10 = "DELETE FROM winkelwagen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'";
$result10 = mysql_query($query10) or die (mysql_error());
echo('Uw bestelling is geplaatst, u heeft hiervan een bevesting per e-mail ontvangen');
}
else //zolang dat nog niet gedaan is, formulier weergeven
{
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
<table>
<tr>
<td>Naam</td>
<td><input type="text" name="naam" id="naam"></td>
</tr>
<tr>
<td>E-mail</td>
<td><input type="text" name="email" id="email"></td>
</tr>
<tr>
<td>Adres</td>
<td><input type="text" name="adres" id="adres"></td>
</tr>
<tr>
<td>Postcode</td>
<td><input type="text" name="postcode" id="postcode"></td>
</tr>
<tr>
<td>Plaats</td>
<td><input type="text" name="plaats" id="plaats"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" id="submit" value="Bestellen"></td>
</tr>
</table>
</form>
<?php
}
?>
Zelfde "tip" daarom als in http://www.phphulp.nl/php/forum/topic/contact-formulier-intregeren/98272/
Plaats een vacature (, als je zelf niet wilt verdiepen in deze materie).
Denk dat het overigens efficiënter kan. Als ik het zo snel goed zie voer je sommige querys 2x uit. Waarom?
Je weet dat mysql zijn langste tijd heeft gehad? Gebruik mysqli of pdo.
Gewijzigd op 18/07/2015 16:12:09 door Obelix Idefix
Je query staat in $query (regel 1), maar je gebruikt $query8 (regel 16)?
Noem het gewoon bij wat het doet.
$result_userdetails = mysqli_query(.....);
$userdetails = mysqli_fetch_assoc(....);
Verder kan je op lijn 119 weglaten. Ten eerste omdat de uitvoer standaard al op dezelfde pagina wordt verwacht, en ten tweede is deze code zinloos omdat je niks echo'd.
En de foutafhandeling kan overigens ook een stuk netter met if-else.
Gewijzigd op 18/07/2015 20:29:12 door - Ariën -
Je zet je sql in $query , en je probeert $query8 uit te voeren. niet zo gek dat het niet werkt