ich habe eine Seite write.php dort soll man die Formularfelder ausfüllen. Kann mir jemand meinen Code umbauen, dass PHP die Felder überprüft? Und vieleicht noch mit einem Bild mit buchstaben und zahlen dirn die man abschrieben muss.
Ja… hmm ich weis nicht wie ich ihn einbauen soll… und die e-mail adresse wird auch nicht auf: @ und . geprüft… und n Bildchen zum abschreiben ist auch nicht dabei…
Kennst Du dich überhaupt in irgendeiner Art und Weise mit php aus ??
schonmal etwas von nem „else“ Zwei gehört und von nem Header ??
[PHP]
<?php
if(!empty($name) && !empty($vorname) && !empty($strasse) && !empty($hnr) && !empty($plz) && !empty($ort) && !empty($handy) && checkMail($mail) && !empty($benutzername))
{
// hier gehts dann weiter aber jetzt musst du noch auf der jeweiligen seite halt ne ueberpruefung machen,
// ob das formular wirklich gesendet ist ( weil man sonst die seite einfach so aufrufen kann ohne das forumlar zu senden)
header("Location: deineSeite.php?sec=ok");
}
else
{
header("Location: deineSeite.php");
}
?>
<?php
// prueft die mail und checkt ob die domain der mail erreichbar ist !
function checkMail($mail)
{
if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $string)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)/',$string)) )
{
$host = explode('@', $string);
if(!function_exists('checkdnsrr'))
{
function checkdnsrr($host, $type = '')
{
if(!empty($host))
{
if($type == '')
{
$type = "MX";
}
@exec("nslookup -type=$type $host", $output);
while(list($k, $line) = each($output))
{
if(eregi("^$host", $line))
{
return true;
}
}
return false;
}
}
}
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
return false;
}
}
if(isset($_POST['sender']))
{
// entfernt die whitespaces vor und nach der eingabe
// so verhinderst du, das einer ein leeres feld mit whitespaces abschickt
$name = trim($_POST['name']);
$vorname = trim($_POST['vorname']);
$strasse = trim($_POST['strasse']);
$hnr = trim($_POST['hnr']);
$plz = trim($_POST['plz']);
$ort = trim($_POST['ort']);
$handy = trim($_POST['handy']);
$mail = trim($_POST['mail']);
$benutzername = trim($_POST['benutzername']);
if(!empty($name) && !empty($vorname) && !empty($strasse) && !empty($hnr) && !empty($plz) && !empty($ort) && !empty($handy) && checkMail($mail) && !empty($benutzername))
{
// hier gehts dann weiter aber jetzt musst du noch auf der jeweiligen seite halt ne ueberpruefung machen,
// ob das formular wirklich gesendet ist ( weil man sonst die seite einfach so aufrufen kann ohne das forumlar zu senden)
header("Location: index.php?sec=ok");
}
else
{
header("Location: index.php?sec=write");
}
?>
Unbenanntes Dokument
">
<?php
// prueft die mail und checkt ob die domain der mail erreichbar ist !
function checkMail($mail)
{
if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $string)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)/',$string)) )
{
$host = explode('@', $string);
if(!function_exists('checkdnsrr'))
{
function checkdnsrr($host, $type = '')
{
if(!empty($host))
{
if($type == '')
{
$type = "MX";
}
@exec("nslookup -type=$type $host", $output);
while(list($k, $line) = each($output))
{
if(eregi("^$host", $line))
{
return true;
}
}
return false;
}
}
}
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
return false;
}
}
if(isset($_POST['sender']))
{
// entfernt die whitespaces vor und nach der eingabe
// so verhinderst du, das einer ein leeres feld mit whitespaces abschickt
$name = trim($_POST['name']);
$vorname = trim($_POST['vorname']);
$strasse = trim($_POST['strasse']);
$hnr = trim($_POST['hnr']);
$plz = trim($_POST['plz']);
$ort = trim($_POST['ort']);
$handy = trim($_POST['handy']);
$mail = trim($_POST['mail']);
$benutzername = trim($_POST['benutzername']);
if(!empty($name) && !empty($vorname) && !empty($strasse) && !empty($hnr) && !empty($plz) && !empty($ort) && !empty($handy) && checkMail($mail) && !empty($benutzername))
{
// hier gehts dann weiter aber jetzt musst du noch auf der jeweiligen seite halt ne ueberpruefung machen,
// ob das formular wirklich gesendet ist ( weil man sonst die seite einfach so aufrufen kann ohne das forumlar zu senden)
header("Location: index.php?sec=ok");
}
else
{
header("Location: index.php?sec=write");
}
}
?>
Unbenanntes Dokument
">