Toon posts:

[PHP] schrijven naar een interbase tabel

Pagina: 1
Acties:

Onderwerpen


Verwijderd

Topicstarter
Ik heb een formulier gemaakt in html om gegevens in mijn interbase database te zetten hieronder even het gedeelte van die code :

code:
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
<FORM ACTION="ibsend.php" METHOD="POST">
<font color="#000000" size="1" face="Verdana, Arial, Helvetica, sans-serif"> 
Voornaam:<BR>
<INPUT STYLE="border-color: black" NAME="WN_VOORNAAM" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Achternaam:<BR>
<INPUT STYLE="border-color: black" NAME="WN_ACHTERNAAM" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Adres:<BR>
<INPUT STYLE="border-color: black" NAME="WN_ADRES" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Postcode:<BR>
<INPUT STYLE="border-color: black" NAME="WN_POSTCODE" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Woonplaats:<BR>
<INPUT STYLE="border-color: black" NAME="WN_WOONPLAATS" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Geboortedatum:<BR>
<INPUT STYLE="border-color: black" NAME="WN_GEBOORTEDATUM" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Telefoon nummer::<BR>
<INPUT STYLE="border-color: black" NAME="WN_TELNR" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Mobiel nummer:<BR>
<INPUT STYLE="border-color: black" NAME="WN_MOBNR" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
E-mail:<BR>
<INPUT STYLE="border-color: black" NAME="WN_EMAIL" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Werknemer nummer:<BR>
<INPUT STYLE="border-color: black" NAME="WN_NR" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Gebruikersnaam:<BR>
<INPUT STYLE="border-color: black" NAME="WN_GEBRUIKERSNAAM" TYPE=text SIZE=50 MAXSIZE=80 VALUE="">
Wachtwoord:<BR>
<INPUT STYLE="border-color: black" NAME="WN_WACHTWOORD" TYPE=text SIZE=20 MAXSIZE=80 VALUE="">
</font> 
<P> 
<INPUT style="background-color: #9FC1E8; border-color: black; color:black; font-size:8pt" TYPE=submit VALUE="versturen">
<INPUT style="background-color: #9FC1E8; border-color: black; color:black; font-size:8pt" VALUE="reset" TYPE=reset>
</font></FORM>


als het formulier ingevuld is gaat deze naar de pagina ibsend.php
hieronder de php code hiervan :

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
<?

$back="<br><br><a href='javascript:window.history.back()'><b>Vorige</b></a>"; 
if (empty($_POST['WN_GEBRUIKERSNAAM'])) {
echo "Gebruikersnaam is leeg! $back"; 
exit; 
}
$conn=ibase_connect("localhost:c:\phpdev\www\public\db\knowledgebase.gdb", "dbuser", "dbpassword"); 
if (!$conn) { 
echo "Accesso Denied! $back";
exit; 
} 
$result=ibase_query($conn,"select WN_GEBRUIKERSNAAM from WERKNEMERS where WN_GEBRUIKERSNAAM= '".$_POST['WN_GEBRUIKERSNAAM']."'"); 
$num_rows=ibase_fetch_row($result);
if (!empty($num_rows[0])) {
echo "Deze gebruikersnaam is al in gebruik: $num_rows[0] $back";
exit;
} 
$query="insert into WERKNEMERS values ('".$_POST['WN_VOORNAAM']."','".$_POST['WN_ACHTERNAAM']."','".$_POST['WN_ADRES']."','".$_POST['WN_POSTCODE']."','".$_POST['WN_WOONPLAATS']."','".$_POST['WN_GEBOORTEDATUM']."','".$_POST['WN_TELNR']."','".$_POST['WN_MOBNR']."','".$_POST['WN_EMAIL']."','".$_POST['WN_NR']."','".$_POST['WN_GEBRUIKERSNAAM']."','".$_POST['WN_WACHTWOORD']."',0)"; 
$result=ibase_query($conn,$query);
if (!$result) {
echo "Error. Can't insert the record with the query: $query! $back"; 
exit; 
}
echo "Record saved: '".$_POST['WN_GEBRUIKERSNAAM']."' $back";
ibase_close($conn)
; ?>


maar op deze pagina gaat het dus fout... ik krijg dan volgende foutmelding :

Warning: InterBase: conversion error from string "jan" in c:\phpdev\www\public\ibsend.php on line 49
Error. Can't insert the record with the query: insert into WERKNEMERS values ('jan','blaat','test 6','1234 OK','woonplaats','11-11-1981','111-2115544','geen','test@test.nl','4','username','password',0)!

kan iemand zien wat hier verkeerd is.. want heb na lang prutsen niets kunnen ontdekken...

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Warning: InterBase: conversion error from string "jan" in c:\phpdev\www\public\ibsend.php on line 49


Wat voor een veld is het 1e veld in de tabel werknemers?

[ot]
Het is niet nodig om form mee te geven... Maakt het een beetje onleesbaar.... ( soms is teveel info net zo fout als de te weinig )

Programmer - an organism that turns coffee into software.


Verwijderd

Topicstarter
Afbeeldingslocatie: http://members.lycos.nl/sunburn/stage/tabel_werknemers.gif
zo ziet mijn tabel eruit

Verwijderd

Mja, en een string 'jan' in een integer-veld plakken, dat gaat natuurlijk niet :)

Misschien een idee om een andere syntax te gebruiken:
code:
1
INSERT INTO tabel (veld1, veld2, veld3) VALUES (waarde1, waarde2, waarde3)


Succes ermee

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Verwijderd schreef op 10 februari 2004 @ 10:38:
Mja, en een string 'jan' in een integer-veld plakken, dat gaat natuurlijk niet :)

Misschien een idee om een andere syntax te gebruiken:
code:
1
INSERT INTO tabel (veld1, veld2, veld3) VALUES (waarde1, waarde2, waarde3)


Succes ermee
Over je verplaats de 0 naar voren toe...

PHP:
19
20
21
//$query="insert into WERKNEMERS values ('".$_POST['WN_VOORNAAM']."','".$_POST['WN_ACHTERNAAM']."','".$_POST['WN_ADRES']."','".$_POST['WN_POSTCODE']."','".$_POST['WN_WOONPLAATS']."','".$_POST['WN_GEBOORTEDATUM']."','".$_POST['WN_TELNR']."','".$_POST['WN_MOBNR']."','".$_POST['WN_EMAIL']."','".$_POST['WN_NR']."','".$_POST['WN_GEBRUIKERSNAAM']."','".$_POST['WN_WACHTWOORD']."',0)"; 

$query="insert into WERKNEMERS values (0,'".$_POST['WN_VOORNAAM']."','".$_POST['WN_ACHTERNAAM']."','".$_POST['WN_ADRES']."','".$_POST['WN_POSTCODE']."','".$_POST['WN_WOONPLAATS']."','".$_POST['WN_GEBOORTEDATUM']."','".$_POST['WN_TELNR']."','".$_POST['WN_MOBNR']."','".$_POST['WN_EMAIL']."','".$_POST['WN_NR']."','".$_POST['WN_GEBRUIKERSNAAM']."','".$_POST['WN_WACHTWOORD']."')";

Programmer - an organism that turns coffee into software.


  • Dennahz
  • Registratie: November 2001
  • Laatst online: 03-11 20:42

Dennahz

Life feels like hell should.

LuCarD schreef op 10 februari 2004 @ 10:52:
[...]


Over je verplaats de 0 naar voren toe...

PHP:
19
20
21
//$query="insert into WERKNEMERS values ('".$_POST['WN_VOORNAAM']."','".$_POST['WN_ACHTERNAAM']."','".$_POST['WN_ADRES']."','".$_POST['WN_POSTCODE']."','".$_POST['WN_WOONPLAATS']."','".$_POST['WN_GEBOORTEDATUM']."','".$_POST['WN_TELNR']."','".$_POST['WN_MOBNR']."','".$_POST['WN_EMAIL']."','".$_POST['WN_NR']."','".$_POST['WN_GEBRUIKERSNAAM']."','".$_POST['WN_WACHTWOORD']."',0)"; 

$query="insert into WERKNEMERS values (0,'".$_POST['WN_VOORNAAM']."','".$_POST['WN_ACHTERNAAM']."','".$_POST['WN_ADRES']."','".$_POST['WN_POSTCODE']."','".$_POST['WN_WOONPLAATS']."','".$_POST['WN_GEBOORTEDATUM']."','".$_POST['WN_TELNR']."','".$_POST['WN_MOBNR']."','".$_POST['WN_EMAIL']."','".$_POST['WN_NR']."','".$_POST['WN_GEBRUIKERSNAAM']."','".$_POST['WN_WACHTWOORD']."')";
Lijkt mij geen oplossing, het eerste veld is auto_increment (tenminste, dat zei hij via MSN) en een id moet uniek zijn.

Twitter


  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 04-11 12:28
null dan in het eerste veld pompen, dat werkt bij MySQL heel erg goed bij auto_increment velden.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 04-11 10:11

Bosmonster

*zucht*

Netter is om even de veldnamen mee te geven zoals Denial al zei. Anders mag je al je queries aanpassen als je eens een veld toevoegt...

Verwijderd

Topicstarter
bedankt het is gelukt :)
Pagina: 1