kan geen gegevens toevoegen

Status
Niet open voor verdere reacties.

johansnoek

Gebruiker
Lid geworden
16 jan 2012
Berichten
7
ik moet voor school een registratieformulier maken en als je dat dan doet dat hij ook opslaat in de database
ik heb nu alles (als goed is) op een rijtje maar toch valt hij dood(error)

dit is mijn MYSQL script

<?php

mysql_connect("localhost", "root", "") or die("niet voldoende rechten");
mysql_select_db("zuivelfabriek") or die("kan geen verbinding maken met de database");


$voorletter = $_POST['voorletter'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord1'];
$wachtwoord = $_POST['wachtwoord2'];
$adres = $_POST ['adres'];
$huisnummer = $_POST ['huisnummer'];
$postcode = $_POST ['postcode'];
$woonplaats = $_POST ['woonplaats'];
$telefoonnr = $_POST ['telefoonnr'];
$mobiel = $_POST ['mobiel'];
$email = $_POST ['email'];
$opmerking = $_POST['opmerking'];

$invoerlid = "INSERT INTO inloggen(voorletter, tussenvoegsel, achternaam, gebruikersnaam, wachtwoord1, wachtwoord2, adres, huisnummer, postcode, woonplaats, telefoonnr, mobiel, email, opmerking, Lid_id) VALUES ('$voorletter', '$tussenvoegsel', '$achternaam', '$gebruikersnaam', '$adres', '$huisnummer', '$postcode', '$woonplaats', '$telefoonnr', '$mobiel', '$email', '$opmerking', )";
$resultaat = mysql_query($invoerlid) or die("kan geen gegevens toevoegen");


echo ("$voorletter <br/>");
echo ("$tussenvoegsel <br/>");
echo ("$achternaam <br/>");
echo ("$gebruikersnaam <br />");
echo ("$wachtwoord1 <br />");
echo ("$wachtwoord2 <br />");
echo ("$adres <br/>");
echo ("$huisnummer <br/>");
echo ("$postcode <br/>");
echo ("$woonplaats <br/>");
echo ("$telefoonnr <br/>");
echo ("$mobiel <br/>");
echo ("$email <br/>");
echo ("$opmerking <br />");

?>

zouden jullie mij hier alstublieft mee helpen want ik kan de fout niet vinden
Bij voorbaad dank
 
Laatst bewerkt:
PHP:
$invoerlid = "INSERT INTO inloggen(voorletter, tussenvoegsel, achternaam, gebruikersnaam, [B]wachtwoord1, wachtwoord2[/B], adres, huisnummer, postcode, woonplaats, telefoonnr, mobiel, email, opmerking, Lid_id) VALUES ('$voorletter', '$tussenvoegsel', '$achternaam', '$gebruikersnaam', '$adres', '$huisnummer', '$postcode', '$woonplaats', '$telefoonnr', '$mobiel', '$email', '$opmerking', )";
$resultaat = mysql_query($invoerlid) or die("kan geen gegevens toevoegen");

Uw fout is nogal vanzelfsprekend...

INSERT INTO inloggen (kolomnamen die je wil toevoegen) VALUES (moet overeenkomen met kolomnamen).
De velden wachtwoord1 en wachtwoord2 worden niet opgenomen als waarden.

Verder nog enkele opmerkingen:
Het is niet noodzakelijk om quotes te gebruiken wanneer je een php-variabele aanspreekt '$adres' mag gewoon $adres zijn.
Waar zou je in uw database twee velden hebben voor uw wachtwoord?
Om SQL injectie tegen te gaan gebruik je best de volgende methode: mysql_real_escape_string()

Bij SQL injectie gaat een gebruiker extra SQL code toevoegen in het formulier, op die manier kan je eigenlijk heel de database aanroepen. Zeer ernstig beveiligingsrisico en toch heel makkelijk te beveiligen d.m.v. de juiste methode.
Verder ook eens controleren tegen Cross Site Scripting.

Ik draag veiligheid hoog in het vaandel, vandaar dat ik dit u even wil meegeven.

Groetjes

Joey
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan