fout met database :s
5 antwoorden
Gesponsorde links
Richard - 01/09/2006 16:02
Crew algemeen
Ik kijk in mijn glazen bol, en zie dat er een fout zit in je SQL query, op regel 15345
Rypezio - 01/09/2006 16:06
Nieuw lid
<?php
if ($_POST['bevestig']) {
$gebruikersnaam = $_POST['gebruikersnaam'];
$naam = $_POST['naam'];
$voornaam = $_POST['voornaam'];
$emailadres = $_POST['emailadres'];
$wachtwoord = $_POST['wachtwoord'];
$geboortedatum = $_POST['geboortedatum'];
$status = "Lid";
$gebjaar = $_POST['gebjaar'];
$gebdag = $_POST['gebdag'];
$gebmaand = $_POST['gebmaand'];
$regjaar = date("Y");
$regdag = date("d");
$regmaand = date("m");
$reguur = date("H");
$regminuut = date("i");
$regseconde = date("s");
mysql_query("INSERT INTO `leden` (`voornaam` , `naam` , `gebruikersnaam` , `wachtwoord` , `email` , `status` , `gebjaar` , `gebmaand` , `gebdag` , `regjaar` , `regmaand` , `regdag` , `reguur` , `regminuut` , `regseconde`) VALUES ('".$voornaam."' , '".$naam."' ,'".$gebruikersnaam."' , '".$wachtwoord."' , '".$emailadres."' , '".$geboortedatum."' , '".$status."' , '".$gebjaar."' , '".$gebmaand."' , '".$gebdag."' , '".$regjaar."' , '".$regmaand."' , '".$regdag."' , '".$reguur."' , '".$regminuut."' , '".$regseconde."')") or die( mysql_error());
}
?>
<?php
if ( $_POST [ 'bevestig' ] ) {
$gebruikersnaam = $_POST [ 'gebruikersnaam' ] ;
$naam = $_POST [ 'naam' ] ;
$voornaam = $_POST [ 'voornaam' ] ;
$emailadres = $_POST [ 'emailadres' ] ;
$wachtwoord = $_POST [ 'wachtwoord' ] ;
$geboortedatum = $_POST [ 'geboortedatum' ] ;
$status = "Lid" ;
$gebjaar = $_POST [ 'gebjaar' ] ;
$gebdag = $_POST [ 'gebdag' ] ;
$gebmaand = $_POST [ 'gebmaand' ] ;
mysql_query ( "INSERT INTO `leden` (`voornaam` , `naam` , `gebruikersnaam` , `wachtwoord` , `email` , `status` , `gebjaar` , `gebmaand` , `gebdag` , `regjaar` , `regmaand` , `regdag` , `reguur` , `regminuut` , `regseconde`) VALUES ('" . $voornaam . "' , '" . $naam . "' ,'" . $gebruikersnaam . "' , '" . $wachtwoord . "' , '" . $emailadres . "' , '" . $geboortedatum . "' , '" . $status . "' , '" . $gebjaar . "' , '" . $gebmaand . "' , '" . $gebdag . "' , '" . $regjaar . "' , '" . $regmaand . "' , '" . $regdag . "' , '" . $reguur . "' , '" . $regminuut . "' , '" . $regseconde . "')" ) or
die ( mysql_error ( ) ) ;
}
?>
Stefan14 - 01/09/2006 16:07 (laatste wijziging 01/09/2006 16:12)
PHP gevorderde
even serieus, je hebt inderdaad een fout in je query, en wel het volgende.
je hebt bijv het volgende als query.
$query = "INSERT INTO tabel (veld1,veld2,veld3,veld4) VALUES ('".$waarde1."','".$waarde2."','".$waarde3."','".$waarde4.'",'".$waarde5."')";
$query = "INSERT INTO tabel (veld1,veld2,veld3,veld4) VALUES ('" . $waarde1 . "','" . $waarde2 . "','" . $waarde3 . "','" . $waarde4 . '",' ".$waarde5 ." ')";
nu heb je dus 4 velden geselecteerd waar je wat wilt inserten, maar je zet er 5 waardes in, dat kan dus niet. dit kan btw andersom. maar het gaat er dus om dat het aantal kolommen en waardes niet kloppen.
EDIT: ok, dat is dus je query, ik heb hem gelijk even wat overzichtelijker gemaakt, en die backticks moet je echt achterwege laten, dat is helemaal niet nodig
<?php
mysql_query("
INSERT INTO
leden
(voornaam , naam , gebruikersnaam , wachtwoord , email , status , gebjaar , gebmaand , gebdag , regjaar , regmaand , regdag , reguur , regminuut , regseconde)
VALUES
('".$voornaam."' , '".$naam."' ,'".$gebruikersnaam."' , '".$wachtwoord."' , '".$emailadres."' , '".$geboortedatum."' , '".$status."' , '".$gebjaar."' , '".$gebmaand."' , '".$gebdag."' , '".$regjaar."' , '".$regmaand."' , '".$regdag."' , '".$reguur."' , '".$regminuut."' , '".$regseconde."')
")
or die( mysql_error());
?>
<?php
INSERT INTO
leden
(voornaam , naam , gebruikersnaam , wachtwoord , email , status , gebjaar , gebmaand , gebdag , regjaar , regmaand , regdag , reguur , regminuut , regseconde)
VALUES
('" . $voornaam . "' , '" . $naam . "' ,'" . $gebruikersnaam . "' , '" . $wachtwoord . "' , '" . $emailadres . "' , '" . $geboortedatum . "' , '" . $status . "' , '" . $gebjaar . "' , '" . $gebmaand . "' , '" . $gebdag . "' , '" . $regjaar . "' , '" . $regmaand . "' , '" . $regdag . "' , '" . $reguur . "' , '" . $regminuut . "' , '" . $regseconde . "')
" )
?>
ik bekijk net je query eens even wat beter, en je hebt echt veel en veel te veel velden, ik denk dat jij niet echt iets weet van veldtypes, maar regjaar, regmaand, regdag kun je samenvoegen tot 1 kolom, net zoals reguur, regminuut, regseconde.
Hier maak je een date en voor de tweede een time kolom van. Zo kun je ook beter bepaalde statistieken maken.
ik zie trouwens zogauw geen fouten in je query
Rypezio - 01/09/2006 16:10
Nieuw lid
ah k mercie
timo - 01/09/2006 16:19
PHP ver gevorderde
zelfs een DateTime, zijn 6 kolommen compressed tot 1!
Gesponsorde links
Dit onderwerp is gesloten .