Wie kan mij helpen, ik zit vast. Waar kan ik zorgen voor de controle op het invullen van alle velden en hoe moet dat ?


<?php

include("config.inc.php");

if(isset($_POST[updaten])) {

$cursus=$_POST[cursustype];
$prijs=$_POST[cursusprijs];
$begindatum=$_POST[cursusbegindatum];
$einddatum=$_POST[cursuseinddatum];


$upid=$_POST[cursusnummer];

$mysql_id=mysql_connect("$datahost","$username","$password");
$sql="update cursus set cursustype='$cursus',cursusprijs='$prijs',cursusbegindatum='$begindatum',cursuseinddatum='$einddatum' where cursusnummer='$upid'" ;
$res=mysql_db_query("$dabase","$sql",$mysql_id);
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
else {
echo '<div align="center"><h3>De gegevens zijn in de database aangepast</h3><br></div>';
mysql_close($mysql_id);
exit;
}
}
$upid=$_GET[cursusnummer];
if(isset($upid)) {
$mysql_id=mysql_connect("$datahost","$username","$password");
$sql="select * from cursus where cursusnummer = '$upid'";
$res=mysql_db_query("$database","$sql",$mysql_id);
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
$row=mysql_fetch_row($res);
?>

<form action="<?php echo $_SERVER[PHP_SELF];?>" method="post"
<fieldset>
<label for = 'cursustype'>
cursustype:
</label>
<input type="text" name="cursustype" value="<?php echo $row[1];?>">


<label for = 'prijs'>
prijs:
</label>
<input type="text" name="cursusprijs" value="<?php echo $row[2];?>">


<label for = 'Begindatum'>
begindatum:
</label>
<input type="text" name="cursusbegindatum" value="<?php echo $row[3];?>">

<label for = 'einddatum'>
einddatum:
</label>
<input type="text" name="cursuseinddatum" value="<?php echo $row[4];?>">

<label for = 'cursusnummer'></label>
<input type="hidden" name="cursusnummer" value="<?php echo $upid;?>">

<label for = 'verstuur'></label>
<input type="submit" name="updaten" value="Gegevens updaten">


<label for = 'wissen'></label>
<input type = 'Reset' name = 'Wissen' value = 'Wissen' />



</fieldset>



</form>
<?php
mysql_close($mysql_id);
}
else {
$mysql_id=mysql_connect("$datahost","$username","$password");
$sql="select * from cursus";
$res=mysql_db_query("$database","$sql",$mysql_id);
$fout=mysql_errno($mysql_id);
if ($fout != 0) {
$fout=mysql_error($mysql_id);
echo '<font color="#FF2306">' . $fout . '</font>';
mysql_close($mysql_id);
echo '</body></html>';
exit;
}
$aantal_lijnen=mysql_num_rows($res);
$aantal_velden=mysql_num_fields($res);
echo "<br><br>";
echo '<table border=2 celpadding=2 width="100%">';
for($i=0;$i<$aantal_velden;$i++) {
printf("<th class=\"db\">%s</th>",mysql_field_name($res,$i));
}
echo "<th class=\"db\">Update</th>"; # toegevoegd
for($i=0;$i<$aantal_lijnen;$i++) {
$row=mysql_fetch_row($res);
echo '<tr>';
foreach($row as $col) {
$upid=$row[0];
if(!$col) $col="&nbsp;";
echo "<td class=\"db\">$col</td>";
}
echo "<td class=\"db\"><a href=\"aanpassen.php?cursusnummer=$upid\" class=\"links\">Update</a></td></tr>"; # veranderd
}
echo "</table>";
echo '<br><br>';
mysql_close($mysql_id);
}
?>
Oftopic: $_POST[updaten], wat is er mis met quotes? $_POST[updaten] hoor je nog altijd als $_POST['updaten'] te schrijven, 'updaten' is een string en geen constante.

Dit geldt uiteraard ook voor alle overige strings in jouw code...

Reageren