Gegevens invoeren in database
ik ben bezig met een facturatie systeem maar ik zit nu met een probleem waar ik niet uit kom
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
if(isset($_POST['verzenden']))
{
$swerk_naam = addslashes($_POST['werk_naam']);
$swerk_adres = addslashes($_POST['werk_adres']);
$swerk_plaats = addslashes($_POST['werk_plaats']);
$swerk_uitvoerder = addslashes($_POST['werk_uitvoerder']);
$swerk_datum = addslashes($_POST['werk_datum']);
$sboorwerk_stuks = addslashes($_POST['boorwerk_stuks']);
$sboorwerk_cm = addslashes($_POST['boorwerk_cm']);
$sboorwerk_wat = addslashes($_POST['boorwerk_wat']);
$swerkbon_id = "3"
mysql_query("INSERT INTO werkbonnen (werk_naam, werk_adres, werk_plaats, werk_uitvoerder, werk_datum) VALUES ('".$swerk_naam."', '".$swerk_adres."', '".$swerk_plaats."', '".$swerk_uitvoerder."', '".$swerk_datum."')") or die (mysql_error());
mysql_query("INSERT INTO boorwerk (boorwerk_stuks, boorwerk_cm, boorwerk_wat, werkbon_id) VALUES ('".$sboorwerk_stuks."', '".$sboorwerk_cm."', '".$sboorwerk_wat."', '".$swerkbon_id."')") or die (mysql_error());
echo 'Je gegevens zijn succesvol in de database geplaatst';
}
else
{
?>
if(isset($_POST['verzenden']))
{
$swerk_naam = addslashes($_POST['werk_naam']);
$swerk_adres = addslashes($_POST['werk_adres']);
$swerk_plaats = addslashes($_POST['werk_plaats']);
$swerk_uitvoerder = addslashes($_POST['werk_uitvoerder']);
$swerk_datum = addslashes($_POST['werk_datum']);
$sboorwerk_stuks = addslashes($_POST['boorwerk_stuks']);
$sboorwerk_cm = addslashes($_POST['boorwerk_cm']);
$sboorwerk_wat = addslashes($_POST['boorwerk_wat']);
$swerkbon_id = "3"
mysql_query("INSERT INTO werkbonnen (werk_naam, werk_adres, werk_plaats, werk_uitvoerder, werk_datum) VALUES ('".$swerk_naam."', '".$swerk_adres."', '".$swerk_plaats."', '".$swerk_uitvoerder."', '".$swerk_datum."')") or die (mysql_error());
mysql_query("INSERT INTO boorwerk (boorwerk_stuks, boorwerk_cm, boorwerk_wat, werkbon_id) VALUES ('".$sboorwerk_stuks."', '".$sboorwerk_cm."', '".$sboorwerk_wat."', '".$swerkbon_id."')") or die (mysql_error());
echo 'Je gegevens zijn succesvol in de database geplaatst';
}
else
{
?>
Hij maakt in de tabel werkbonnen automatich een ID aan maar dat id moet komen te staan in de tabel boorwerk bij werkbon_id
Hoe zou ik dit kunnen doen?
Met mysql_insert_id() kun je opvragen wat het laatste, autoincrement, id is (van een INSERT commando)
Waarom gebruik je addslashes() in plaats van mysql_real_escape_string() ?
- Aar - op 22/09/2014 15:10:19:
Waarom gebruik je addslashes() in plaats van mysql_real_escape_string() ?
Hier vroeg ik niet om dit heeft niks met ID te maken -,-
Het is alleen maar een goed advies, je wilt immers niet je data om zeep helpen. Lees ook eens:
http://www.jansch.nl/2007/11/30/dont-use-addslashes-for-database-escapes/
- Roland - op 22/09/2014 15:02:37:
Met mysql_insert_id() kun je opvragen wat het laatste, autoincrement, id is (van een INSERT commando)
Hoe zou ik dat moeten doen dan?
Overweeg tevens om over te stappen op mysqli met prepared statements of op PDO.
Het antwoord op je vraag:
mysql_insert_id
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
//...
mysql_query("INSERT INTO werkbonnen (werk_naam, werk_adres, werk_plaats, werk_uitvoerder, werk_datum) VALUES ('".$swerk_naam."', '".$swerk_adres."', '".$swerk_plaats."', '".$swerk_uitvoerder."', '".$swerk_datum."')") or die (mysql_error());
mysql_query("INSERT INTO boorwerk (boorwerk_stuks, boorwerk_cm, boorwerk_wat, werkbon_id) VALUES ('".$sboorwerk_stuks."', '".$sboorwerk_cm."', '".$sboorwerk_wat."', '".mysql_insert_id()."')") or die (mysql_error());
?>
//...
mysql_query("INSERT INTO werkbonnen (werk_naam, werk_adres, werk_plaats, werk_uitvoerder, werk_datum) VALUES ('".$swerk_naam."', '".$swerk_adres."', '".$swerk_plaats."', '".$swerk_uitvoerder."', '".$swerk_datum."')") or die (mysql_error());
mysql_query("INSERT INTO boorwerk (boorwerk_stuks, boorwerk_cm, boorwerk_wat, werkbon_id) VALUES ('".$sboorwerk_stuks."', '".$sboorwerk_cm."', '".$sboorwerk_wat."', '".mysql_insert_id()."')") or die (mysql_error());
?>
Gewijzigd op 22/09/2014 16:37:35 door Frank Nietbelangrijk
Persoonlijk geef ik er over het algemeen de voorkeur aan om in iedere tabel een ID-veld te hebben.
Gewijzigd op 22/09/2014 17:45:24 door - Ariën -
En sorry voor mij reactie was beetje geirriteerd bedankt voor de tip!