Abend Zusammen!
Ich habe ein kleines Problem mit meinen Formular. Ich habe dafür eine Validierung programmiert bloß bei einem Element gibt er den Fehlertext bzw markiert die betreffenende Zeile nicht mit einem roten Sternchen aus.
Und hier dazu der Quellcode:
und
so jetzt noch der wichtige teil der Datei pruefung.php (wurde oben included) bzw function check1:
So wiegeagt es wird keine Feler ausgeben, wenn der User vergessen hat das Passwort auszufüllen bzw wenn er pass1 und pass2 nicht gleich sind. Ich verstehe nicht wieso? Kann mir jemand helfen? Würde mich darüber freuen!
Gruß
enger-spenger
Ich habe ein kleines Problem mit meinen Formular. Ich habe dafür eine Validierung programmiert bloß bei einem Element gibt er den Fehlertext bzw markiert die betreffenende Zeile nicht mit einem roten Sternchen aus.
Und hier dazu der Quellcode:
PHP-Code:
<?php
session_start();
$_SESSION['login']= $_POST['login'];
$_SESSION['pass1']= $_POST['pass1'];
$_SESSION['pass2']= $_POST['pass2'];
$_SESSION['vorname']= $_POST['vorname'];
$_SESSION['nachname']= $_POST['nachname'];
$_SESSION['geschlecht']= $_POST['geschlecht'];
$_SESSION['geschlecht2']= $_POST['geschlecht2'];
$_SESSION['geburtsdatum']= $timestamp;
$_SESSION['strasse']= $_POST['strasse'];
$_SESSION['nummer']= $_POST['nummer'];
$_SESSION['land']= $_POST['land'];
$_SESSION['plz']= $_POST['plz'];
$_SESSION['ort']= $_POST['ort'];
$_SESSION['email']= $_POST['email'];
$_SESSION['gruppe'][0] = $_POST['gruppe'][0];
$_SESSION['gruppe'][1] = $_POST['gruppe'][1];
print_r($_POST);
print_r($_SESSION);
setlocale(LC_ALL, 'DEU');
$allesok = false;
if(isset($_POST['ueberpruefung']))
{
$allesok = true;
include('./pruefung.php');
check($allesok,$error,$error2);
}
// Hier wird die IF-Bedingung von ganz oben geschlossen.
if($allesok){
echo '<meta http-equiv="refresh" content="10;URL=kalender.php>';
}
// Ist der Wert 1 nicht vorhanden, zeige das Formular.
else
{
?>
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"/>
<title>Dreispaltiges Layout mit Kopf- und Fußzeile</title>
<link rel="stylesheet" href='css/formular_box.css' type="text/css" type='text/opera;charset=utf-8'>
</head>
<body>
<h1>CSS-basierte Layouts</h1>
<form action="kalender2.php?SID=<?php echo session_id(); ?> " method="post" >
<div class="raised"><b class="b1"></b><b class="b2"></b><b class="b3"></b><b class="b4"></b>
<div class="boxcontent">
<div class="inhalt">
<p>
<h4>Bitte alle Felder ausfühlen!</h4></p>
<p><?php
echo $error['login'];
echo $error['pass1'];
echo $error['pass2'];
echo $error['vorname'];
echo $error['nachname'];
echo $error['geburtstag'];
echo $error['strasse'];
echo $error['nummer'];
echo $error['land'];
echo $error['plz'];
echo $error['ort'];
echo $error['email'];
echo $error['gruppe'][0];
echo $error['gruppe'][1];
?>
</p>
<p></p>
<p >
<label for="login">Login</label><?php echo $error2['login'];?>
<input type="text" name="login" value="<?php echo $_POST['login'];?>" /></p>
<p>
<label for="pass1">Passwort</label><?php echo $error2['pass1'];?>
<input type="password" name="pass1" value="<?php echo $_POST['pass1'];?>" />
</p>
<p>
<label for="pass2">Passwort bestätigen</label><?php echo $error2['pass2'];?>
<input type="password" name="pass2" value="<?php echo $_POST['pass2'];?>" />
</p>
...
<p>
<input type="hidden" name="ueberpruefung" value="1">
<input type="submit" name="Anmeldung" value="Weiter" id="button"></p>
</form>
<p class="fusszeile">Diese Fußzeile stellt über die CSS-Eigenschaft 'clear'
den Elementenfluss wieder her.</p>
<?php
}
?>
PHP-Code:
<?php
function check(&$allesok,&$error,&$error2)
{
if(empty($_POST['login']))
{
$allesok = 0;
$error[login]="Bitte Login eingeben"." <br>";
$error2[login] = "<b><span style=\"color:red;\">*</span></b>";
}
else
{
$_POST['login']=trim(stripslashes($_POST['login']));
}
if(empty($_POST['pass1'])&&($_POST['pass2']))
{
$allesok = 0;
$error[pass1]="Bitte Password eingeben"."<br>";
$error[pass2]="Bitte Password noch mal eingeben"." <br>";
$error2[pass1] = "<b><span style=\"color:red;\">*</span></b>";
$error2[pass2] = "<b><span style=\"color:red;\">*</span></b>";
}
else
{
if(($_POST['pass1'])!=($_POST['pass2']))
{
$allesok = 0;
$error[pass1]="Bitte Password eingeben!<br>";
$error[pass2]="Bitte Password noch mal eingeben!<br>";
$error2[pass1] = "<b><span style=\"color:red;\">*</span></b>";
$error2[pass2] = "<b><span style=\"color:red;\">*</span></b>";
}
$_POST['pass1']=trim(stripslashes($_POST['pass1']));
$_POST['pass2']=trim(stripslashes($_POST['pass2']));
}
Gruß
enger-spenger
Kommentar