Ankündigung

Einklappen
Keine Ankündigung bisher.

Abfrage bei onClick?

Einklappen

Neue Werbung 2019

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

  • Abfrage bei onClick?

    Hallo zusammen!

    Ich hab ein Formular, indem die Daten eines Users stehen.
    Unter anderem gibt es da auch einen Eintrag für den Vater des Users (ist ein Adressenverwaltung-Stammbaum-Programm) und einen Button.
    Wenn man auf diesen Button klickt, dann wird die Seite neu geladen, mit den Daten des Vaters (die Funktion gibt's auch für die Mutter).
    Soweit sogut, funktioniert eigentlich alles wunderbar.
    ABER: wenn man das Feld des Vaters noch nicht ausgefüllt hat, bzw sich vertippt hat, dann existiert ja kein entsprechender Eintrag in der Datenbank. Wenn man dann auf den Button klickt erscheint eine leere Seite.
    Das möchte ich aber ändern.
    Also, wenn der Vater nicht existiert (in der Datenbank, real muss es ihn ja mal gegeben haben :wink: ) dann soll einfach nichts passieren wenn man auf den Button klickt, oder noch besser, eine kleines PopUp in dem steht, dass dieser Eintrag/Vater nicht existiert.

    Kann mir jemand helfen, das zu realisieren?
    Der Button sieht momentan so aus:
    Code:
    <input type="button" name="VW" value=">" onclick="self.location.href='http://localhost/www/home/PROGRAMM/index.php?section=familie_bearbeiten&id=<?=$VATER?>'" />
    Nun fehlt noch irgendwo eine Abfrage, wo geprüft wird, ob der Vater existiert, aber WO

    Vielen Dank im Vorraus für jede Antwort!


  • #2
    ich hab kein fertiges script aber im prinzip mußt du bei onClick eine funktion aufrufen welche das inputfeld abfragt und bei richtigkeit weiterleitet...

    Code:
    function abfrage () {
      if (document.Formular.vater.value=="") {
        alert("Falsch");
      } else
        document.location.href = "weiterleitung.htm";
    }

    Kommentar


    • #3
      Danke für die Antwort!

      Hab die Funktion für mich so geändert:
      Code:
      function abfrage()
      {
      	var vater = document.FORMULAR.VATER.value;
        	if(document.FORMULAR.VATER.value == "")
        	{ 
          		alert("Dieser Eintrag existiert nicht!");
        	}
        	else
        	{
      	  	document.location.href = "index.php?section=familie_bearbeiten&id="+vater;
      	  } 
      }
      Die Funktion ist ansich ja ganz gut, aber es wird nur überprüft, ob IRGENDWAS im Feld steht...

      Wie kann ich da jetzt noch eine kurze SQL-Abfrage einbauen, in der geprüft wird, ob der Eintrag auch wirklich existiert?

      Kann man das mit Javascript überhaupt?

      Kommentar


      • #4
        mit js direkt kannst du das nicht - ausser du nutzt ajax.
        wenn du vielleicht vorher deine db ausliest und deine variablen an js übergibst
        Code:
        var irgendwas = <?php echo $sql_var; ?>;

        Kommentar


        • #5
          Was ist ajax?

          Hm, ich muss also VOR dem Aufrufen der Funktion, und NACH dem drücken des Buttons die Datenbankabfrage machen, klingt logisch, aber wie mache ich das?

          Etwa so:
          Code:
          onClick="funktion a()"
          funktion a(value-Feld)
          {
          Datenbankabfrage durchführen;
          function b(ergebnis);
          }
          function b(ergebnis)
          {
          ergebnis = positiv -> Seite anzeigen;
          ergebnis = negativ -> Fehlermeldung;
          }


          function a(value-Feld) müsste aber eine PHP-Funktion sein, die man über onClick ausführen müsste. Dann müsste man in dieser Funktion die Javascriptfunktion aufrufen.
          Frage 1:
          Wie kann ich bei onclick die PHP-Funktion aufrufen?
          mit
          Code:
          onclick="<?test()?>"
          geht's leider nicht...
          Frage 2:
          Wie kann ich dann in der PHP-Funktion die Javascriptfunktion aufrufen?
          Frage 3:
          Wenn die Antwort auf Frage 1 und 2 = "geht nicht!":
          Wie kann ich das sonst machen?

          Kommentar


          • #6
            http://de.wikipedia.org/wiki/AJAX

            Kommentar


            • #7
              Und ohne ajax geht's nicht?

              Kommentar


              • #8
                Klaro geths ohne AJAX - ajax ist nur ein tolles "Feature"

                Kommentar

                Lädt...
                X