insert into twee tabellen
Iemand een idee waarom de tweede insert niet wordt uitgevoerd?
Dit is mijn 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
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
<?php
include "verbinden.php";
function GetVar($name)
{
if (isset($_POST[$name])) // raar dit zou imho de variabele woonplaats moeten zijn. Als ik dit wijzig in woonplaats de word de tabel plaatsen niet bijgewerkt. krijgt een lege waarde???
return $_POST[$name];
if (isset($_POST[$naam]))
return $_POST[$naam];
if (isset($_POST[$tav]))
return $_POST[$tav];
if (isset($_POST[$straat]))
return $_POST[$straat];
if (isset($_POST[$postcode]))
return $_POST[$postcode];
if (isset($_POST[$telefoon]))
return $_POST[$telefoon];
if (isset($_POST[$website]))
return $_POST[$website];
if (isset($_POST[$evenement]))
return $_POST[$evenement];
if (isset($_POST[$bdatum]))
return $_POST[$bdatum];
if (isset($_POST[$edatum]))
return $_POST[$edatum];
}
// controle of de gegevens overkomen kan later weg
$woonplaats = GetVar("woonplaats");
echo $woonplaats."<br>";
$naam = GetVar("naam");
echo $naam."<br>";
$tav = GetVar("tav");
echo $tav."<br>";
$straat = GetVar("straat");
echo $straat."<br>";
$postcode = GetVar("postcode");
echo $postcode."<br>";
$telefoon = GetVar("telefoon");
echo $telefoon."<br>";
$website = GetVar("website");
echo $website."<br>";
$evenement = GetVar("evenement");
echo $evenement."<br>";
$bdatum = GetVar("bdatum");
echo $bdatum."<br>";
$edatum = GetVar("edatum");
echo $edatum."<br>";
// deze insert gaat goed
$sql_str = 'SELECT * FROM plaatsen WHERE woonplaats = "'.$woonplaats.'"';
$sql = mysql_query($sql_str);
// de test gaat goed
$numrow = mysql_num_rows($sql);
if ($numrow>0)
{
echo 'Resultaten gevonden';
}
else
{
echo 'Geen resultaten gevonden';
// deze insert gaat goed mits zie boven met name ipv woonplaats??
$sql = 'INSERT INTO plaatsen (woonplaats) VALUES ("'.$woonplaats.'")';
$result = mysql_query($sql);
$plaatsen_id = 0;
if ($result)
$plaatsen_id = mysql_insert_id();
echo $plaatsen_id."<br>";
// deze insert gaat fout. Gegevens komen niet in de DB??
// deze tabel heeft een auto incr. ID veld.
$sql = 'INSERT INTO adressen VALUES ("'.$naam.'","'.$tav.'","'.$straat.'",
"'.$postcode.'","'.$plaatsen_id.'","'.$telefoon.'","'.$website.'")';
}
?>
include "verbinden.php";
function GetVar($name)
{
if (isset($_POST[$name])) // raar dit zou imho de variabele woonplaats moeten zijn. Als ik dit wijzig in woonplaats de word de tabel plaatsen niet bijgewerkt. krijgt een lege waarde???
return $_POST[$name];
if (isset($_POST[$naam]))
return $_POST[$naam];
if (isset($_POST[$tav]))
return $_POST[$tav];
if (isset($_POST[$straat]))
return $_POST[$straat];
if (isset($_POST[$postcode]))
return $_POST[$postcode];
if (isset($_POST[$telefoon]))
return $_POST[$telefoon];
if (isset($_POST[$website]))
return $_POST[$website];
if (isset($_POST[$evenement]))
return $_POST[$evenement];
if (isset($_POST[$bdatum]))
return $_POST[$bdatum];
if (isset($_POST[$edatum]))
return $_POST[$edatum];
}
// controle of de gegevens overkomen kan later weg
$woonplaats = GetVar("woonplaats");
echo $woonplaats."<br>";
$naam = GetVar("naam");
echo $naam."<br>";
$tav = GetVar("tav");
echo $tav."<br>";
$straat = GetVar("straat");
echo $straat."<br>";
$postcode = GetVar("postcode");
echo $postcode."<br>";
$telefoon = GetVar("telefoon");
echo $telefoon."<br>";
$website = GetVar("website");
echo $website."<br>";
$evenement = GetVar("evenement");
echo $evenement."<br>";
$bdatum = GetVar("bdatum");
echo $bdatum."<br>";
$edatum = GetVar("edatum");
echo $edatum."<br>";
// deze insert gaat goed
$sql_str = 'SELECT * FROM plaatsen WHERE woonplaats = "'.$woonplaats.'"';
$sql = mysql_query($sql_str);
// de test gaat goed
$numrow = mysql_num_rows($sql);
if ($numrow>0)
{
echo 'Resultaten gevonden';
}
else
{
echo 'Geen resultaten gevonden';
// deze insert gaat goed mits zie boven met name ipv woonplaats??
$sql = 'INSERT INTO plaatsen (woonplaats) VALUES ("'.$woonplaats.'")';
$result = mysql_query($sql);
$plaatsen_id = 0;
if ($result)
$plaatsen_id = mysql_insert_id();
echo $plaatsen_id."<br>";
// deze insert gaat fout. Gegevens komen niet in de DB??
// deze tabel heeft een auto incr. ID veld.
$sql = 'INSERT INTO adressen VALUES ("'.$naam.'","'.$tav.'","'.$straat.'",
"'.$postcode.'","'.$plaatsen_id.'","'.$telefoon.'","'.$website.'")';
}
?>
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
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
function GetVar($name)
{
if (isset($_POST[$name])) // raar dit zou imho de variabele woonplaats moeten zijn. Als ik dit wijzig in woonplaats de word de tabel plaatsen niet bijgewerkt. krijgt een lege waarde???
return $_POST[$name];
if (isset($_POST[$naam]))
return $_POST[$naam];
if (isset($_POST[$tav]))
return $_POST[$tav];
if (isset($_POST[$straat]))
return $_POST[$straat];
if (isset($_POST[$postcode]))
return $_POST[$postcode];
if (isset($_POST[$telefoon]))
return $_POST[$telefoon];
if (isset($_POST[$website]))
return $_POST[$website];
if (isset($_POST[$evenement]))
return $_POST[$evenement];
if (isset($_POST[$bdatum]))
return $_POST[$bdatum];
if (isset($_POST[$edatum]))
return $_POST[$edatum];
}
// controle of de gegevens overkomen kan later weg
$woonplaats = GetVar("woonplaats");
echo $woonplaats."<br>";
$naam = GetVar("naam");
echo $naam."<br>";
$tav = GetVar("tav");
echo $tav."<br>";
$straat = GetVar("straat");
echo $straat."<br>";
$postcode = GetVar("postcode");
echo $postcode."<br>";
$telefoon = GetVar("telefoon");
echo $telefoon."<br>";
$website = GetVar("website");
echo $website."<br>";
$evenement = GetVar("evenement");
echo $evenement."<br>";
$bdatum = GetVar("bdatum");
echo $bdatum."<br>";
$edatum = GetVar("edatum");
echo $edatum."<br>";
{
if (isset($_POST[$name])) // raar dit zou imho de variabele woonplaats moeten zijn. Als ik dit wijzig in woonplaats de word de tabel plaatsen niet bijgewerkt. krijgt een lege waarde???
return $_POST[$name];
if (isset($_POST[$naam]))
return $_POST[$naam];
if (isset($_POST[$tav]))
return $_POST[$tav];
if (isset($_POST[$straat]))
return $_POST[$straat];
if (isset($_POST[$postcode]))
return $_POST[$postcode];
if (isset($_POST[$telefoon]))
return $_POST[$telefoon];
if (isset($_POST[$website]))
return $_POST[$website];
if (isset($_POST[$evenement]))
return $_POST[$evenement];
if (isset($_POST[$bdatum]))
return $_POST[$bdatum];
if (isset($_POST[$edatum]))
return $_POST[$edatum];
}
// controle of de gegevens overkomen kan later weg
$woonplaats = GetVar("woonplaats");
echo $woonplaats."<br>";
$naam = GetVar("naam");
echo $naam."<br>";
$tav = GetVar("tav");
echo $tav."<br>";
$straat = GetVar("straat");
echo $straat."<br>";
$postcode = GetVar("postcode");
echo $postcode."<br>";
$telefoon = GetVar("telefoon");
echo $telefoon."<br>";
$website = GetVar("website");
echo $website."<br>";
$evenement = GetVar("evenement");
echo $evenement."<br>";
$bdatum = GetVar("bdatum");
echo $bdatum."<br>";
$edatum = GetVar("edatum");
echo $edatum."<br>";
Ik zie net dat ik er een hoop onzin heb staan. Ik snap nu dat de eerst $_post[name] slaat op alle variablen met name bij de invoer velden in het html bestand. Toch iets geleerd vandaag.
Gewijzigd op 01/01/1970 01:00:00 door Erik Smit
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
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
<?php
require 'verbinden.php';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$sql = "
SELECT *
FROM plaatsen
WHERE woonplaats = '" . $_POST['woonplaats'] . "'";
if (!$res = mysql_query($sql_str)) {
trigger_error (mysql_error ());
}
else {
if (mysql_num_rows ($res) > 0) {
echo 'Resultaten gevonden';
}
else {
echo 'Geen resultaten gevonden';
// deze insert gaat goed mits zie boven met name ipv woonplaats??
$sql = "
INSERT INTO plaatsen
(woonplaats)
VALUES
('" . mysql_real_escape_string ($_POST['woonplaats']) . "')";
if (!$res = mysql_query($sql)) {
trigger_error (mysql_error ());
}
else {
$plaatsen_id = mysql_insert_id();
$sql = "
INSERT INTO adressen
(
naam,
tav,
straat,
postcode,
plaatsen_id,
telefoon,
website)
VALUES
(
'" . mysql_real_escape_string ($_POST['naam']) . "',
'" . mysql_real_escape_string ($_POST['tav']) . "',
'" . mysql_real_escape_string ($_POST['straat']) . "',
'" . mysql_real_escape_string ($_POST['postcode']) . "',
" . $plaatsen_id . ",
'" . mysql_real_escape_string ($_POST['telefoon']) . "',
'" . mysql_real_escape_string ($_POST['website']) . "'
)";
if (!mysql_query ($sql)) {
trigger_error (mysql_error ());
}
}
}
}
}
?>
require 'verbinden.php';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$sql = "
SELECT *
FROM plaatsen
WHERE woonplaats = '" . $_POST['woonplaats'] . "'";
if (!$res = mysql_query($sql_str)) {
trigger_error (mysql_error ());
}
else {
if (mysql_num_rows ($res) > 0) {
echo 'Resultaten gevonden';
}
else {
echo 'Geen resultaten gevonden';
// deze insert gaat goed mits zie boven met name ipv woonplaats??
$sql = "
INSERT INTO plaatsen
(woonplaats)
VALUES
('" . mysql_real_escape_string ($_POST['woonplaats']) . "')";
if (!$res = mysql_query($sql)) {
trigger_error (mysql_error ());
}
else {
$plaatsen_id = mysql_insert_id();
$sql = "
INSERT INTO adressen
(
naam,
tav,
straat,
postcode,
plaatsen_id,
telefoon,
website)
VALUES
(
'" . mysql_real_escape_string ($_POST['naam']) . "',
'" . mysql_real_escape_string ($_POST['tav']) . "',
'" . mysql_real_escape_string ($_POST['straat']) . "',
'" . mysql_real_escape_string ($_POST['postcode']) . "',
" . $plaatsen_id . ",
'" . mysql_real_escape_string ($_POST['telefoon']) . "',
'" . mysql_real_escape_string ($_POST['website']) . "'
)";
if (!mysql_query ($sql)) {
trigger_error (mysql_error ());
}
}
}
}
}
?>
if (isset($_POST[$postcode]))
return $_POST[$postcode];
enz. eruit halen. ik snap nu hoe de post werkt.
Dank Erik