Bin am Verzweifeln

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bin am Verzweifeln

    Mein Warenkorb macht was er will.
    Bevor die Bestellung abgesand werden soll, soll überprüft werden ob alle Felder augefüllt wurden.
    Habe auch ein JavaScript das dies übernehmen soll, aber es wird ohne überprüfung die Mail versand. Was ist hier verkehrt?
    Hier ein Auszug aus dem Script:
    Code:
    print "<script LANGUAGE='JavaScript'>";
    print "function pruefen() {";
    print "if (document.forms[0].elements[0].value == ''){";
    print "alert('\nBitte geben Sie Ihren Namen an.');";
    print "document.forms[0].elements[0].focus();";
    print "return false;";
    print "}";
    print "if (document.forms[0].elements[1].value == ''){";
    print "alert('\nBitte geben Sie Ihren Nachnamen an.');";
    print "document.forms[0].elements[1].focus();";
    print "return false;";
    print "}";
    print "if (document.forms[0].elements[2].value == ''){";
    print "alert('\nBitte geben Sie Ihren Strasse an.');";
    print "document.forms[0].elements[2].focus();";
    print "return false;";
    print "}";
    print "if (document.forms[0].elements[3].value == ''){";
    print "alert('\nBitte geben Sie Ihren Postleitzahl an.');";
    print "document.forms[0].elements[3].focus();";
    print "return false;";
    print "}";
    print "if (document.forms[0].elements[4].value == ''){";
    print "alert('\nBitte geben Sie Ihren Ort an.');";
    print "document.forms[0].elements[4].focus();";
    print "return false;";
    print "}";
    print "if (document.forms[0].elements[7].value.indexOf ('@',0) == -1 ||";
    print "document.forms[0].elements[7].value.indexOf ('.',0) == -1){";
    print "alert('\nDieses Feld benötigt ein @-Zeichen und einen \'.\'  +";
    print "\nBitte korregieren Sie Ihre Eingaben.')";
    print "document.forms[0].elements[7].select();";
    print "document.forms[0].elements[7].focus();";
    print "return false;";
    print "}";
    print "}";
    print "</script>"; 
    print "</head>";
    print "<body bgcolor='$bgc' link='$sfl' alink='$sfa' vlink='$sfb'>";
    $db = mysql_connect("$MySQL_Host","$MySQL_User","$MySQL_Passw") or die (mysql_error());
    mysql_select_db("$MySQL_Data");
    $res = mysql_query("SELECT * FROM korb where SessionID='$sid'") or die (mysql_error());
    $num = mysql_num_rows($res);
    
    if ($num == 0)
    {
    print "<font face='$ff' size='2'>Ihr Warenkorb ist leer.</font>";
    }
    else
    {
    print "<$ffa>Lieferanschrift<$ffe><br><br>";
    print "<form action='mail.php' method='POST' onSubmit='return pruefen()'>";
    print "<table width='50%' border='0'>";
    print "<tr><td width='15%'><$ffa>Vorname:<$ffe></td><td width='35%'><input type='text' name='Vorname'></td></tr>";
    print "<tr><td width='15%'><$ffa>Nachname:<$ffe></td><td width='35%'><input type='text' name='Nachname'></td></tr>";
    print "<tr><td width='15%'><$ffa>Strasse:<$ffe></td><td width='35%'><input type='text' name='Strasse'></td></tr>";
    print "<tr><td width='15%'><$ffa>Postleitzahl:<$ffe></td><td width='35%'><input type='text' name='PLZ'></td></tr>";
    print "<tr><td width='15%'><$ffa>Ort:<$ffe></td><td width='35%'><input type='text' name='Ort'></td></tr>";
    print "<tr><td width='15%'><$ffa>Telefon:<$ffe></td><td width='35%'><input type='text' name='Telefon'></td></tr>";
    print "<tr><td width='15%'><$ffa>Fax:<$ffe></td><td width='35%'><input type='text' name='Fax'></td></tr>";
    print "<tr><td width='15%'><$ffa>eMail:<$ffe></td><td width='35%'><input type='text' name='beMail'></td></tr>";
    print "<tr><td width='15%'><$ffa>Kommentar:<$ffe></td><td><textarea rows='3' name='Kommentar' cols='20'></textarea>";
    print "</table>"; 
    print "<input type='submit' name='bestellen' value='bestellen' style='font-family: $ff; font-size: 8pt'>";
    print "<input type='hidden' name='F1' value='$sid'>";
    print "</form>";
    Wer kann helfen?

    Cu
    Gilbert
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    ???

    Und warum machst du das ganze nicht schneller für den User, einfacher für dich und platzsparender mit PHP???

    Hier ein Beispiel wie du das machen könntest:

    Es wird abgesendet. click.

    Überprüfung:
    Code:
    if (!$bla || !$bla2 || !$bla3) {
    echo"
    So und jetzt kommts:
    Du machst das gleiche Form wie auf der vorhergehenden Seite aber:

    du machst in die value-Felder die jeweilige Variable rein und die Beschreibung des Feldes, die der Benutzer sieht, wie ich jetzt zum Beispiel neben dem Eingabefeld "Deine Antwort:" machst du folgendes:

    Code:
    if(!$variable){echo"<b><i><color=red>";}
    echo"Deine Antwort:";
    if(!$variable){echo"</b></i></color>";}
    Jetzt kommt der Rest:
    Code:
    }
    else {
    Hier kommt hin, was kommen soll, wenn der User alles richtig gemacht hat
    "Computers in the future may weigh no more than 1.5 tons."
    - Popular Mechanics magazine
    1949

    Kommentar


    • #3
      Das läuft bei mir anders.

      Ich lass den User nicht durch mehrere Seiten laufen, sondern der User kann in aller Ruhe den Warenkorb füllen und zum Schluß muß der User nur noch seine Angaben machen und beim click auf den Bestellbutton soll nun überprüft ob alle Felder ausgefüllt sind und nur dann soll die eMail abgeschickt werden, ansonsten soll der User eine Meldung bekommen das ein Feld nicht ausgefüllt ist.

      cu
      Gilbert
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        Naja - aber schau mal... die Nachteile, die du dadurch hast:


        - mehr Traffic
        - der Kunde wartet lange auf den Seitenaufbau
        - nicht erwähnenswert weniger rechenleistung
        - Browserprobleme
        - einen genervten User, der sich durch Fehlermeldungen klickt...


        Durch PHP könntest du das ganze freundlicher gestalten, ihm sagen - hey, sorry aber da fehlt noch was.
        - du sparst Traffic (ausser du hast nur völlig blöde User, die Forms nicht ausfüllen können)
        - du kannst viele Sachen einfacher machen und Fragen dazu hier stellen (is doch ein PHP-Forum und kein Javascript-forum?)
        "Computers in the future may weigh no more than 1.5 tons."
        - Popular Mechanics magazine
        1949

        Kommentar

        Lädt...
        X