【发布时间】:2014-06-30 12:17:17
【问题描述】:
所以我有一段代码可以检查您是否关注了某个用户。如果你没有,基本上让你跟随他们。所以这里是
if($_SESSION['loggedIn'] == true){
$result = $con->prepare("SELECT * FROM followers WHERE follow_from = :username AND follow_to = :post_id");
$result->bindParam(':username', $username);
$result->bindParam(':post_id', $follower);
$result->execute();
$reprint = $result->fetchAll(PDO::FETCH_ASSOC);
}
print_r($reprint);
if($reprint < 1){
$stmt = $con->prepare("INSERT INTO followers (follow_from, follow_to) VALUES (:ff, :ft)");
$stmt->bindValue(':ff', $follower, PDO::PARAM_STR);
$stmt->bindValue(':ft', $username, PDO::PARAM_STR);
$stmt->execute();
}
else{
echo 'Error';
exit();
}
//Display follower
$stmt1 = $con->prepare("SELECT COUNT(*) AS count FROM followers WHERE follow_to = :username");
$stmt1->bindValue(':username', $username, PDO::PARAM_STR);
$stmt1->execute();
$likes = $stmt1->fetchAll(PDO::FETCH_ASSOC);
print_r($likes);
所以当我运行一次时。我得到了 else 声明的回应。我的问题是为什么会发生这种情况?在数据库中我没有记录,所以我希望它会进入一次。我完全没有错误。 loggedIn 是真的。并且变量正在成功传递。
有任何想法吗?
【问题讨论】:
-
试试
if(sizeof($reprint) < 1) -
看起来
$reprint永远不会小于1。你想知道返回的行数。 -
您是否尝试获取提供的实际错误?不只是您自制的“错误”?您可以将代码包装到 try catch 语句中并捕获错误消息: catch (PDOException $e) { echo 'Error: ' 。 $e->getMessage(); }
-
是的,我有@Jonast92
-
它添加了记录,但不限于我一个,这是代码应该做的@AlbinGeorge
标签: php html mysql database pdo