sql >> Database teknologi >  >> RDS >> Mysql

Returner en boolean fra en PHP-fil til AJAX one - Follow-knappen

Der er mange problemer her. For det første, som @Mark sagde, skal du forstå, at når du sender ajax-anmodninger til PHP, sender du strenge. Også i din JS binder du en klikfunktion til .heart.canal, men så ændrer funktionen alle elementer med den klasse i stedet for det faktiske klikkede element. Til sidst, når du har sendt de rigtige oplysninger til PHP, skal du udskrive dine resultater for at se dem i ajax.

Prøv følgende:

JS:

$(document).ready(function () {
    $(".heart.canal").click(function () {
        var $heart = $(this);
        if ($heart.data("following")) {
            $heart.data("following", false)
        } else {
            $heart.data("following", true);
        }

        var usuario = $(".left").find("h4").data("id");
        var seguidor = $("#user_account_info").find(".profile_ball").data("id");

        $.ajax({
            type: "POST",
            url: "follow.php",
            data: {user: usuario, follower: seguidor, follow: $heart.data("following")},
            success: function (result) {
                if (result) {
                    console.log("true");
                } else {
                    console.log("false");
                }
            }
        });
        return false;

    });

});

PHP:

$user = (int)$_POST["user"];
$seguidor = (int)$_POST["follower"];
$follow = ($_POST["follow"] === 'true') ? true : false;

if ($follow) {
    // insert
} else {
    // delete
}

print $follow;



  1. ER_NOT_SUPPORTED_AUTH_MODE:Klienten understøtter ikke godkendelsesprotokol anmodet af serveren; overveje at opgradere MySQL-klienten

  2. Sådan autoinkrementeres en varchar

  3. Er Markdown (med strip_tags) tilstrækkeligt til at stoppe XSS-angreb?

  4. Hvordan kan jeg vise tabelstrukturen i SQL Server-forespørgsel?