dirigibleplum
dirigibleplum

Reputation: 137

Favorite post script

I've got a problem making a system to enable users to favorite posts. I know I'm missing something in here, but I'm not sure what and I don't know how to fix it so that it works.

mysql_select_db($database_connection, $connection);
$query_deltakelse = "SELECT brukernavn, postID FROM deltakelse";
$deltakelse = mysql_query($query_deltakelse, $connection) or die(mysql_error());
$row_deltakelse = mysql_fetch_assoc($deltakelse);
$totalRows_deltakelse = mysql_num_rows($deltakelse);

$username=$_SESSION['valid_user'];

if(in_array($_POST['id'], $row_deltakelse))
{
   mysqli_query($connection,"DELETE FROM deltakelse WHERE postID='id'");
}
else
{
   mysqli_query($connection,"INSERT INTO bruker (brukernavn, postID) VALUES ('$username', '$id')");
}

$(document).ready(function() {
    $('.delta').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.text() == 'Fave this')
               {
                 _this.html('Faved!');
               }
               else
               {
                 _this.html('Fave this');
               }
            }
            });
        });
    });


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

Upvotes: 0

Views: 88

Answers (1)

John Conde
John Conde

Reputation: 219864

You're mixing mysql and mysqli functions. You can't do that.

This is MYSQL

mysql_select_db($database_connection, $connection);
$query_deltakelse = "SELECT brukernavn, postID FROM deltakelse";
$deltakelse = mysql_query($query_deltakelse, $connection) or die(mysql_error());
$row_deltakelse = mysql_fetch_assoc($deltakelse);
$totalRows_deltakelse = mysql_num_rows($deltakelse);

$username=$_SESSION['valid_user'];

Here you use MySQLi with a MySQL resource. That won't work.

if(in_array($_POST['id'], $row_deltakelse))
{
   mysqli_query($connection,"DELETE FROM deltakelse WHERE postID='id'");
}
else
{
   mysqli_query($connection,"INSERT INTO bruker (brukernavn, postID) VALUES ('$username', '$id')");
}

Change that, too:

if(in_array($_POST['id'], $row_deltakelse))
{
   mysql_query("DELETE FROM deltakelse WHERE postID='id'", $connection);
}
else
{
   mysql_query("INSERT INTO bruker (brukernavn, postID) VALUES ('$username', '$id')", $connection);
}

Upvotes: 1

Related Questions