WinFuture-Forum.de: Sql Befehl Durch Javascript Ausführen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Sql Befehl Durch Javascript Ausführen geht zwar so nicht, brauche aber ne lösung


#1 Mitglied ist offline   josh_travolta 

  • Gruppe: aktive Mitglieder
  • Beiträge: 397
  • Beigetreten: 15. April 05
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 11. Januar 2009 - 20:56

so folgende problematik, ich komme da gerad nicht weiter.

ich lass erst einmal per php & mysql ein paar daten aus der datenbank ziehen und gebe die als liste mit checkboxen aus (todo liste). wenn ich jetzt eine checkbox anklicke löse ich folgende jquery funktion aus:

	$("input.task").click(
			 function(){
				 if ($("input.task#"+this.id+":checked").val()){
					 $("p.task#"+this.id).addClass("finished");
					 $("div#"+this.id).fadeOut("slow");
				 }
   
			   else{
				   $("p.task#"+this.id).removeClass("finished");
			   }

was mir jetzt fehlt ist eine idee, wie ich noch einen mysql befehl ausführe damit bei der angeklickten id in der datenbank ein "fertig" reingesetzt wird. ich kann ja mit javascript selbst nicht einfach eine sql abfrage ausführen. aber müsste man nicht zum beispiel mit javascript ne php datei öffnen lassen, die die abfrage ausführt?
0

Anzeige



#2 Mitglied ist offline   MNG 

  • Gruppe: aktive Mitglieder
  • Beiträge: 293
  • Beigetreten: 29. März 06
  • Reputation: 0

geschrieben 11. Januar 2009 - 21:46

jQuery hat eine eingebaute load()-Funktion, mit der Du dein PHP-Skript aufrufen kannst.
Beispiel: http://www.strohhalm.org/forum/index.php?a...&topic=2447
Die Rückgaben deines Skripts kannst Du vermutlich ignorieren, es sei denn, Du möchtest eventuelle Fehler an den Nutzer melden o. Ä.
0

#3 Mitglied ist offline   josh_travolta 

  • Gruppe: aktive Mitglieder
  • Beiträge: 397
  • Beigetreten: 15. April 05
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 13. Januar 2009 - 23:02

oh das hört sich nicht schlecht an, guck ich mir gleich mal an.
0

#4 Mitglied ist offline   josh_travolta 

  • Gruppe: aktive Mitglieder
  • Beiträge: 397
  • Beigetreten: 15. April 05
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 11. Februar 2009 - 20:54

ist schon ein wenig her, aber falls sich noch jemand für die lösung interessiert:

als grundlage diente eine liste mit checkboxen:

<ul>
	 <li><input type="checkbox" class="task" id="1" /><p class="task" id="1">Aufgabe 1</p></li>
	 <li><input type="checkbox" class="task" id="2" /><p class="task" id="2">Aufgabe 2</p></li>
	 <li><input type="checkbox" class="task" id="3" /><p class="task" id="3">Aufgabe 3</p></li>
 </ul>



dann die js funktion:

$(function() {
		   $("input.task").click(function(){
			   if ($("input.task#"+this.id+":checked").val()){
				   $.post("inc/send.php", {id: this.id, ok: 1}, function(data){/*rückmeldung*/});
				   $("p.task#"+this.id).removeClass("delayed");
				   $("p.task#"+this.id).addClass("finished");
			   }
			   
			   else{
				   $("p.task#"+this.id).removeClass("finished");
				   $.post("inc/send.php", {id: this.id, ok: 0}, function(data){/*rückmeldung*/});
			   }
		   });
	   });


und noch die datei send.php

<?php
		 #mit db verbinden
		 verbinden();
		 
		 #wenn aufgabe als erledigt makiert wird, id in db mit datum aktualisieren
		 if($_POST['id'] && $_POST['ok'] == '1') {
			 $sql = 'UPDATE _aufgaben SET fertig = "'.date('Y-m-d').'", ok = "1" WHERE id LIKE "'.$_POST['id'].'"';
			 mysql_query($sql) or die(mysql_error());
		 }
	 
		 #wenn aufgabe nicht mehr als erledigt makiert sein soll, daten entsprechend ändern
		 else if($_POST['id'] && $_POST['ok'] == '0') {
			 $sql = 'UPDATE _aufgaben SET fertig = "", ok = "0" WHERE id LIKE "'.$_POST['id'].'"';
			 mysql_query($sql) or die(mysql_error());
		 }
	 
		 else { 
			 #Direktzugriff auf die Datei verhindern
		 echo 'Access denied';
		 }
	 ?>


fertig.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0