我从a.php页面用URL方式传递参数id到b.php页面,想通过id来修改对应的标题,却发现总是不成功:
$id = $_GET['id'];
echo $id;  //id正确,但是下面的条件却有问题?
$sql="update plan set title='$title' where id=$id";如果直接改为 where id="12" 是可以修改的,说明是条件的用法不对?

解决方案 »

  1.   

    你的$title后面有个空格,你试着输出$sql,看看里面是什么内容。
    $sql = "update plan set title='{$title}' where id={$id}";
      

  2.   


    $sql= "update plan set title= '$title' where id=".$id; 
      

  3.   


    $sql = "update plan set title='$title' where id='$id'";
      

  4.   

    $sql = "update plan set title='$title' where id='".$id."'";
      

  5.   

    我快崩溃了我这样写应该没错啊?用的是 $sql = "update plan set title='$title' where id='$id'";
    echo $sql; 显示结果如下:
    update plan set title='test' where id=''id字段居然为空?!但是我单独 echo $id; 时却可以正确显示id的数值啊?
      

  6.   

    补充:id在mysql里是int类型,主键,自增
      

  7.   

    $sql = "update plan set title='$title' where id='{$id}'";
      

  8.   

    晕倒……$sql = "delete from plan where id='$_GET[id]'";  //这样可以把相应的记录删除$sql = "update plan set title='$title' where id='$_GET[id]'";  //这样却总是id值为空?为什么delete可以用而update却不可以?
      

  9.   

    把这句话输出看一下,特别是$_GET[id]
    $sql   =   "update   plan   set   title= '$title '   where   id= '$_GET[id] ' ";     
      

  10.   

    $_GET[ 'id '];里要有引号
    3楼4楼应是正确的
      

  11.   

    $id   =   $_GET[ 'id ']; 
    $sql= "update   plan   set   title= '$title '   where   id='$id'"; 
    =================================
    如果这样都不正确的话,那我无语了...
      

  12.   

    $id   =   $_GET[ 'id ']; 
    这里有空格
    $id = $_GET["id"];
      

  13.   

    wwx840723 说的是对的了 一般都那样做 要是你错了不是sql语句的问题了 是其他的问题了