我有一个来自POST形式的整数。我知道所有POST变量都是字符串。
假设我想将此POST ['integer string']与数据库中的整数进行比较: my_page_action.php =>
$query = "SELECT amount FROM table where id=:id";
$stmt = $conn_p->prepare($query);
$stmt->execute(array(':id' => $id));
$data = $stmt->fetch();
if ( ! empty($data)) {
if ($data['amount'] != $_POST['amount']) {
header("location:my_page.php?msg=Invalid Amount");
exit();
}
} else {
header("location:my_page.php?msg=Invalid Record");
exit();
}
答案 0 :(得分:1)
变量的类型可能不同,在这种情况下,我使用的是float,但是您可以使用intval,stringval等:
if (floatval($data['amount']) != floatval($_POST['amount'])) {
答案 1 :(得分:1)
您可以使用intval($_POST['amount']
而不是$_POST['amount']
,请参阅http://php.net/manual/en/function.intval.php
您还具有等效于float的floatval(http://php.net/manual/en/function.floatval.php)