如何在SQL查询中动态生成表名?
P粉588152636
P粉588152636 2023-09-03 19:57:51
0
1
406

我有一个 SQL 查询,它使用 MySQL 数据库从中获取信息。表名称是第一个常量,末尾带有不同的 IMEI 编号。

gs_object_data_12345678

12345678 在我的脚本中被标识为 $_GET 但当我尝试更改表名称时,它不会显示该表中的数据

$imei = $_GET['imei']; $result = $db->query("SELECT * FROM gs_object_data_'$imei' LIMIT 200 ");

如果我使用下面的字符串,它就可以工作

$result = $db->query("SELECT * FROM gs_object_data_12345678 LIMIT 200 ");

我需要用$_GET信息更改表名

URL alarm_action.php?id=58543®=****&imei=862202228007105 中包含 IMEI,因此信息应该可以通过

P粉588152636
P粉588152636

全部回复 (1)
P粉232793765

像这样使用

$imei = $_GET['imei']; $result = $db->query("SELECT * FROM gs_object_data_" . $imei . " LIMIT 200 ");

$result = $db->query("SELECT * FROM gs_object_data_{$imei} LIMIT 200 ");

以受保护的方式

$imei = $_GET['imei']; $stmt = $db->prepare("SELECT * FROM gs_object_data_? LIMIT 200"); $stmt->bind_param("s", $imei); $stmt->execute(); $result = $stmt->get_result();
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!