更新声明无效

时间:2009-07-18 15:13:32

标签: php mysql

function add_new($father,$chName)  // add new category
{

    if($father = "1" ) {


$result = mysql_query("INSERT into stinky_menu (title,nest_under)
        VALUES('".$chName."','1')");

    } 
     else { 

$result = mysql_query("UPDATE stinky_menu SET title  = '$chName' nest_under = '$father'");

     }

 }

我从父页面获取父亲的值,但如果它不等于一,则不会转到其他条件。

4 个答案:

答案 0 :(得分:4)

您使用的是assignment operator =而不是comparison operator ==。所以试试这个:

if ($father == "1") {
    // …
} else {
    // …
}

答案 1 :(得分:3)

那是因为你有

if($father = "1")

您需要使用“==”。 “=”是赋值运算符。你将$ father设置为等于“1”,即使它不是。

答案 2 :(得分:2)

尝试:

if ($father == 1){}

阅读here有关比较运算符的信息。 “=”是赋值运算符。

看看这个,看看你的代码做了什么:

<?php
    $father = 55;

    if ($father = 1){}
    else{}

    echo $father;
?>

这会打印“1”。

答案 3 :(得分:0)

此外,最后的查询不应该是:

"UPDATE stinky_menu SET title  = '$chName', nest_under = '$father'"