php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.02.2009, 14:10  
Benutzer
 
Registriert seit: 10.10.2008
Beiträge: 51
PHP-Kenntnisse:
Anfänger
Sandraia befindet sich auf einem aufstrebenden Ast
Standard Fehlermeldung Reihenfolge

Hallo zusammen
Und schon wieder gehts um mein Formular^^
Nachdem ich einige Inputs von phpdev und paar andern gekriegt habe, hab ich mich nochmals dran gesetzt und das ganze von Grund auf neu gemacht. Jetzt klappt auch eigtl. alles was ich brauche. Nun nimmt mich nur noch eines Wunder.
Wenn man falsche (oder keine) Angaben eingibt kommen die Fehlermeldungen für jedes einzelne Feld.
z.B (oder siehe oben Link und teste schnell )
- Fehler Name
- Fehler E-Mail
- Fehler Text

Wenn ich jetzt z.B einen Namen und einen Text eingebe, verschwindet die Fehlermeldung des Namen aber nicht die des Textes...(erst wenn man auch eine E-Mail angibt).
Wie ist dabei die Logik von PHP genau?
Kriegt man das so hin, dass bei richtiger Eingabe die dazgehörige Fehlermeldung verschwindet auch wenn sie am Ende der Reihenfolge liegt?
Hier mal mein Code: (Anrede-Üperprüfung stimmt noch nicht)
Code:
<head>
<?php 
if (isset($_POST['submit']))
{
    $isOk = true;
    $fehlerMark = "fehler";
    $fehlerMarkName =  "- Bitte geben Sie ihren Namen ein.";
    $fehlerMarkEmail =  "- Bitte geben Sie ihre E-Mail-Adresse ein.";
    $fehlerMarkText =  "- Bitte geben Sie ihre Angaben im Textfeld ein.";
    

if (isset($_POST['anrede']) && !is_array($_POST['anrede']))
    {        
        $erlaubte_geschlechter = array('herr', 'frau', 0);
    
    if (in_array($_POST['anrede'], $erlaubte_geschlechter))
    {
        $eingabe['anrede'] = $_POST['anrede'];
       }
    else
    {
    }
    if ($isOk)
    {
    }
    else
    {
    $error['anrede'] = true;
    $fehlerAusgabeAnrede =  "- Bitte wählen Sie eine Anrede aus.";
    }     
    
}
    $name     =htmlentities($_POST['name']);
    if (preg_match("([a-z\-\.])",$name)=="")
    {
        $isOk = false;
        $fehlerName = $fehlerMark;
    }
    if ($isOk)
    {    
    $fehlerMarkName = "";
    }
    else ($fehlerMarkName);
    {
    }

    $email     =htmlentities($_POST['email']);
    if (preg_match("!^[a-zA-Z0-9\-_]?[a-z0-9.\-_]+[a-z0-9\-_]?@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$!",$email)=="")
    {
        $isOk = false;
        $fehlerEmail = $fehlerMark;
    }
    if ($isOk)
    {
    $fehlerMarkEmail = "";
    }
    else ($fehlerMarkEmail);
    {
    }
    
    $textfeld     =htmlentities($_POST['textfeld']);
    if (preg_match("([a-z\-\.])",$textfeld)=="")
    {
        $isOk = false;
        $fehlerText = $fehlerMark;
    }
        if ($isOk)
    {
    $fehlerMarkText = "";
    }
    else ($fehlerMarkText);
    {
    }

}
?>
</head>

<body>
<div id="wrapper">
  <div id="head_wrapper"></div>
  <div id="navi_wrapper">
  <div id="startseite"><a href="../../index.php">STARTSEITE</a> </div>
  <div id="reinigung"><a href="reinigung.php">REINIGUNG</a> </div>
  <div id="umzug"><a href="umzug.php">UMZUG</a> </div>
  <div id="kontakt"><a href="kontakt.php">KONTAKT</a> </div>
  <div id="links"><a href="links.php">LINKS</a> </div>
  <div id="gaestebuch"><a href="gaestebuch.php">GÄSTEBUCH</a> </div>
  </div>
  <div id="content_wrapper">
    <div id="box_links">
      <p>E-Mail: info@putzteamada.ch</p>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <p class="fehler_schriftfarbe">
<?php echo $fehlerMarkName ?><br />
<?php echo $fehlerMarkEmail ?><br />
<?php echo $fehlerMarkText ?><br />
</p>

    </div>
    <div id="box_rechts">
      <form action= "<?php echo $_SERVER['PHP_SELF'] ?> " method="post" id="form" name="form">
      <?php
if (isset($_POST['submit'])){
          
        $anrede=strip_tags($_POST['anrede']);
          $nachname=strip_tags($_POST['name']);
        $email=strip_tags($_POST['email']);
        $text=strip_tags($_POST['textfeld']);
      
        $recipient = "info@putzteamada.ch";
        $subject="Putzteam ADA Online Anfrage";
        $header="From: " . $_POST['email'] . "\n\n";
        $mail_body ="Die Putzteam ADA- Anfrage wurde am " . date("d.m.Y") . " um " . date("H:i") . " Uhr versendet.\n";
        $mail_body.="Folgende Angaben wurden eingetragen:\n\n";
        $mail_body.="Anrede:                 " . $anrede . "\n";
        $mail_body.="Name:                   " . $name . "\n";
        $mail_body.="E-Mail:                    " . $email . "\n";
        $mail_body.="Text:                        " . $textfeld . "\n";
        
    if ($isOk)
    {
        mail($recipient,$subject,$mail_body,$header);
    }
    else
    {
    }    
}
?>
    Frau: <input type="radio" name="anrede" <?php echo $fehlerAnrede; ?>tabindex="1" value="frau"<?php if(isset($eingabe['anrede']) && $eingabe['anrede'] == 'frau') echo ' checked="checked"'; ?> />
        Herr: <input type="radio" name="anrede" <?php echo $fehlerAnrede; ?>tabindex="2" value="herr"<?php if(isset($eingabe['anrede']) && $eingabe['anrede'] == 'herr') echo ' checked="checked"'; ?> />
        <br />
        <br />
          Name*:<br />
        <input name="name" type="text" class="login_felder <?php echo $fehlerName; ?>" id="nachname" value="<?php echo $_POST['name'] ?>"  tabindex="3"/>
        <br /> 
        <br />
        E-Mail*:<br />
        <input name="email" type="text" class="login_felder <?php echo $fehlerEmail; ?>" id="email" value="<?php echo $_POST['email'] ?>"tabindex="4" />
        <br />
        <br />
        Text*:<br />
        <textarea name="textfeld" class="login_felder_mehrzeilig <?php echo $fehlerText; ?>" id="textfeld" tabindex="5"><?php echo $_POST['textfeld'] ?></textarea>
          <br />
          <br />
        <input name="submit" type="submit" class="senden_button" id="submit" tabindex="6" value="     Senden     " />
        <br />
      </form>

    </div>
  </div>
  <div id="footer_wrapper">
  <div id="jobs"><a href="jobs.php">JOBS</a> </div>
  | 
  <div id="sitemap"><a href="sitemap.php"> SITEMAP</a> </div>
  | 
  <div id="offerte"><a href="offerte.php">OFFERTE</a> </div>
  |  
  <div id="copyright">&copy; by Putzteam ADA 2006 - 2009 </div>
  | 
  <div id="webmaster"><a href="#">WEBMASTER</a> </div>
  |  
  <div id="login"><a href="login.php">LOGIN</a></div>
  </div>
</div>

</body>
</html>
Danke schonmal für eure Bemühungen

Liebe Grüsse
Sandraia
Sandraia ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.02.2009, 14:14  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Wenn $isOk bei dir einmal auf false gesetzt wird, dann ist logisch das alle anderen Bedingungen fehlschlagen
cycap ist offline  
Alt 17.02.2009, 14:31  
Benutzer
 
Registriert seit: 10.10.2008
Beiträge: 51
PHP-Kenntnisse:
Anfänger
Sandraia befindet sich auf einem aufstrebenden Ast
Standard

Danke für deine rasche Antwort @ cycap

Ich verstehe was Du meinst...
Weiss aber nicht genau wie ich dies jetzt umsetzten kann, da $isOk doch zur "Überprüfung" verwendet wird.

Grüsschen Sandraia
Sandraia ist offline  
Alt 17.02.2009, 14:33  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Na entweder du setzt vor jeder Prüfung $isOk auf true oder du machst es gleich richtig und benutzt $isOk gar nicht sondern nutzt die eigentliche Prüfung.
cycap ist offline  
Alt 17.02.2009, 14:43  
Benutzer
 
Registriert seit: 10.10.2008
Beiträge: 51
PHP-Kenntnisse:
Anfänger
Sandraia befindet sich auf einem aufstrebenden Ast
Standard

Supaa, vielen Dank für Deine Hilfe cycap
Klappt jetzt wunderbar
(hab $isOk gleich weggelassen)

Ganz, ganz liebe Grüsse
Sandraia
Sandraia ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fehlermeldung : Call to a member function foo() on a non-object Mark Taylor PHP Tipps 2008 4 14.09.2008 20:38
Fehlermeldung umbenennen Soese PHP Tipps 2007 3 13.03.2007 13:33
script läuft und funktioniert gibt aber fehlermeldung aus? Promaetheus PHP Tipps 2006 5 12.09.2006 23:42
file_get_contents fehlermeldung abfangen? sputnik83 PHP Tipps 2006 6 05.07.2006 15:35
Reihenfolge der Tabellen-Spalten durch User wählbar? RoDa PHP Tipps 2006 4 18.06.2006 16:40
Falsche Reihenfolge Chrescht PHP Tipps 2006 7 26.01.2006 18:15
Fehlermeldung PHP Tipps 2005-2 2 04.09.2005 04:04
Ich will Fehlermeldung vermeiden. Zero.exe PHP Tipps 2005-2 2 02.08.2005 13:11
fragwürdige Fehlermeldung PHP Tipps 2005 5 19.05.2005 15:45
sortierverfahren mit selbst festgelegter reihenfolge PHP Tipps 2004-2 2 18.12.2004 03:04
Script bei Strato mit Fehlermeldung, bei Netbeat ok PHP Tipps 2004-2 14 08.12.2004 11:08
templates werden in der falschen reihenfolge angezeigt PHP-Fortgeschrittene 5 29.10.2004 04:16
template blöcke werden in falscher Reihenfolge angezeigt PHP Tipps 2004 4 28.10.2004 16:42
template blöcke werden in falscher reihenfolge angezeigt! PHP Tipps 2004 0 26.10.2004 17:39
[Erledigt] Reihenfolge des Resultset bei Verwendung von ..WHERE a IN () Datenbanken 3 29.07.2004 16:02

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php mail reihenfolge, php fehlermeldung im eingabefeld, html textfeld [a-z], php echo reihenfolge, $_post reinigen, php texteingabe fehlermeldung, putzteam ada, fehlermeldung php bei texteingaben, reihenfolge email von formular html, php meldung mit texteingabe, reihenfolge in php formular, textfeld strip_tags, php reihenfolge eingaben, kontakt mit php die eingabe bei fehler, preg_match textfelder, mailer post reihenfolge php, php \if reihenfolge\, php fehlermeldung falsche eingabe, formular falsche reihenfolge in email, if post submit gehe zu

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:18 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum