MySQL не обновляется - PullRequest
       5

MySQL не обновляется

0 голосов
/ 21 июня 2010

У меня есть система обмена сообщениями, и она работает нормально, но у меня она есть, когда она читает, mysql_querys и устанавливает чтение на 1., так что в futer вы можете сказать, что он открыт. здесь не обновляется вот скрипт для просмотра сообщения, где его предполагается обновить. БЛАГОДАРЯ

<?php
session_start();

require "../scripts/connect_to_mysql.php";

    if (isset($_SESSION['id'])){
    $touser = $_SESSION['id'];
        }
        elseif (!isset($_SESSION['id'])){
            header('location: http://www.stat-me.com');
        }

$id = $_GET['id'];
$memberfirstname = $_SESSION['firstname'];


if(!isset($id)) {
    header('location: inbox.php');
}
elseif(isset($id)) {

    mysql_query("UPDATE pms SET read='1' WHERE id='$id'");    


    $grab_pm = mysql_query("SELECT * FROM pms WHERE touser = '$touser' AND id = '$id'");

    while($r= mysql_fetch_object($grab_pm)) {    
        $subject = $r->subject;    
        $message = $r->message;    
        $fromuser = $r->fromuser;    
        $datesent = $r->datesent;    
        $read = $r->read;
    }


}


?>

Ответы [ 2 ]

0 голосов
/ 21 июня 2010

Измените ваши запросы на

mysql_query("UPDATE pms SET read='1' WHERE id=".$id);
$grab_pm = mysql_query("SELECT * FROM pms WHERE touser = ".$touser." AND id = ".$id);

Типы данных INT поставляются без двойных кавычек, перечисления зависят от их содержимого (поэтому, если вы, например, вставили '1' и '0', удалите кавычки вокруг '1'в противном случае сохраните их).

0 голосов
/ 21 июня 2010

Не совсем ясно, является ли поле id INT, но я предполагаю, что в этом случае исправьте код следующим образом (удалите одинарные кавычки вокруг $ id):

mysql_query("UPDATE pms SET read='1' WHERE id=$id");
$grab_pm = mysql_query("SELECT * FROM pms WHERE touser = $touser AND id = $id");

Также будетобязательно экранируйте переменные GET, например,

$id = mysql_real_escape_string($_GET['id']) ;

РЕДАКТИРОВАТЬ: также возьмите одинарные кавычки около $ touser выше

...