gpt4 book ai didi

php - 这段带有 SQL 查询的 PHP 代码有什么问题?

转载 作者:行者123 更新时间:2023-11-30 22:36:34 26 4
gpt4 key购买 nike

很多天前,我看过this question .然后,我尝试使用这段代码:

$code = $_GET['code'];
$str_1 = mysql_query("SELECT * FROM `MyTable`");
while ($str_2 = mysql_fetch_array($str_1)) {
header("content-type: application/octet-stream");
header("content-disposition: inline; filename= " . $str_2['my_id'] . "");
echo base64_decode($str_2['my_str']);
}

我的我的数据库,有一些数据:

+--------+-----------------+
| my_id | my_str |
+--------+-----------------+
| id_1 | base64_str_1 |
| id_2 | base64_str_2 |
| id_3 | base64_str_3 |
| id_4 | base64_str_4 |
+--------+-----------------+

当我用浏览器浏览我的 PHP 代码时,例如:http://localhost/my_php.php?code=id_3。它总是返回一个满足的文件(名为:id_3)(它的内容:base64_str_1)。

你能告诉我:“这段带有 SQL 查询的 PHP 代码有什么问题吗?”。

最佳答案

使用此代码,您将从查询中获取最后一行 ID 的名称。只是因为您将 header 替换为:

header("content-disposition: inline; filename= " . $str_2['my_id'] . "");

内容是通过所有 str 行的串联生成的。所以,生成的内容是:
base64_str_1base64_str_2base64_str_3base64_str_4 而不仅仅是 base64_str_1

如果您需要从 MyTable 的一行生成一个唯一的文件,您可以使用:

$code = $_GET['code'];
$str_1 = mysql_query("SELECT * FROM `MyTable` where my_id = '$code'");
header("content-type: application/octet-stream");
header("content-disposition: inline; filename= " . mysql_result($str_1, 0, 'my_id') );
echo base64_decode(mysql_result($str_1, 0, 'my_str'));

关于php - 这段带有 SQL 查询的 PHP 代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32379309/

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