RaG*_*940 1 php mysql select pdo get
我有一个带有超链接的页面,就像这样:

单击A0000000时,它会将您重定向到localhost/student.php?anum = A00000000
我已检查是否正在使用实际号码
$get = $_GET['anum'];
echo $get;
Run Code Online (Sandbox Code Playgroud)
这就是我得到的: 
我之前已经多次这样做但是改变的一件事是现在我使用内连接和WHERE子句来进行特定搜索.这个搜索必须做的是:
这是select语句:
$anum = filter_input(INPUT_GET, 'anum', FILTER_SANITIZE_STRING);
$anum = filter_var($anum, FILTER_SANITIZE_NUMBER_INT);
try
{
$query = $dbh->prepare("SELECT * FROM inoffice INNER JOIN comments ON
inoffice.id = comments.id WHERE counselorname
IS NOT NULL AND finished = '1' AND anum = :anum ");
$query->bindParam(':anum', $anum);
$query->execute();
$result = $query->fetchall();
}
catch (PDOException $e) {
error_log($e->getMessage());
die($e->getMessage());
}
Run Code Online (Sandbox Code Playgroud)
我只是通过放置anum = A0000000尝试相同的查询,它完美无缺.
但是当我尝试做上面的代码时,我得到一个空的echo'd表.
任何帮助都是极好的! - ty
编辑1:谢谢你神秘删除过滤器代码的消毒部分,什么不是,一切正常.那就是从实际的数字部分中删除A. 所以查询没有通过.
cry*_*c ツ 10
$anum = filter_var($anum, FILTER_SANITIZE_NUMBER_INT);
Run Code Online (Sandbox Code Playgroud)
正在剥离这封信 'A'
根据文件:
FILTER_SANITIZE_NUMBER_INT - 删除除数字,加号和减号之外的所有字符.
| 归档时间: |
|
| 查看次数: |
280 次 |
| 最近记录: |