Gastenboek
Speedy - 18/01/2005 21:40
PHP interesse
Hallo iedereen. Ik ben net begonnen met php en probeer een eenvoudig gastenboek te maken. Maar als ik nu op posten druk, meldt hij: 'query mislukt'
Wat heb ik fout gedaan?
<?
if ($submit){
// Maak verbinding met server
mysql_connect ("localhost","*****", "*****");
// Selecteer database
mysql_select_db("*****");
$datum = date("d-m-Y H:i"); //datum invoegen
// Maak query om gegevens in tabel te stoppen
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam','$email','$bericht','$datum')";
// Voer query uit
mysql_query($query) or die ("query mislukt");
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek";
// Voer query uit
$resultaat = mysql_query($query) or die ("query mislukt");
// Maak OO van $resultaat
while ($obj = mysql_fetch_object($resultaat)){
// Echo bericht
echo "<li><u>$obj->titel</u> ($obj->datum)<br>$obj->bericht</li><p>";
}
}else{
// Toon het formuliertje (in HTML modus)
?>
<form action="formulier.php" method="post">
<input type="hidden" name="submit" value="maakt_niet_uit">
Voer een uw naam in:
<br><input type="text" name="titel" size=30 maxlength=120>
Voer een uw e-mailadres in:
<br><input type="text" name="email" size=30 maxlength=120>
<P>Voer het bericht in:
<br><textarea name="bericht" cols=30 rows=4></textarea>
<P><input type="submit" value="Voeg bericht toe">
</form>
<?php
// Einde if-else statement
}
?>
<?
if ( $submit ) {
// Maak verbinding met server
// Selecteer database
$datum = date ( "d-m-Y H:i" ) ; //datum invoegen
// Maak query om gegevens in tabel te stoppen
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam ','$email ','$bericht ','$datum ')" ;
// Voer query uit
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek" ;
// Voer query uit
// Maak OO van $resultaat
// Echo bericht
echo "<li><u>$obj->titel </u> ($obj->datum )<br>$obj->bericht </li><p>" ; }
} else {
// Toon het formuliertje (in HTML modus)
?>
<form action="formulier.php" method="post">
<input type="hidden" name="submit" value="maakt_niet_uit">
Voer een uw naam in:
<br><input type="text" name="titel" size=30 maxlength=120>
Voer een uw e-mailadres in:
<br><input type="text" name="email" size=30 maxlength=120>
<P>Voer het bericht in:
<br><textarea name="bericht" cols=30 rows=4></textarea>
<P><input type="submit" value="Voeg bericht toe">
</form>
<?php
// Einde if-else statement
}
?>
8 antwoorden
Gesponsorde links
Bart - 18/01/2005 21:41 (laatste wijziging 18/01/2005 21:43)
PHP expert
vervang dat query mislukt es door mysql_error()
EDIT: en de db connectie moet BUITEN de isset van submit
2e EDIT: Lol, ik ben de eerste:D
Fenrir - 18/01/2005 21:42 (laatste wijziging 18/01/2005 21:43)
PHP expert
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam','$email','$bericht','$datum')";
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam ','$email ','$bericht ','$datum ')" ;
Variabelen buiten quotes. Waar komen ze vandaan? Heb je gecontroleerd of ze niet leeg zijn?
Probeer eens:
mysql_query($query) or die (Mysql_Error());
EDIT:
Lol, 3 keer hetzelfde advies.
EDIT EDIT:
*** Murfy was me voor met editen
Maarten - 18/01/2005 21:42 (laatste wijziging 18/01/2005 21:42)
Erelid
mysql_query($query) or die (mysql_error());
Maak dat er eens van...
Bestaat de tabel wel? Zijn het de juist veldnamen?
edit: er waren me al 2 voor
Speedy - 18/01/2005 22:04 (laatste wijziging 18/01/2005 22:04)
PHP interesse
Bedankt ,
maar nu krijg ik de error:
Parse error: parse error, unexpected $ in /home/webusers/llnraad/llnraad.spaceweb.be/gastenboek.php on line 82
<table border="0" cellspacing="0" style="border-collapse: collapse" cellpadding="0" width="100%" valign="top">
<tr>
<td width="100%" background="images/balk6.gif" height="21" style="border-bottom: 1px solid #006699">
<p align="center">Gastenboek</td>
</tr>
<tr>
<td width="100%">
<table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1" cellpadding="9">
<tr>
<td width="100%">
<?
$datum = date("d-m-Y H:i"); //datum invoegen
// Maak verbinding met server
mysql_connect ("localhost","****", "****");
// Selecteer database
mysql_select_db("****");
if ($submit){
// Maak query om gegevens in tabel te stoppen
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam','$email','$bericht','$datum')";
// Voer query uit
mysql_query($query) or die (mysql_error());
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek";
// Voer query uit
$resultaat = mysql_query($query) or die ("mysql_error");
// Maak OO van $resultaat
while ($obj = mysql_fetch_object($resultaat)){
// Echo bericht
echo "<li><u>$obj->naam</u> ($obj->datum)<br>$obj->bericht</li><p>";
}
}else{
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek";
// Voer query uit
$resultaat = mysql_query($query) or die ("mysql_error");
// Maak OO van $resultaat
while ($obj = mysql_fetch_object($resultaat)){
// Echo bericht
echo "<li><u>$obj->naam</u> ($obj->datum)<br>$obj->bericht</li><p>";
// Toon het formuliertje (in HTML modus)
?>
<form action="gastenboek.php" method="post">
<input type="hidden" name="submit" value="maakt_niet_uit">
Voer een uw naam in:
<br><input type="text" name="naam" size=30 maxlength=120>
<p>Voer een uw e-mailadres in:
<br><input type="text" name="email" size=30 maxlength=120>
<p>Voer het bericht in:
<br><textarea name="bericht" cols=30 rows=4></textarea>
<p><input type="submit" value="Voeg bericht toe">
</form>
<?php
// Einde if-else statement
}
?>
</td>
</tr>
</table>
</td>
</tr>
</table>
<table border="0" cellspacing="0" style="border-collapse: collapse" cellpadding="0" width="100%" valign="top">
<tr>
<td width="100%" background="images/balk6.gif" height="21" style="border-bottom: 1px solid #006699">
<p align="center">Gastenboek</td>
</tr>
<tr>
<td width="100%">
<table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1" cellpadding="9">
<tr>
<td width="100%">
<?
$datum = date ( "d-m-Y H:i" ) ; //datum invoegen
// Maak verbinding met server
// Selecteer database
if ( $submit ) {
// Maak query om gegevens in tabel te stoppen
$query = "INSERT INTO gastenboek (naam, email, bericht, datum) VALUES ('$naam ','$email ','$bericht ','$datum ')" ;
// Voer query uit
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek" ;
// Voer query uit
// Maak OO van $resultaat
// Echo bericht
echo "<li><u>$obj->naam </u> ($obj->datum )<br>$obj->bericht </li><p>" ; }
} else {
// Selecteer gegevens uit de tabel
$query = "SELECT id, naam, email, bericht, datum FROM gastenboek" ;
// Voer query uit
// Maak OO van $resultaat
// Echo bericht
echo "<li><u>$obj->naam </u> ($obj->datum )<br>$obj->bericht </li><p>" ;
// Toon het formuliertje (in HTML modus)
?>
<form action="gastenboek.php" method="post">
<input type="hidden" name="submit" value="maakt_niet_uit">
Voer een uw naam in:
<br><input type="text" name="naam" size=30 maxlength=120>
<p>Voer een uw e-mailadres in:
<br><input type="text" name="email" size=30 maxlength=120>
<p>Voer het bericht in:
<br><textarea name="bericht" cols=30 rows=4></textarea>
<p><input type="submit" value="Voeg bericht toe">
</form>
<?php
// Einde if-else statement
}
?>
</td>
</tr>
</table>
</td>
</tr>
</table>
jarro - 18/01/2005 22:08
HTML interesse
waarom zet je er niet ff bij welke lijn nmmr 80 is?
Speedy - 18/01/2005 22:09
PHP interesse
de onderste </table> is lijn nummer 82:s
Maarten - 18/01/2005 22:10
Erelid
Dat betekent dan dat je een } vergeten bent.
leendertW - 18/01/2005 22:12 (laatste wijziging 18/01/2005 22:21)
PHP beginner
Je bent een } vergeten onderaan.
Controleer ook op de velden en gebruik Superglobals dus:
if (isset($_POST['submit']))
if ($_POST['naam'] == ' ' ) {
echo 'je bent je naam vergeten';
}
etc.
if ( isset ( $_POST [ 'submit' ] ) ) if ( $_POST [ 'naam' ] == ' ' ) {
echo 'je bent je naam vergeten' ; }
etc.
edt murfy je was me net voor:p
admin edit: 't is murf y
Gesponsorde links
Dit onderwerp is gesloten .