sql >> Databáze >  >> RDS >> Mysql

Jak aktualizovat MySQL pomocí PHP a AJAX bez OBNOVENÍ STRÁNKY

Ajax v jQuery funguje takto:

var myData=1;
$.ajax({
    type:'POST',//type of ajax
    url:'mypage.php',//where the request is going
    data:myData,//the variable you want to send
    beforeSend:function(xhr){//as a standard, I add this to validate stuff
        if(someThingWrong===true)xhr.abort//aborts xhttpRequest
   },
   success:function(result){
       //result is your result from the xhttpRequest.
   }
});

Tím se vaše stránka neobnoví, ale odešle se „POST“ na zadanou adresu URL. Na zadané stránce chcete udělat cokoli, co chcete udělat, a říct vrátit výsledek. V mém příkladu udělám něco jednoduchého:

if($_POST['myData']===1)return True;

To jsou základy požadavku AJAX pomocí jQuery.

UPRAVIT!

spuštění skriptu AJAX:Jen se domnívám, že neznám vaše prvky ve vašem html ani vaše skripty. Takže budete muset provést úpravy!

$('button.dislike').click(function(){
    $.ajax({
        type:'POST',
        url:'disliked.php',
        data:{dislike:$(this).attr('id')},
        success:function(result){
            $(this).prev('span').append(result);
        }
    });
 });

PHP:nepoužívejte mysql, je nyní odepsáno a je považováno za špatný postup, také nevím, proč na dotaz používám sprintf? :S

$DBH=new mysqli('location','username','password','database');
$get=$DBH->prepare("SELECT dislike FROM random WHERE ids=?");
$get->bind_param('i',$_POST['dislike']);
$get->execute();
$get->bind_result($count);
$get->close();
$update=$DBH->prepare('UPDATE random SET dislike=? WHERE ids=?');
$update->bind_param('ii',++$count,$_POST['dislike']);//if you get an error here, reverse the operator to $count++.
$update->execute();
$update->close();
return String $count++;

To bude fungovat pouze v případě, že ve vašem HTML je řada tlačítek s ID odpovídajícími těm ve vaší databázi. Takže

$get=$DBH->prepare('SELECT ids FROM random');
$get->execute();
$get->bind_result($ids);
while($get->fetch()){
    echo"<button class='dislike' id='".$ids."'>Dislike this?</button>";
}

Doufám, že máte obecnou představu o tom, jak spravuji váš systém tlačítek nelíbí se mi XD lol




  1. Chci aktualizovat hodnotu přepínače v databázi (mysql) pomocí php

  2. Parser pro Oracle SQL

  3. Jak předat seznam z Java do Oracle Procedure?

  4. Jak převést 500GB SQL tabulku na Apache Parquet?