2015-03-28 2 views
-2

Это мой код, он вставляет user_id и post_id в таблицу likelist.PHP mysql update int

Эта часть уже работает нормально.

Теперь я хочу, чтобы добавить «+1» к столу комментариев в колонке любит которым является типом INT, где post_id равняется одному из части 1.

Как я могу сделать это?

<?php 

//load and connect to MySQL database stuff 
require("config.inc.php"); 

if (!empty($_POST)) { 
    //initial query 
    $query = "INSERT INTO likelist (user_id, post_id) VALUES (:user, :post) "; 

    //Update query 
    $query_params = array(
     ':user' => $_POST['user_id'], 
     ':post' => $_POST['post_id'] 


    ); 

    //execute query 
    try { 
     $stmt = $db->prepare($query); 
     $result = $stmt->execute($query_params); 


    } 
    catch (PDOException $ex) { 
     // For testing, you could use a die and message. 
     //die("Failed to run query: " . $ex->getMessage()); 

     //or just use this use this one: 
     $response["success"] = 0; 
     $response["message"] = "Database Error. Couldn't add post!"; 
     die(json_encode($response)); 
    } 


    $response["success"] = 1; 
    $response["message"] = "Username Successfully Added!"; 
    echo json_encode($response); 




} else { 
?> 
     <h1>Add Like</h1> 
     <form action="addlike.php" method="post"> 
      User ID:<br /> 
      <input type="text" name="user_id" placeholder="user id" /> 
      <br /><br /> 
      Post ID:<br /> 
      <input type="text" name="post_id" placeholder="post id" /> 
      <br /><br /> 

      <br /><br /> 
      <input type="submit" value="Add Like" /> 
     </form> 
    <?php 
} 

?> 

EDIT Я только хочу, чтобы это произошло, когда первая часть прошла успешно, это гарантирует, что, как уникален и пользователь косяк как один пост несколько раз.

+0

[ 'UPDATE таблица SET column_x = column_x +1 WHERE column_y =«something''] (http://dev.mysql.com/doc/refman/5.0/en/update .html). 5 секунд в Google ... –

+0

где его добавить? – Hendrik04

ответ

0

: попробуйте

$update_sql = "update comments set likes = likes + 1 where post_id = :post_id"; 
+0

Спасибо, где его добавить? Я только хочу, чтобы это произошло, когда первая часть преуспела, это гарантирует, что подобное уникально, и пользователь может как один пост несколько раз. – Hendrik04

+0

, где у вас есть код успеха ... настройка параметра, выполнение подготовки и т. Д. Для нового оператора – dbinns66

+0

Я добавил его, и он не работает, столбец «нравится» по-прежнему равен 0. – Hendrik04