2016-03-21 15 views
1

Ich versuche, einen Wert in der Datenbank zu aktualisieren, während Kontrollkästchen (1 oder 0) mit Jquerys $ .post oder $ .ajax. Ich würde wirklich etwas Hilfe schätzen. Hier ist mein Code:Wie Datenbank aktualisieren, während Kontrollkästchen mit jquery?

HTML

<div class="onoffswitch"> 
    <?php 
    $yesno = (bool)$baner['noti']; 
    $checked = ($yesno) ? 'checked="checked"' : ''; 
    ?> 
    <input type="checkbox" name="onoffswitch" class="onoffswitch-checkbox" value="1" id="myonoffswitch" <?php echo $checked; ?>> 
    <label class="onoffswitch-label" for="myonoffswitch"></label> 
</div> 

jQuery

$(function(){ 
    $("#myonoffswitch").click(function(){ 
     $.post("notification.php"); 
     }) 
    }); 

notification.php

connections stuffs... 

$yesno = (isset($_POST['onoffswitch'])) ? 1 : 0; 
$sql = "UPDATE baner SET noti='$yesno'"; 
+1

Was scheint schief zu gehen? Es scheint nicht, dass Sie mit Ihrer Postanforderung Daten senden. Möglicherweise ist die Dokumentation zu ['post()'] (http://api.jquery.com/jquery.post/) hilfreich, insbesondere die [examples] (http://api.jquery.com/jquery.post)/# Eintragsbeispiele). – showdev

Antwort

2

Sie fast ha Ich habe es. Sie müssen nur Ihren Checkbox-Status lesen und ihn mit Ihrer POST-Anfrage zurücksenden.

$(function(){ 
    $("#myonoffswitch").click(function(){ 
     var isOn = $("#myonoffswitch").prop("checked"); 
     $.post("notification.php", { 'onoffswitch': isOn }, function (result) { 
      //handle success here 
     }); 
    }); 
+0

Vielen Dank für Ihre Wiederholung. Ich bekomme einen Fehler in dieser Zeile: var isOn $ ("# myonoffswitch"). Prop ("checked"); – mALEFACTOr

+0

Ich denke, es fehlt ein Gleichheitszeichen. Aber es funktioniert nicht für mich mit oder ohne. Irgendeine Idee? Wenn ich manuell auf 0 ändere, ändere ich das erste Mal, wenn ich auf 1 klicke, aber es geht nicht zurück auf 0. – mALEFACTOr

+0

@MELEFAKTOR, du hast Recht, Gleichheitszeichen hinzugefügt. –

0

Tyr dies mit $ .ajax. Es wird häufig für Aktualisierungsdaten ohne Umleitungsseite verwendet.

$("#myonoffswitch").click(function(){ 
    $.ajax({ 
     var onoffswitch=$('#myonoffswitch').val(); 
     type: "POST", 
     url: "notification.php", //Relative or absolute path to notification.php file 
     data: {onoffswitch: onoffswitch}, 
     success: function(response) { 
       content.html(response); 
     } 
    }); 

});

notification.php

Verbindungen stopft ...

$ yesno = (isset ($ _ POST [ 'onoffswitch']))? 1: 0; $ sql = "UPDATE baner SET noti = '$ yesno'";

Verwandte Themen