Php mysql中的Update语句不工作,尽管它是正确的?

Php mysql中的Update语句不工作,尽管它是正确的?,php,mysql,Php,Mysql,此代码虽然正确,但不起作用 我正在使用面向对象的php。 $this->id是从另一个页面通过链接传递的变量 当我运行代码时,它告诉我它成功了,但是没有受影响的行 上面的一行是以下代码的一部分: $sql = "UPDATE reservations SET status = '$this->status',remaining_time ='$this->remain',cost = '$this->cost' WHERE id = '$this->id'"; 您确定要

此代码虽然正确,但不起作用

我正在使用面向对象的php。
$this->id
是从另一个页面通过链接传递的变量

当我运行代码时,它告诉我它成功了,但是没有受影响的行

上面的一行是以下代码的一部分:

$sql = "UPDATE reservations SET status = '$this->status',remaining_time ='$this->remain',cost = '$this->cost' WHERE id = '$this->id'";

您确定要进行连接吗?
$sql=“更新预订设置状态='$this->status',剩余时间='$this->reserve',成本='$this->cost',其中id='$this->id'
打印
$sql
以查看值


如果数据库已更新,则将收到0条受影响的行

我不是很确定,但是试试这个

<?php
class edit {
    private $status;
    private $remain;
    private $cost;
    private $id;
    public function edit_data() {
        $this->status = strtoupper(strip_tags($_POST['status']));
        $this->remain = strip_tags($_POST['remain']);
        $this->cost   = strip_tags($_POST['cost']);
        $submit       = $_POST['submit'];
        $this->id     = $_GET['edit'];
        $con = mysql_connect("localhost","root","")
        or die("Failed to connect to the server: " . mysql_error());
        mysql_select_db("Users")
        or die("Failed to connect to the database: " . mysql_error());
        if($submit) {
            if($this->status and $this->remain and $this->cost) {
                $sql = "UPDATE reservations SET status = '".$this->status."',remaining_time ='".$this->remain."',cost = '".$this->cost."' WHERE id = '".$this->id."'";
                $query = mysql_query($sql,$con);
                if(!$query) {
                    echo("Could not update data: " . mysql_error());
                }   
                echo "<h4>Customer reservation data has been updated successfully.</h4>";
                echo "Number of affected rows: " . mysql_affected_rows();
            }   
            else {
                echo "Please fill in all fields.";
            }
        }
        mysql_close($con);
    }   
}
$edit = new edit();
echo $edit->edit_data();
?>

您的表似乎不包含满足where条件的值

您可以通过执行一个简单的查询来检查这一点

"UPDATE reservations SET status = '".$this->status."',remaining_time ='".$this->remain."',cost = '".$this->cost."' WHERE id = '".$this->id."'";

此代码不起作用,尽管它是正确的
定义“不起作用”。一行代码对我来说就是不起作用。发出此查询的代码在哪里?发出此查询后检查错误的代码在哪里??
$this
的转储在哪里,以证明vaiables存在并设置了值???发布你的真实代码,否则你就要结束这个问题了!!刺耳的乔希。。。我试过这个。。。仍然不工作-Hamada Hosny 1分钟前-你看到你如何让每个人“猜测”?按照@RiggsFolly所说的去做,并发布真实/完整的代码。然而,现在它已经关闭,现在需要更多的时间重新打开。生活和学习,就像我的老爸爸常说的;-)
   $sql = "select * from reservations where id='$this->id'";