Php更新功能

时间:2012-12-28 17:47:48

标签: php mysql sql

我写了这段代码

if(isset($_POST['update'])) {
            $webname = $_POST['webname'];
            $webmeta = $_POST['webmeta'];
            $webdesc = $_POST['webdesc'];

            $sql=("UPDATE settings (name, meta, description) VALUES ('$webname', '$webmeta', '$webdesc')");
            }

但问题是它没有更新我的数据库,我在代码中找不到任何错误... 我在提交按钮上有“更新”的名称,我的所有字段都与代码中的相同

5 个答案:

答案 0 :(得分:2)

那是插入!不更新!

$sql=("UPDATE `settings` SET `name` = '$webname',
                             `meta` = '$webmeta',
                              `description` = '$webdesc')
               WHERE [some condition]");

并用有效条件替换[some condition]

您的代码非常容易受到SQL注入攻击。

考虑通过替换以下内容来转义输入:

$webname = $_POST['webname'];
$webmeta = $_POST['webmeta'];
$webdesc = $_POST['webdesc'];

使用:

$webname = mysql_real_escape_string($_POST['webname']);
$webmeta = mysql_real_escape_string($_POST['webmeta']);
$webdesc = mysql_real_escape_string($_POST['webdesc']);

或类似PDO或MySQLi的东西。

答案 1 :(得分:0)

 mysql_select_db("my_db", $con);

 mysql_query("UPDATE Persons SET Age=36
    WHERE FirstName='Peter' AND LastName='Griffin'");

答案 2 :(得分:0)

你需要首先制定查询,然后运行/执行

$query = "UPDATE table_name
 SET column1=value, column2=value2,...
 WHERE some_column=some_value";

// Perform Query
$result = mysql_query($query);

答案 3 :(得分:0)

你需要运行

$connection = mysql_connect($server, $serv_Username, $serv_Password);
mysql_select_db($dbase_name, $connection);
mysql_query($update_query, $connection));

我不知道这是不是你的问题(不知道你对PHP有多了解,所以只是说)。

你的语法也错了。应该是:

UPDATE tablename SET column_name='some_value' WHERE column_name ='some_value'

请注意,如果没有覆盖column_name参数的 thingys,这与上面提到的不同。

更好的是如上所述使用PDO,mysql_可以“安全地”使用< PHP 5.5。

答案 4 :(得分:0)

   Try The code shown below
 Just replace the field names and values with your information on your database



    $editid=$_POST['editid'];
    $username=callback($_POST['username']);
    $password=callback($_POST['password']);
    $name=callback($_POST['name']);
   $age=callback($_POST['age']);
   $phone=callback($_POST['phone']);
   $emailaddress=callback($_POST['emailaddress']);
  $gender=callback($_POST['gender']);
  $description=callback($_POST['description']);

    $update=update("users","username='".$username."',password='".$password."',name='".$name."',age='".$age."',phone='".$phone."',emailaddress='".$emailaddress."',gender='".$gender."',description='".$description."' ","ID='".$editid."' " );