sql pdo fetch问题可以解决它

时间:2014-04-09 21:32:46

标签: php mysql

$id=$_POST["id"];
$sqls =$handle->prepare("SELECT * FROM r WHERE ur= :u AND id='$id'");
$sqls->bindParam(':u',$_COOKIE['u']);
$sqls->execute();
$row  = $sqls -> fetch();

if(!($row)){
    if (!isset($_POST['submit']) && $_POST['rating'] <= 5 ) {
        $sql_1 = "INSERT INTO review (b,u,r,r)      VALUES(:b,:u,:r,:r)";
        $query = $handle->prepare($sql_1); 
        $params = array(':b'=> $_POST['b'],':user'=> $_POST['u'],':r'=> $_POST[''],':ra'=> $_POST['ra']);
        $query -> execute($params); 
        echo success;
    } else {
        echo nope;
    }
    ?>

由于某种原因这个最令人工作的工作我找不到任何错误是不会给任何错误,但只是做我想做的事情 如果数据库中已有记录,我不希望它添加记录

1 个答案:

答案 0 :(得分:0)

看看你的SQL:“SELECT * FROM r WHERE ur =:u AND id ='$ id'” 应该“SELECT * FROM r WHERE ur =':u'和id = $ id”

$id=intval($_POST["id"]);
$sqls =$handle->prepare("SELECT * FROM r WHERE ur= ':u' AND id=$id");
$sqls->bindParam(':u',$_COOKIE['u']);
$sqls->execute();
$row  = $sqls -> fetch();

if(!($row)){
    if (!isset($_POST['submit']) && $_POST['rating'] <= 5 ) {
        $sql_1 = "INSERT INTO review (b,u,r,r)      VALUES(':b',':u',':r',':r')";
        $query = $handle->prepare($sql_1); 
        $params = array(':b'=> $_POST['b'],':user'=> $_POST['u'],':r'=> $_POST[''],':ra'=> $_POST['ra']);
        $query -> execute($params); 
        echo success;
    } else {
        echo nope;
    }
    ?>