Ergebnis 1 bis 13 von 13
  1. #1
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    Formular wartet nicht bis es vollständig ist

    Guten Abend,
    ich habe vor kurzem mit der Hilfe von Anna meinen Shop eingerichtet,
    er ist mit einem Formular aufgebaut und sendet dann die Daten an mein E-Mail,
    ebenfalls habe ich einen formcheck nach diesem Beispiel eingerichtet SELFHTML: JavaScript / Anwendungsbeispiele / Formulareingaben überprüfen.
    DAs funktionier auch, aber wennn ich zum Beispiel den Name vergesse kommt ein Warnschild--"Sie haben den Namen vergessen" dann drücke ich auf ok und er leitet das Formular einfach weiter, ohne dass ich den Name oder sonst was einfügen kann.
    Kann mit hier jemand helfen
    [PHP]<script type="text/javascript">
    function chkFormular () {
    if (document.Formular.NameShirt.value == "") {
    alert("Bitte den Namen des T-Shirt`s eingeben!");
    document.Formular.User.focus();
    return false;
    }
    if (document.Formular.Stueck.value == "") {
    alert("Bitte die Stückzahl eingeben!");
    document.Formular.Ort.focus();
    return false;
    }
    if (document.Formular.Grousse.value == "") {
    alert("Bitte die Grösse eingeben!");
    document.Formular.User.focus();
    return false;
    }

    if (document.Formular.Name, Vorname.value == "") {
    alert("Bitte Ihre Name und Vorname eingeben!");
    document.Formular.Mail.focus();
    return false;
    }
    if (document.Formular.Wohnort.value == "") {
    alert("Bitte Ihren Wohnort eingeben!");
    document.Formular.User.focus();
    return false;
    }
    if (document.Formular.Ort, Postleitzahl.value == "") {
    alert("Bitte den Ort und Postleitzahl eingeben!");
    document.Formular.User.focus();
    return false;
    }
    if (document.Formular.Land.value == "") {
    alert("Bitte Ihr Land eingeben!");
    document.Formular.User.focus();
    return false;
    }
    if (document.Formular.Telefon.value == "") {
    alert("Bitte Ihre Telefonnummer eingeben!");
    document.Formular.User.focus();
    return false;
    }
    if (document.Formular.default_email_from.value == "") {
    alert("Bitte Ihre E-Mail-Adresse eingeben!");
    document.Formular.Mail.focus();
    return false;
    }
    if (document.Formular.default_email_from.value.indexOf("@") == -1) {
    alert("Keine E-Mail-Adresse!");
    document.Formular.Mail.focus();
    return false;
    }
    }
    </script>
    Geändert von Jonas23 (19-01-2011 um 17:40 Uhr)

  2. #2
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    Ich habe gerade ein bisschen rumprobiert (tut mir leid, wenn du jetzt ein paar Mails bekommst, in denen in den Feldern gar nichts steht).
    Du produzierst Fehler! Es gibt kein Feld mit dem Namen "User". Du musst schon existierende Felder fokusieren (also die, die du auch in deiner if-Bedingung abfragst). Dann geht's auch.

    PS: Namen sollten nur Buchstaben, Zahlen (nicht am Anfang) und "_" enthalten.
    PPS: Deine Seite ist immer noch nicht valide.
    Geändert von kkapsner (23-02-2009 um 00:54 Uhr)

  3. #3
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    Zitat Zitat von kkapsner Beitrag anzeigen
    Ich habe gerade ein bisschen rumprobiert (tut mir leid, wenn du jetzt ein paar Mails bekommst, in denen in den Feldern gar nichts steht).
    Du produzierst Fehler! Es gibt kein Feld mit dem Namen "User". Du musst schon existierende Felder fokusieren (also die, die du auch in deiner if-Bedingung abfragst). Dann geht's auch.

    PS: Namen sollten nur Buchstaben, Zahlen (nicht am Anfang) und "_" enthalten.
    PPS: Deine Seite ist immer noch nicht valide.
    Aber ich habe doch gar kein Feld mit User und im input name habe ich auch keine zahlen mehr

    ebenfalls gibt mir der validome an:"Im Dokument befindet sich in Zeile 42 und Spalte 24 ein ungültiges Zeichen" jedenfalss finde ich die nicht.

    Vielen Dank

  4. #4
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    Das ist ja gerade das Problem, dass du kein Feld User hast.
    Du hast aber noch Leerzeichen und Kommata in deinen Namen.

    Zu dem ungültigen Zeichen:
    Unterschied: Inhalt von Script- und Style-Bereichen
    In HTML 4.0 ist der Inhalt der Elemente script und style als "CDATA" festgelegt, während er in XHTML als "PCDATA" behandelt wird. Im Klartext bedeutet das, dass bei HTML 4.0 innerhalb eines Script-Bereichs oder Style-Bereichs HTML-eigene Zeichen wie <, >, & und " nicht maskiert werden müssen. Nicht so in XHTML. Wenn Sie beispielsweise in einem JavaScript innerhalb einer Bedingung vergleichen, ob ein Wert kleiner oder größer als ein anderer Wert ist, müssen Sie die spitzen Klammern außerhalb einer Zeichenkette notieren und können sie daher an der Stelle auch nicht maskieren. Um das Problem zu lösen, können Sie das Script in einen CDATA-Abschnitt anschließen. Dies ist eine XML-typische Notation.

    Da XML-Parser HTML-Kommentare (und damit auch den enthaltenen JavaScript-Code) entfernen dürfen, sollte auf die früher übliche Auskommentierung des Scripts verzichtet werden, die für die heute verwendeten Browser auch nicht mehr erforderlich ist.

    Beispiel für HTML 4.01:
    <script type="text/javascript">
    <!--
    /* JavaScript-Kommentar: jetzt folgt ein kleines Script */
    if (parseInt(navigator.appVersion) < 5)
    alert("Oh, ein sehr alter Browser");
    /* und damit ist das Script auch schon zu ende */
    //-->
    </script>
    Code in Zwischenablage kopieren
    Entsprechendes Beispiel für XHTML 1.0:
    <script type="text/javascript">
    /* <![CDATA[ */
    /* JavaScript-Kommentar: jetzt folgt ein kleines Script */
    if (parseInt(navigator.appVersion) < 5)
    alert("Oh, ein sehr alter Browser");
    /* und damit ist das Script auch schon zu ende */
    /* ]]> */
    </script>

  5. #5
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    So jetzt hab' ich mal deine Prüffunktion "etwas" umgeschrieben - sollte nach erfolgreicher Korrektur der zwei Namen funktionieren:
    Code:
    function chkFormular(){
    	var prueflinge = new Array(
    		{
    			node: document.Formular.NameShirt,
    			re: /./,
    			alertText: "Bitte den Namen des T-Shirt`s eingeben!"
    		},
    		{
    			node: document.Formular.Stueck,
    			re: /./,
    			alertText: "Bitte die Stückzahl eingeben!"
    		},
    		{
    			node: document.Formular.Grousse,
    			re: /./,
    			alertText: "Bitte die Grösse eingeben!"
    		},
    		{
    			node: document.Formular.NameVorname, //Dem Feld bitte einen neue Namen geben, z.B. diesen
    			re: /./,
    			alertText: "Bitte Ihre Name und Vorname eingeben!"
    		},
    		{
    			node: document.Formular.Wohnort,
    			re: /./,
    			alertText: "Bitte Ihren Wohnort eingeben!"
    		},
    		{
    			node: document.Formular.OrtPostleitzahl, //Dem Feld bitte einen neue Namen geben, z.B. diesen
    			re: /./,
    			alertText: "Bitte den Ort und Postleitzahl eingeben!"
    		},
    		{
    			node: document.Formular.Land,
    			re: /./,
    			alertText: "Bitte Ihr Land eingeben!"
    		},
    		{
    			node: document.Formular.Telefon,
    			re: /./,
    			alertText: "Bitte Ihre Telefonnummer eingeben!"
    		},
    		{
    			node: document.Formular.default_email_from,
    			re: /./,
    			alertText: "Bitte Ihre E-Mail-Adresse eingeben!"
    		},
    		{
    			node: document.Formular.default_email_from,
    			re: /@/,
    			alertText: "Keine E-Mail-Adresse!"
    		},
    	);
    	for (var i = 0; i < pruefling.length; i++){
    		if (!prueflinge[i].re.test(prueflinge[i].node.value)){
    			alert(prueflinge[i].alertText);
    			prueflinge[i].node.focus();
    			return false;
    		}
    	}
    }

  6. #6
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    Zitat Zitat von kkapsner Beitrag anzeigen
    So jetzt hab' ich mal deine Prüffunktion "etwas" umgeschrieben - sollte nach erfolgreicher Korrektur der zwei Namen funktionieren:
    Code:
    function chkFormular(){
    	var prueflinge = new Array(
    		{
    			node: document.Formular.NameShirt,
    			re: /./,
    			alertText: "Bitte den Namen des T-Shirt`s eingeben!"
    		},
    		{
    			node: document.Formular.Stueck,
    			re: /./,
    			alertText: "Bitte die Stückzahl eingeben!"
    		},
    		{
    			node: document.Formular.Grousse,
    			re: /./,
    			alertText: "Bitte die Grösse eingeben!"
    		},
    		{
    			node: document.Formular.NameVorname, //Dem Feld bitte einen neue Namen geben, z.B. diesen
    			re: /./,
    			alertText: "Bitte Ihre Name und Vorname eingeben!"
    		},
    		{
    			node: document.Formular.Wohnort,
    			re: /./,
    			alertText: "Bitte Ihren Wohnort eingeben!"
    		},
    		{
    			node: document.Formular.OrtPostleitzahl, //Dem Feld bitte einen neue Namen geben, z.B. diesen
    			re: /./,
    			alertText: "Bitte den Ort und Postleitzahl eingeben!"
    		},
    		{
    			node: document.Formular.Land,
    			re: /./,
    			alertText: "Bitte Ihr Land eingeben!"
    		},
    		{
    			node: document.Formular.Telefon,
    			re: /./,
    			alertText: "Bitte Ihre Telefonnummer eingeben!"
    		},
    		{
    			node: document.Formular.default_email_from,
    			re: /./,
    			alertText: "Bitte Ihre E-Mail-Adresse eingeben!"
    		},
    		{
    			node: document.Formular.default_email_from,
    			re: /@/,
    			alertText: "Keine E-Mail-Adresse!"
    		},
    	);
    	for (var i = 0; i < pruefling.length; i++){
    		if (!prueflinge[i].re.test(prueflinge[i].node.value)){
    			alert(prueflinge[i].alertText);
    			prueflinge[i].node.focus();
    			return false;
    		}
    	}
    }


    genau so hab ich das jetzt umgesezt, jedoch führt er die Bestellung ohne zu überprüfen aus, dein ersten beitrag könntest du mir den nochmals erklären vielen dank

    PHP-Code:
    <script type="text/javascript">
    function 
    chkFormular(){
        var 
    prueflinge = new Array(
            {
                
    nodedocument.Formular.NameShirt,
                
    re: /./,
                
    alertText"Bitte den Namen des T-Shirt`s eingeben!"
            
    },
            {
                
    nodedocument.Formular.Stueck,
                
    re: /./,
                
    alertText"Bitte die Stückzahl eingeben!"
            
    },
            {
                
    nodedocument.Formular.Grousse,
                
    re: /./,
                
    alertText"Bitte die Grösse eingeben!"
            
    },
            {
                
    nodedocument.Formular.Name
                
    re: /./,
                
    alertText"Bitte Ihre Name und Vorname eingeben!"
            
    },
            {
                
    nodedocument.Formular.Wohnort,
                
    re: /./,
                
    alertText"Bitte Ihren Wohnort eingeben!"
            
    },
            {
                
    nodedocument.Formular.Ort,
                
    re: /./,
                
    alertText"Bitte den Ort und Postleitzahl eingeben!"
            
    },
            {
                
    nodedocument.Formular.Land,
                
    re: /./,
                
    alertText"Bitte Ihr Land eingeben!"
            
    },
            {
                
    nodedocument.Formular.Telefon,
                
    re: /./,
                
    alertText"Bitte Ihre Telefonnummer eingeben!"
            
    },
            {
                
    nodedocument.Formular.default_email_from,
                
    re: /./,
                
    alertText"Bitte Ihre E-Mail-Adresse eingeben!"
            
    },
            {
                
    nodedocument.Formular.default_email_from,
                
    re: /@/,
                
    alertText"Keine E-Mail-Adresse!"
            
    },
        );
        for (var 
    0pruefling.lengthi++){
            if (!
    prueflinge[i].re.test(prueflinge[i].node.value)){
                
    alert(prueflinge[i].alertText);
                
    prueflinge[i].node.focus();
                return 
    false;
            }
        }
    }
    </script> 

  7. #7
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    Ups - da ist ein Fehler in meinem Script:
    Code:
    function chkFormular(){
        var prueflinge = new Array(
            {
                node: document.Formular.NameShirt,
                re: /./,
                alertText: "Bitte den Namen des T-Shirt`s eingeben!"
            },
            {
                node: document.Formular.Stueck,
                re: /./,
                alertText: "Bitte die Stückzahl eingeben!"
            },
            {
                node: document.Formular.Grousse,
                re: /./,
                alertText: "Bitte die Grösse eingeben!"
            },
            {
                node: document.Formular.Name, 
                re: /./,
                alertText: "Bitte Ihre Name und Vorname eingeben!"
            },
            {
                node: document.Formular.Wohnort,
                re: /./,
                alertText: "Bitte Ihren Wohnort eingeben!"
            },
            {
                node: document.Formular.Ort,
                re: /./,
                alertText: "Bitte den Ort und Postleitzahl eingeben!"
            },
            {
                node: document.Formular.Land,
                re: /./,
                alertText: "Bitte Ihr Land eingeben!"
            },
            {
                node: document.Formular.Telefon,
                re: /./,
                alertText: "Bitte Ihre Telefonnummer eingeben!"
            },
            {
                node: document.Formular.default_email_from,
                re: /./,
                alertText: "Bitte Ihre E-Mail-Adresse eingeben!"
            },
            {
                node: document.Formular.default_email_from,
                re: /@/,
                alertText: "Keine E-Mail-Adresse!"
            }
        );
        for (var i = 0; i < prueflinge.length; i++){
            if (!prueflinge[i].re.test(prueflinge[i].node.value)){
                alert(prueflinge[i].alertText);
                prueflinge[i].node.focus();
                return false;
            }
        }
    }
    Und default_email_from ist zweimal vorhanden, deswegen nenn das Feld doch einfach nur email.

  8. #8
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    uuh viielen Dank
    was wäre ich nur ohne dich

    nun nur noch eine letzte frage über die grösse des designs
    heute hab ich die website in der schule angeschaut und sie war total verzogen was muss ich tun damit sie auf jedem bildschirm konstant ist

    vielen dank nochmals

  9. #9
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    Bitte, gern geschehen.

    Also ich finde ja das Design mit einem Hintergrundbild zu lösen prinzipiell nicht ideal, aber du musst deinem Bild eine feste Breite/Höhe geben, damit das Dasign nicht von der Browserfenstergröße abhängig ist.

  10. #10
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    Zitat Zitat von kkapsner Beitrag anzeigen
    Bitte, gern geschehen.

    Also ich finde ja das Design mit einem Hintergrundbild zu lösen prinzipiell nicht ideal, aber du musst deinem Bild eine feste Breite/Höhe geben, damit das Dasign nicht von der Browserfenstergröße abhängig ist.

    eben aus diesem grund wollte ich dich fragen was du vorschlägst

  11. #11
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    Zitat Zitat von Jonas23 Beitrag anzeigen
    eben aus diesem grund wollte ich dich fragen was du vorschlägst

    ich habe das design jetzt mal gesliced und auf 1280*608 gesezt
    jetzt gib es aber bei grösseren bidlschirmen einen rand

  12. #12
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Formular wartet nicht bis es vollständig ist

    Also ich bin jetzt kein Webdesigner. Wie man so ein "durchgestyltes" Layout ideal positioniert, weiß ich nicht.
    Ich würde zuerst einmal den Hintergrund auch in den Hintergrund verbannen (also mit background-image) und dann die Buttons nicht mit einer Map, sondern hald Divs, die auch einen Hintergrund haben, usw.
    Das Ganze hald in seine Einzelteile zuerlegen und dann vom HTML/CSS wieder zusammensetzten lassen.

    Am besten, du fragst jemanden aus dem HTML/CSS-Forum nach einem guten Tutorial.

  13. #13
    Jonas23 ist offline Doppel-As
    registriert
    16-02-2009
    Ort
    Zürich
    Beiträge
    140

    AW: Formular wartet nicht bis es vollständig ist

    Das mit dem Map habe ich bereits ersezt.
    Ok werde mich mal weiter um hören.
    Wollte mich nochmals bei dir bedanken
    Geändert von Jonas23 (24-02-2009 um 20:45 Uhr)

Ähnliche Themen

  1. Formular wird im Hintergrund ausgeführt
    Von Royy im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 10-10-2007, 20:11
  2. Antworten: 10
    Letzter Beitrag: 06-12-2005, 14:59
  3. Formular an Formular übergeben
    Von heidiland im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 21-06-2004, 22:16
  4. Formular im Formular
    Von G4m813R im Forum Allgemeines
    Antworten: 11
    Letzter Beitrag: 20-04-2004, 14:19
  5. Datum formatieren
    Von DejanX im Forum Serverseitige Programmierung
    Antworten: 3
    Letzter Beitrag: 18-06-2002, 13:20

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •