发新话题
打印

help 关于使用update更新数据

help 关于使用update更新数据

关键代码:
复制内容到剪贴板
代码:
function do_edit()//修改文章处理函数
{
        $id=$_POST['id'];
        $title=$_POST['title'];
        $content=$_POST['FCKeditor1'];
        $sort=$_POST['sort'];
        $query="update posts set ".
                "posts_title='".$title."',".
                "posts_content='".$content."',".
                "posts_sort=$sort".
                "where posts_id=$id";
        mysql_query($query);
        $result=mysql_affected_rows();
        return $result;
}
?>
复制内容到剪贴板
代码:
if ($_POST['submit']=="更新")
{
        do_edit();
        echo $result;
}
问题是:第一更新失败
第二:执行完毕无输出,包括错误提示也没有~
高手帮忙看一下~~~

TOP

回复 undefined 的帖子

还是老师最好哈~~

TOP

变量的作用域问题,把那几个post的值当参数传进去,或者在函数里global。

TOP

引用:
原帖由 xinglu1983 于 2007-12-13 10:48 发表
变量的作用域问题,把那几个post的值当参数传进去,或者在函数里global。
$_POST 本身就是全局变量,不需要再global

TOP

引用:
原帖由 happyeddie 于 2007-12-17 08:50 发表

$_POST 本身就是全局变量,不需要再global
我的错,以前没注意看手册~
试验了一下,LZ的程序应该少了这个:
$result = do_edit();

TOP

回复 undefined 的帖子

问题已解决了
$query="update posts set ".
                "posts_title='".$title."',".
                "posts_content='".$content."',".
                "posts_sort=$sort".
                "where posts_id=$id";
这句$sort加上单引好就可以了,感谢上面两位的回答。

TOP

哈哈,还有另外一个方法:
复制内容到剪贴板
代码:
function do_edit(&$result)//修改文章处理函数
{
        $id=$_POST['id'];
        $title=$_POST['title'];
        $content=$_POST['FCKeditor1'];
        $sort=$_POST['sort'];
        $query="update posts set ".
                "posts_title='".$title."',".
                "posts_content='".$content."',".
                "posts_sort=$sort".
                "where posts_id=$id";
        mysql_query($query);
        $result=mysql_affected_rows();
}

if ($_POST['submit']=="更新")
{
        $result='';
        do_edit();
        echo $result;
}
以上代码基本没变,只是添加了函数的一个参数,已经初始化一个变量而已。
广告位招租。

TOP

发新话题