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

php – Povolení uživatelům přidávat oblíbené příspěvky

PHP

<?php
session_start();
require_once('connection.php');

mysql_select_db($database_connection, $connection);
$query_favorite = "SELECT username, post_id FROM favorite";
$favorite = mysql_query($query_favorite, $connection) or die(mysql_error());
$row_favorite = mysql_fetch_assoc($favorite);
$totalRows_favorite = mysql_num_rows($favorite);

if(in_array($_POST['id'], $row_favorite))
{
   //is already favourited, run a query to remove that row from the db, so it won't be favorited anymore

}
else
{
   //post is not favourited already, run a query to add a new favourite to the db.
}

?>

HTML

<a href="#" class="favourite" data-id="<?php echo $post_id; ?>">Favourite</a>

jQuery

$(document).ready(function() {
    $('.favourite').on('click', null, function() {
        var _this = $(this);
        var post_id = _this.data('id');
        $.ajax({
          type     : 'POST',
          url      : '/file.php',
          dataType : 'json',
          data     : 'id='+ post_id,
          complete : function(data) {
               if(_this.siblings('.typcn-star-outline'))
               {
                 _this.html('<span class="typcn typcn-star-full-outline"></span>Favourite');
               }
               else
               {
                 _this.html('<span class="typcn typcn-star-outline"></span>Favourited');
               }
            }
        });
    });
});

Upozorňujeme také, že v PHP byly funkce mysql_* zastaralé a jejich použití není bezpečné (umožňují útoky SQL Injection). Další informace o CHOP zde:http://code.tutsplus.com/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059




  1. Dotaz MySQL s limitem a velkým offsetem trvá věčnost

  2. Soubor MySql mysql.h nebyl nalezen ve VS2008 C++ <Otázka pro začátečníky>

  3. mysql získává last_insert_id() ve spouštěči

  4. Jak spustit příkaz MySQL z hostitele do kontejneru se serverem MySQL?