- Je hebt geen controle of het formulier wel is gepost...
- Je gebruikt geen superglobals ($_POST)
- Je leegt je variabelen van te voren (als je dat voor je formulier doet, maar na de check of het formulier al gepost is, is dat geen probleem...
Link gekopieerd
?
Onbekende gebruiker
30-11-2005 12:41
De onderstaande variabelen zijn leeg
Vandaar de lege velden in je database..
<?php
$DatumEvent="";
$EventNaam="";
$Lokatie="";
$Details="";
?>
//
Link gekopieerd
Ok nu het een en ander aangepast maar gaat nog niet, krijg nu helemaal neits meer te zien,
ik denk dat ik maar opnieuw ga beginnen.
<?
# Database Settings
$host = "localhost"; // host ( meestal localhost )
$gebruiker = "user"; // Mysql gebruikersnaam
$pass = "passwd"; // Mysql Paswoord
$database = "dbnaampje"; // naam van de database
?>
<html>
<head><title>Add event to schedule</title>
<script type="text/javascript" language="JavaScript">
function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
}
</script>
</head>
<body bgcolor="grey">
<form method="POST" action="<? echo $_SERVER['php_self']; ?>">
<input type="text" name="evtdate" value="DatumEvent" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtname" value="EventNaam" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtlocation" value="Lokatie" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtdetails" value="Details" size="14" onFocus="clearText(this)"><br>
<input type="submit" value="Toevoegen" name="Toevoegen">
</FORM>
<?
error_reporting(E_ALL);
ini_set('display_errors', 1);
# Connectie maken
mysql_connect($host, $gebruiker, $pass) or die("database onbereikbaar");
mysql_select_db($database) or die("database niet gevonden");
if($_SERVER['REQUEST_METHOD'] == 'POST'){
# $sql = "INSERT INTO `agenda` (`evtid`, `evtdate`, `evtname`, `evtlocation`, `evtdetails`, `evtarchived`) VALUES ('', '".$DatumEvent."', '".$EventNaam."', '".$Lokatie."', '".$Details."', '')";
$sql = "INSERT INTO 'agenda' (evtid, evtdate, evtname, evtlocation, evtdetails, evtarchived) VALUES ('', '".$DatumEvent."', '".$EventNaam."', '".$Lokatie."', '".$Details."', '')";
if (!mysql_query($sql)) {
echo 'Fout in query:<br />'.$sql.'<br />Mysql error:<br />'.mysql_error();
}
else{
mysql_query($sql);
echo "<font color=\"blue\">Event succesvol toegevoegd!</font><br />";
echo
}
}
?>
</BODY>
</HTML>
Link gekopieerd
<?
# Database Settings
$host = "localhost"; // host ( meestal localhost )
$gebruiker = "user"; // Mysql gebruikersnaam
$pass = "passwd"; // Mysql Paswoord
$database = "dbnaampje"; // naam van de database
if(!isset($_POST['submit']))
{
$DatumEvent="";
$EventNaam="";
$Lokatie="";
$Details="";
$submit="voegtoe";
?>
<html>
<head><title>Add event to schedule</title>
<script type="text/javascript" language="JavaScript">
function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
}
</script>
</head>
<body>
<form method="POST" action="<? echo $_SERVER['php_self'] ?>">
<INPUT TYPE="hidden" NAME="submit" VALUE="voegtoe">
<input type="text" name="evtdate" value="DatumEvent" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtname" value="EventNaam" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtlocation" value="Lokatie" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtdetails" value="Details" size="14" onFocus="clearText(this)"><br>
<input type="submit" value="Toevoegen" name="Toevoegen">
<?
error_reporting(E_ALL);
ini_set('display_errors', 1);
}
else
{
# Connectie maken
mysql_connect($host, $gebruiker, $pass) or die("database onbereikbaar");
mysql_select_db($database) or die("database niet gevonden");
# $sql = "INSERT INTO `agenda` (`evtid`, `evtdate`, `evtname`, `evtlocation`, `evtdetails`, `evtarchived`) VALUES ('', '".$DatumEvent."', '".$EventNaam."', '".$Lokatie."', '".$Details."', '')";
$sql = "INSERT INTO 'agenda' (evtid, evtdate, evtname, evtlocation, evtdetails, evtarchived) VALUES ('', '".$_POST['DatumEvent']."', '".$_POST['EventNaam']."', '".$_POST['Lokatie']."', '".$_POST['Details']."', '')";
if (!mysql_query($sql)) {
echo 'Fout in query:<br />'.$sql.'<br />Mysql error:<br />'.mysql_error();
}
else{
mysql_query($sql);
echo "<font color=\"blue\">Event succesvol toegevoegd!</font><br />";
echo
}
?>
</form>
</BODY>
</HTML>
Link gekopieerd
Welke error krijg je?
(De quotes bij 'agenda' zijn verkeerd. Gebruik geen quotes of gebruik de goede `agenda`)
Link gekopieerd
<small>Willem-Jan</small> schreef op 30.11.2005 13:44
<?
# Database Settings
$host = "localhost"; // host ( meestal localhost )
$gebruiker = "user"; // Mysql gebruikersnaam
$pass = "passwd"; // Mysql Paswoord
$database = "dbnaampje"; // naam van de database
if(!isset($_POST['submit']))
{
$DatumEvent="";
$EventNaam="";
$Lokatie="";
$Details="";
$submit="voegtoe";
?>
<html>
<head><title>Add event to schedule</title>
<script type="text/javascript" language="JavaScript">
function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
}
</script>
</head>
<body>
<form method="POST" action="<? echo $_SERVER['php_self'] ?>">
<INPUT TYPE="hidden" NAME="submit" VALUE="voegtoe">
<input type="text" name="evtdate" value="DatumEvent" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtname" value="EventNaam" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtlocation" value="Lokatie" size="14" onFocus="clearText(this)"><br>
<input type="text" name="evtdetails" value="Details" size="14" onFocus="clearText(this)"><br>
<input type="submit" value="Toevoegen" name="Toevoegen">
<?
error_reporting(E_ALL);
ini_set('display_errors', 1);
}
else
{
# Connectie maken
mysql_connect($host, $gebruiker, $pass) or die("database onbereikbaar");
mysql_select_db($database) or die("database niet gevonden");
# $sql = "INSERT INTO `agenda` (`evtid`, `evtdate`, `evtname`, `evtlocation`, `evtdetails`, `evtarchived`) VALUES ('', '".$DatumEvent."', '".$EventNaam."', '".$Lokatie."', '".$Details."', '')";
$sql = "INSERT INTO 'agenda' (evtid, evtdate, evtname, evtlocation, evtdetails, evtarchived) VALUES ('', '".$_POST['DatumEvent']."', '".$_POST['EventNaam']."', '".$_POST['Lokatie']."', '".$_POST['Details']."', '')";
if (!mysql_query($sql)) {
echo 'Fout in query:<br />'.$sql.'<br />Mysql error:<br />'.mysql_error();
}
else{
mysql_query($sql);
echo "<font color="blue">Event succesvol toegevoegd!</font><br />";
echo
}
?>
</form>
</BODY>
</HTML>
ziet er goed uit, alleen als ik deze code gebruik, krijg ik een lege pagina te zien :S
Link gekopieerd
if (!mysql_query($sql) ) {
echo 'Fout in query:<br />'.$sql.'<br />Mysql error:<br />'.mysql_error();
}
else{
mysql_query($sql) ;
echo "<font color="blue">Event succesvol toegevoegd!</font><br />";
echo
}
Je voert de query nu twee keer uit. 1 keer bij if, en nog een keer bij else. Je kunt hem bij else weghalen, dus:
<?php
if (!mysql_query($sql)) {
echo 'Fout in query:<br />'.$sql.'<br />Mysql error:<br />'.mysql_error();
}
else{
echo "<font color="blue">Event succesvol toegevoegd!</font><br />";
echo
}
?>
Link gekopieerd