gpt4 book ai didi

php - mysql_real_escape_string 不适用于后 PHP

转载 作者:行者123 更新时间:2023-11-29 04:10:56 26 4
gpt4 key购买 nike

也许我错了,但对我来说它不起作用,

我正在尝试使用 $_POST['value']; 执行 mysql_real_escape_string() 函数,

mysql_real_escape_string($_POST['value']);

但它不起作用,但如果我尝试这个,

$value = $_POST['value'];
mysql_real_escape_string($value);

它工作得很好,有什么建议吗?

编辑:

我的代码是这样的,

$post = array('id', 'name');
$postArray = array();
foreach($post as $pa){
$postArray[$pa] = mysql_real_escape_string($_POST[$pa]);
}

最佳答案

您是在分配 mysql_real_escape_string() 的结果吗?什么?它不会就地修改变量。

$value = mysql_real_escape_string($_POST['value']);

回应您的编辑 - 您的 foreach 不应该吗?循环播放 $post , 不是 $postArray ?

foreach($postArray as $pa){

应该是……

foreach($post as $pa){

第二次编辑:请使用此代码并告诉我们它输出的内容:

var_dump($_POST);
$post = array('id', 'name');
$postArray = array();
foreach($post as $pa){
$postArray[$pa] = mysql_real_escape_string($_POST[$pa]);
}
var_dump($postArray);

最终编辑:

好的,你的问题是你传入的帖子变量被读取为数组,因此你不能调用 mysql_real_escape_string()直接在那些上面(因为它是为字符串而不是数组设计的)。

将您的代码更改为:

$post = array('id', 'name');
$postArray = array();
foreach($post as $pa){
if(is_array($_POST[$pa])) {
$postArray[$pa] = mysql_real_escape_string($_POST[$pa][0]);
} else {
$postArray[$pa] = mysql_real_escape_string($_POST[$pa]);
}
}

一切都应该有效。

关于php - mysql_real_escape_string 不适用于后 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11283671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com