SQL Abfrage im Java script?

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

  • SQL Abfrage im Java script?

    Hi
    Also folgendes Problem: Ich habe bei einem Registrations Modul von einem CMS eine weitere Abfrage eingebaut, nämlich eine Code Abfrage. Diesen Code, den er vergleicht, der steht jetzt aber im Quellltext, ich möchte aber, dass er den Code von einer Datenbank überprüft. Ich zeig euch einfach mal nen Ausschnitt aus dem Quelltext:

    PHP-Code:
    <?php
    <script language="javascript" type="text/javascript">
            function 
    submitbutton() {
                var 
    form document.mosForm;
                var 
    = new RegExp("[\<|\>|\"|\'|\%|\;|\(|\)|\&|\+|\-]""i");
                var 
    code "20501";

                
    // do field validation
                
    if (form.name.value == "") {
                    
    alert"<?php echo html_entity_decode(_REGWARN_NAME);?>" );
                } else if (
    form.username.value == "") {
                    
    alert"<?php echo html_entity_decode(_REGWARN_UNAME);?>" );
                } else if (
    form.code.value != code) {
                    
    alert"<?php echo html_entity_decode(_REGWARN_NOCD);?>" );
    ?>

    Also: er prüft da jetzt ganz unten, ob die form.code.value ungleich der variable code ist. Aber er soll anstatt der Variable Code das mit Einträgen in der DatenBank überprüfen.
    Wie krieg ich das jetzt hin?
    Bin für jede hilfe dankbar.

    Gruß- mp17

  • #2
    Willst du ernsthaft JS dazu bringen mit einer MySql DB zu reden ? Dann kannst du probieren bis du schwarz wirst !
    Du musst diese Prüfung serverseitig, also mittels PHP machen. Oder hast du bei z.B. selfhtml etwas uzum Thema mysql gefunden ?
    Was du machen könntest wäre eine AJAX Anwendung zu machen, die den vom User angegebenen Code an den Server sendet, dieser prüft ihn und gibt sendet seine Antwort (erfolgreich/nicht erfolgreich) an die JS Instanz zurück, welche dann anhand der Serverantwort entscheidet was sie weiter tun will.

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Jo danke für die antwort
      klingt zwar ganz nett was du da sagst, aber ich weiss nicht, wie man das umsetzen soll... sry, bin halt nicht so der php freak.
      kannst du mit das mal da in den code reinschreiben oder nen beispiel machen? das wär echt klasse
      nochmal danke für die antwort
      Greets. mp17

      Kommentar


      • #4
        nöö, vielleicht kannst du dich auch erstmal einlesen, bevor du sagst, "kann ich nicht".

        Kommentar


        • #5
          ja sry. is ok, ich probiers ma aus

          Kommentar


          • #6
            So, ich habe folgendes gemacht:
            Ich habe die Code daten, in ein array geladen. jetzt will ich halt nur noch die form.code.value im js mit dem array überprüfen. das wollte ich so machen:

            PHP-Code:
            <script language="javascript" type="text/javascript">
                    function submitbutton() {
                        var form = document.mosForm;
                        var r = new RegExp("[\<|\>|\"|\'|\%|\;|\(|\)|\&|\+|\-]", "i");
                        var code = "<?php echo $code[$count1]; ?>";


                        // do field validation
                    while (form.code.value != code)
                                  {
                                 if (form.name.value == "") {
                                            alert( "<?php echo html_entity_decode(_REGWARN_NAME);?>" );
                                         } else if (form.username.value == "") {
                                            alert( "<?php echo html_entity_decode(_REGWARN_UNAME);?>" );
                                           } else if (r.exec(form.username.value) || form.username.value.length < 3) {
                                           alert( "<?php printfhtml_entity_decode(_VALID_AZ09), html_entity_decode(_PROMPT_UNAME), );?>" );
                                           } else if (form.email.value == "") {
                                          alert( "<?php echo html_entity_decode(_REGWARN_MAIL);?>" );
                                          } else if (form.password.value.length < 6) {
                                          alert( "<?php echo html_entity_decode(_REGWARN_PASS);?>" );
                                          } else if (form.password2.value == "") {
                                          alert( "<?php echo html_entity_decode(_REGWARN_VPASS1);?>" );
                                          } else if ((form.password.value != "") && (form.password.value != form.password2.value)){
                                       alert( "<?php echo html_entity_decode(_REGWARN_VPASS2);?>" );
                                           } else if (r.exec(form.password.value)) {
                                    alert( "<?php printfhtml_entity_decode(_VALID_AZ09), html_entity_decode(_REGISTER_PASS), );?>" );
                                       } else
                                             {
                                              // <<-- an dieser stelle soll die var $count1 um einen erhöht werden
                                     code = "<?php echo $code[$count1]; ?>";
                                     }
                                  }
                               form.submit();
                    }
                    </script>
            nur was noch fehlt ist, dass die variable $count1 hochläuft. es ist ja eine php variable, aber wie kann ich diese im js hochlaufen lassen?? das habe ich noch nicht verstanden...

            Greets. mp17

            Kommentar


            • #7
              Original geschrieben von mp17
              es ist ja eine php variable, aber wie kann ich diese im js hochlaufen lassen?? das habe ich noch nicht verstanden...
              gar nicht
              php = serverseitig
              javascript = clientseitig

              Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

              bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
              Wie man Fragen richtig stellt

              Kommentar


              • #8
                Du kannst auch mit JS dynamisch ein Script-Tag im Head der Seite einbinden und auf eine php Datei referenzieren. Was du lediglich brauchst ist ein Handshake. Aber die Technik werde ich dir nicht vorkauen

                Kommentar


                • #9
                  alle klar, hab es anders gelöst: habe das php array über mehrere umwegen in ein js array umgewanderlt. es hapert noch ein wenig an dem entgüligem ergebniss, aber das wird sicherlich auch noch

                  Greets. mp17

                  Kommentar


                  • #10
                    so, jetzt wirds hier ganz merkwürdig:

                    PHP-Code:
                    for (var 0a.length; ++i)
                                              {
                                                if (
                    form.code.value == a[i])
                                                {
                                                  
                    alert ("jo");
                                                }
                                              } 
                    im array a gibt es zwei werte: 0=20501 und 1=50201.
                    wenn ich nach 20501 überprüfe, dann kommt halt das fenster mit "jo". also die form.code.value ist gleich a[i]. aber wenn ich nach dem zweiten wert frage, dann kommt nichts.
                    die var i läuft doch hoch oder nicht? dann müsste er doch im zweitem durchgang mit dem array a[1] ->> also 50201 überprüfen.... aber es klappt nicht

                    woran liegt das denn??

                    //edit: ach, ich erstell ma nen neuen threat im js forum...
                    Zuletzt geändert von mp17; 24.04.2006, 18:38.

                    Kommentar

                    Lädt...
                    X