validation werkt niet

Status
Niet open voor verdere reacties.

johnny1963

Gebruiker
Lid geworden
23 okt 2006
Berichten
82
wie kan me helpen met het volgende
m'n form validation werkt niet en ik weet niet waarom
Waar heb ik het fout ?
PHP:
<?php
if ($_POST['id'])
//get form id
{
$id = $_POST['id'];
$errorstring = "";

if (!$id)
	$errorstring = $errorstring."id<br>";
	
	if ($errorstring!=="")
	echo "Geef a.u.b. $errorstring om te wissen.";
	
 else

 //run code
 die("succes");
 }

?>

<form method="POST" action='test4.php'>

Geef ID-Nummer om te wissen: <input type="text" name="id" size="5" value="<?php echo $id; ?>" />

<input type='submit' value='send' name='id' >

</form>

Alvast bedankt
 
Laatst bewerkt door een moderator:
Begin eens met alle if blokken te omgeven met curly braces:
PHP:
if ( $cond ) { 
  actie1(); 
  actie2();
}

Want dat heb je nu niet en dat maakt je programma heel erg lastig te voorspellen en ik vermoed dat het ook niet doet wat je denkt dat het doet.
 
De curly braces kun je toch alleen maar weg laten als je maar 1 regel na de if of else hebt!
 
Dan kan het ja, maar zelfs dan is het beter om ze toe te voegen voor de zekerheid.

Anders krijg je van die "oh er moeten eigenlijk twee dingen na de if, even de tweede erbij zetten" situaties en dan zit je weer met zo'n obscure bug.
 
@Frats, ik ben het helemaal met je eens.
gebruik duidelijke taal en gebruik het ook als het niet perce nodig is.
Vaste script regels houd het voor jezelf veel makkelijker te schrijven en terug te lezen
 
input validate werkt niet

Sorry voor de late reactie.
Heb in hospitaal gelegen (Schouderoperatie)
In iedergevalbedankt iedereen.

De oplossing heb ik gedeeltelijk al inclusief een popup

Hier de code:

<?php
$id=$_POST['datum_wann'];
if($id == "")

{
echo '<script type="text/javascript">
window.onload=function(){alert("Datum Wann ist plicht eingabe, \n bitte wahlen Sie ein Datum.");}
</script>';
?>

Hierna html form
en dan

<?php

return (int) $id;

}
else {
die("terminkalender_insert_record.php");
}

?>

het enige wat me maar niet wil lukken is de link die("terminkalender_insert_record.php"); die niet wil werken.
weten julie hier raad mee ?
Alvast bedankt
 
Wat probeer je hiermee te bereiken?
Wat
PHP:
die("terminkalender_insert_record.php");
doet is het script beëindigen en de tekst "terminkalender_insert_record.php" op het scherm tonen.
 
Wat jij schrijft dat klopt eigenlijk moet ik die link include.
Dat werkt dan wel allemaal maar doet net niet wat het moet doen.
Ik zou zeggen ga eens naar http://www.johndohmen.uni.cc/narrengilde/terminkalender/login/index.php
en login met "admin" en "test" Druk op "Termin einfugen" (de rest ben ik mee bezig) Voeg eeen datum in en bij "Trefpunt Wo" ook wat invullen.
Daarnaa druk je op submit. Dan krijg je de pagina die eigenlijk terminkalender_insert_record.php is maar die hab ik dus nu met include gemaakt
i.p.v. bovenstaande. als je dan op de een van de links in Treffp. Wo klikken er is er maar eentje die ik als NIET lege link heb gemaakt en dat is waar
"Heerlen Centrum staat" Dan snap je ook wat de bedoeling is.

in afwachting,
Groeten John
 
Ik heb je code iets aangepast niet getest dus geen garantie op geen schrijffouten
Ik hoop dat je gebruikte functies eens aanklikt om even te kijken wat ze doen
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
	<title>Untitled 2</title>
    <style type="text/css">
<!--
	.ERROR{background:#FFCC00; border: 2px solid #FF6600;z-index:99;}
-->
</style>
</head>
<body>
    <?php
        $errorstring = "";
        $id = (isset($_GET['id']))?addslashes($_GET['id']):null;
        if (isset($id)){
            die("succes");
        }else{
            $errorstring .= "id<br>";
        }
        if ($errorstring!==""){
            echo "<div class='ERROR'>Geef a.u.b. $errorstring om te wissen.</div>";
        }
    ?>
    <form method="POST" action='test4.php'>
        Geef ID-Nummer om te wissen: <input type="text" name="id" size="5" value="<?php echo $id; ?>" />
        <input type='submit' value='send' name='id' />
    </form>
</body>
</html>
 
Het enige wat er gebeurt is dat de input text nu leeg is dat is dan oke.
Maar er gebeurt niets als ik er iets intype of niets intype. en dan op sent klik.
Volgens deze tutorial http://www.youtube.com/watch?v=yuLpSospbBk
zou het moeten werken.


Zoals ik al van tevoren zij ik heb het iets anders aangepakt alleen de link die werkt niet, en ik wil niet include doen dus moet ik een andere manier
creeeren.

Groeten John
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan