BoukeWeening
Gebruiker
- Lid geworden
- 3 apr 2007
- Berichten
- 232
Hallo,
ik heb hier al eerder wat vragen gesteld en antwoorden gekregen over dit onderwerp en ik het tot nu toe dit:
Met deze SQL database:
gebruikers
gid INT(11) auto_increment Primary Key
gebruikersnaam VARCHAR(50)
wachtwoord VARCHAR(32)
loten
lid INT(11) auto_increment Primary Key
getal INT(5)
prijs INT(2)
winnaars
wid INT(11) auto_increment Primary Key
lid INT(11)
naam VARCHAR(75)
postcode VARCHAR(7)
huisnummer VARCHAR(4)
email VARCHAR(50)
Alleen het werkt nog niet...
Ik krijg deze fout als ik het formulier invul met een winnende code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'lid='0', naam='bouke',' at line 2
zien jullie het probleem?
Of heb ik de SQL datatbase verkeerd ingevuld?
Ik hoop dat jullie me kunnen helpen...
Groet,
Bouke
ik heb hier al eerder wat vragen gesteld en antwoorden gekregen over dit onderwerp en ik het tot nu toe dit:
PHP:
<?php
// Connecting, selecting database
$link = mysql_connect('localhost', '*********', '********')
or die('Could not connect: ' . mysql_error());
mysql_select_db('jeugdmeeting_nl') or die('Could not select database');
?>
<?php
if(isset($_POST['submit'])) {
// Bij voorkeur allerlei controles uitvoeren op ingevulde waardes
// Kijken of er een prijs op het getal is gevallen
$lotQuery = "SELECT lid, prijs FROM loten WHERE getal ='". $_POST['getal'] ."'";
$lotResult = mysql_query($lotQuery) or die(mysql_error());
if(mysql_num_rows($lotResult) > 0) {
// Er is een prijs -> kijken of die prijs niet al is vergeven
$lotRow = mysql_fetch_array($lotResult);
$lid = $lotRow['lid'];
$prijs = $lotRow['prijs'];
$winnaarQuery = "SELECT prijs FROM winnaars w INNER JOIN loten l ON w.lid=l.lid";
$winnaarResult = mysql_query($winnaarQuery) or die(mysql_error());
$winnaarRow = mysql_fetch_array($winnaarResult);
if($winnaarRow['prijs'] != $prijs) {
$insertQuery = "INSERT INTO winnaars
lid='". $lid ."',
naam='". $_POST['naam'] ."',"; //etc
mysql_query($insertQuery) or die(mysql_error());
// mail versturen
echo 'Gefeliciteerd, u heeft de '. $prijs .'e prijs gewonnen.';
} else {
echo 'Helaas, iemand voor u heeft de '. $prijs .'e prijs al gewonnen.';
}
} else {
echo 'Helaas, op uw getal is geen prijs gevallen.';
}
} else {
?>
<form action="" method="post">
Naam: <input type="text" name="naam" /><br />
Postcode: <input type="text" name="postcode" maxlength="7" /><br />
Huisnummer: <input type="text" name="huisnummer" maxlength="4" /><br />
E-mail: <input type="text" name="email" /><br />
Code: <input type="text" name="getal" /><br /><br />
<input type="submit" name="submit" value="Verstuur" />
</form>
<?php
}
?>
Met deze SQL database:
gebruikers
gid INT(11) auto_increment Primary Key
gebruikersnaam VARCHAR(50)
wachtwoord VARCHAR(32)
loten
lid INT(11) auto_increment Primary Key
getal INT(5)
prijs INT(2)
winnaars
wid INT(11) auto_increment Primary Key
lid INT(11)
naam VARCHAR(75)
postcode VARCHAR(7)
huisnummer VARCHAR(4)
email VARCHAR(50)
Alleen het werkt nog niet...
Ik krijg deze fout als ik het formulier invul met een winnende code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'lid='0', naam='bouke',' at line 2
zien jullie het probleem?
Of heb ik de SQL datatbase verkeerd ingevuld?
Ik hoop dat jullie me kunnen helpen...
Groet,
Bouke