防止“注意:数组转换为字符串”

时间:2015-09-28 18:15:26

标签: php security code-injection

我需要帮助以防止“注意:数组到字符串转换”

$stmt = $DBH->prepare("SELECT * FROM users WHERE id = :emailid");
$stmt->bindParam(':emailid', $emailid, PDO::PARAM_STR);
$stmt->execute();
$result = $stmt->fetchAll();    
foreach($result as $row)
    {
    echo $row['id'].'<br />';
    echo $row['emailid'].'<br />';
    echo $row['password'];
    }

每个人都可以,index.php?id=5

但是当我把index.php?id[]=5

给我回复错误

Notice: Array to string conversion in 

在这种情况下检查数组的最佳方法是什么? error_reporting(0)不是我想找到优化方法的解决方案。

1 个答案:

答案 0 :(得分:1)

不确定您希望此问题走向哪个方向。但是我们假设你想要 - 出于某种原因 - 让它以任何方式工作:int main(){ cout << "Enter a 0 when you wish to stop the program..." << endl; int stop = 0; char buffer[20]; while(stop==0){ //main task of the loop //force to store the input inside buffer[], even if no input if(buffer=="0"){ stop = 1; } } ?id=...

?id[]=...&id[]=...