[JavaScript] Wie lautet der JavaScript Code für diesen PHP Code?

Dieses Thema im Forum "Webentwicklung" wurde erstellt von ibot, 10. April 2009 .

  1. 10. April 2009
    Wie lautet der JavaScript Code für diesen PHP Code?

    Hi ich schon wieder,

    ich hab da noch eine Frage.
    Ich möchte überprüfen ob ein Datum richtig ist und ebenso gültig ist.
    Der PHP Code würde ja wiefolgt lauten und funktioniert auch ganz gut:

    PHP:
    if( eregi ( "^[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{4}$" $datum )) {
        echo 
    "Ein korrektes Darum!<br />" ;
        
        if(
    checkdate ( $monat $tag $jahr )){
            echo 
    "Ein gültiges Datum" ;
        }else{
            echo 
    "Ein ungültiges Datum" ;
        }
    } else {
        echo 
    "Ein falsches Datum" ;
    }
    Wie könnte man das in JavaScript umsetzen???


    Vielen Dank für eure Antworten!
     
  2. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Bevor wir den Javascriptteil angehen. Der PHP Teil ist doch eigentlich doppelt gemoppelt?
    Einmal überprüfst du mit RegEx. das Datum und dann nochmal mit der von PHP vorgefertigten Funktion checkdate. Eins von beidem reicht soweit und das liegt auf der Hand, dass checkdate einfach in der Anwendung ist. ^^


    Und bevor du dir etwas selber bastelst. Schau mal hier vorbei. Hier sind sehr viele Funktionen von PHP bereits für Javascript erstellt worden. Auch checkdate

    checkdate

    Gibt dann halt true or false zurück.
     
  3. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Naja so ganz doppelt ist das nicht.

    Die erste if Bedingung püft ja meines Wissens nach nur ob das richtig Format existiert.

    So wäre es dann aber auch möglich das sinnlose Eingaben wie 35.04.2009 kommen.

    Naja und diese Eingaben werden dann nochmal mit checkdate auf ihre Existenz geprüft.

    Oder seh ich das falsch?



    Aso und danke für den Link.
    Nur eine Frage dazu. Muss ich da noch was für Javascript importieren oder sind die Funktionen automatisch eingebettet?
    Wenn ja wie implementiert man das php.js File konnte auf der Seite nix finden.
     
  4. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Ok hab das ganze mal versucht einzubauen:

    PHP:
    < html >
        <
    head >
            <
    script src = "php.js"  type = "text/javascript" >

                function 
    chkFormular  () {
                 
                    if (
    document . Formular . gebDat . value  ==  "" ) {
                        
    alert ( "Bitte Ihr Geburtsdatum eingeben!" );
                        
    document . Formular . gebDat . focus ();
                        return 
    false ;
                    }

                    var 
    datum  document . Formular . gebDat . value ;
                    var 
    bereiche  datum . split ( "." );

                    var 
    tag  bereiche [ 0 ];
                    var 
    monat  bereiche [ 1 ];
                    var 
    jahr  bereiche [ 2 ];

                    if (
    checkdate ( monat tag jahr ) ==  false ){
                        
    alert ( "Bitte ein gültiges Datum eingeben!" );
                        
    document . Formular . gebDat . focus ();
                        return 
    false ;
                    }
             </
    script >
        </
    head >
        <
    body >
               <
    form name = "Formular"  method = "GET"  action = "out.php"
                      
    onsubmit = "return chkFormular()" >
                   <
    input name = "gebDat"  size = "20" >

                   <
    input type  "submit"  value = "prüfen" >
               </
    form >
         </
    body >
    </
    html >
    Nur es funktioniert leider nicht.
    Er geht immer gleich weiter zu der out.php so als würde er garnicht erst die Funktion chkFormular() ausführen oder als wenn da irgendwo gleich true zurückgeliefert wird.

    Kann mir jemand sagen wo der Fehler leigt???

    Vielen Dank!!!
     
  5. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    du musst die funktion checkdate auch erst definieren
     
  6. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    HTML:
    <script src="php.js" type="text/javascript">
    
    function checkdate( month, day, year ) {
     // http://kevin.vanzonneveld.net
     // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
     // + improved by: Pyerre
     // * example 1: checkdate(12, 31, 2000);
     // * returns 1: true
     // * example 2: checkdate(2, 29, 2001);
     // * returns 2: false
     // * example 3: checkdate(03, 31, 2008);
     // * returns 3: true
     // * example 4: checkdate(1, 390, 2000);
     // * returns 4: false
     
     var myDate = new Date();
     myDate.setFullYear( year, (month - 1), day );
     
     return ((myDate.getMonth()+1) == month && day<32); 
    }
    
    
     function chkFormular () {
     
     if (document.Formular.gebDat.value == "") {
     alert("Bitte Ihr Geburtsdatum eingeben!");
     document.Formular.gebDat.focus();
     return false;
     }
    
     var datum = document.Formular.gebDat.value;
     var bereiche = datum.split(".");
    
     var tag = bereiche[0];
     var monat = bereiche[1];
     var jahr = bereiche[2];
    
     if (checkdate(monat, tag, jahr) == false){
     alert("Bitte ein gültiges Datum eingeben!");
     document.Formular.gebDat.focus();
     return false;
     }
     </script> 
    Hast wohl die Funktion was hacker5 gepostet hat übersehen.
     
  7. 11. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Nein hatte ich nicht übersehen.

    So wie du meinst hab ich es auch schon versucht nur ist da folgendes Problem:

    In der php.js ist zwar die checkdate() Funktion enthalten dafür aber die chkFormular() Funktion nicht.


    Deswegen kann ich das leider so nicht machen. Zumindest hat es so nicht funktionieren wollen.
     
  8. 13. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Die chkFormular() funktion ist doch von dir definiert!
    und davor lädst du einfach die php.js und schon sollt es gehen....

    HTML:
     <script src="php.js" type="text/javascript"> </script>
     <script type="text/javascript"> 
    
     function chkFormular () { 
     
     if (document.Formular.gebDat.value == "") { 
     alert("Bitte Ihr Geburtsdatum eingeben!"); 
     document.Formular.gebDat.focus(); 
     return false; 
     } 
    
     var datum = document.Formular.gebDat.value; 
     var bereiche = datum.split("."); 
    
     var tag = bereiche[0]; 
     var monat = bereiche[1]; 
     var jahr = bereiche[2]; 
    
     if (checkdate(monat, tag, jahr) == false){ 
     alert("Bitte ein gültiges Datum eingeben!"); 
     document.Formular.gebDat.focus(); 
     return false; 
     } 
     </script>
    
     
  9. 13. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Man "includiert" die php.js..Dennoch muss man die checkdate funktion definieren.

    Sodele:
    HTML:
    <script src="php.js" type="text/javascript"> </script>
    
    
    <script type="text/javascript">
    function checkdate( month, day, year ) {
     var myDate = new Date();
     myDate.setFullYear( year, (month - 1), day );
     
     return ((myDate.getMonth()+1) == month && day<32); 
    }
    
    
     function checkForm() { 
     
     if (document.Formular.gebDat.value == "") { 
     alert("Bitte Ihr Geburtsdatum eingeben!"); 
     document.Formular.gebDat.focus(); 
     return false; 
     } 
     
    var datum = document.Formular.gebDat.value; 
     var bereiche = datum.split("."); 
     var tag = bereiche[0]; 
     var monat = bereiche[1]; 
     var jahr = bereiche[2]; 
     var jahr = bereiche[2]; 
     
     
     if (checkdate(monat, tag, jahr) == false){ 
     alert("Bitte ein gültiges Datum eingeben!"); 
     document.Formular.gebDat.focus(); return false; 
     }
     
     
     } 
     </script>
     
    
     
     <form name="Formular" method="post" action="checkdate.php" onSubmit="return checkForm();">
     <input type="text" name="gebDat">
     <input type="submit" >
     </form>
    

    Immer schön auf alle Klammer Enden achten.
    Und mit dem Script Tag nur eins machen. Entweder eine Datei laden oder code rein schreiben.
    Beides zusammen geht nicht.
     
  10. 13. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Schwachsinn!

    In der php.js ist diese Funktion bereits definiert.
    Eine redefinittion ergibt einen Fehler (bei php dublicate function).
    Es reicht die php.js zu includieren und dann seine eigene Funktion auf die dort erstellten funktionen anzuwenden.
     
  11. 13. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Woha reg dich mal ab junge. Das kann man einem auch anders sagen.
    Hab mich auf die Aussagen der anderen User verlassen. Und bei eine Redefinition funktioniert das ganze trotzdem also...


    Jedoch funktioniert deine Funktion auch nicht, da der Herr nicht alle Klammern geschlossen hat
     
  12. 14. April 2009
    AW: Wie lautet der JavaScript Code für diesen PHP Code?

    Ich hab mich nich aufgeregt, keine Sorge
    Das is dick und unterstrichen, weil er einfach nich alles glauben soll was man ihm so sagt.
    Und das seine Funktion nicht geht hab ich nicht gecheckt, ich dacht wenigstens das schafft er^^
    Aber sorry dass es so rüberkam als würd ich dich "angreifen" oder sowas in der Art, das wollte ich nicht *friede* ^^
     
  13. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.