gpt4 book ai didi

php - 在 PHP 和 MySQL 中获取行表的名称

转载 作者:行者123 更新时间:2023-11-30 00:42:05 25 4
gpt4 key购买 nike

(我不太确定如何表达这个问题,这使得谷歌搜索成为一个徒劳的挑战,所以我希望这个问题不要太常见或措辞不好。)

我正在开发一个 PHP 和 MySQL 中的 Web 应用程序,该应用程序将允许用户搜索由 12 个表组成的数据库(因此结果页面上的每个条目都可以来自任何一个)共 12 张 table )。非常简单的东西,搜索功能已经存在并且运行良好。现在,我希望用户能够单击搜索结果中的条目,然后转到填充了该特定结果的详细信息的页面(与在 Stack Overflow 上运行搜索非常相似,然后单击其中一个结果)被带到该特定结果的完整问题/答案页面)。

我认为最简单的方法是使用 URL 参数:一个用于结果的 ID(基本上是行号),另一个用于表名称,这样在结果页面上我就可以告诉它哪个要引用的表和行,然后从那里填写信息。我可以很好地获取 ID(因为它是表中的列之一),但是我不知道如何告诉 PHP 给定行来自哪个表,以便我可以将其名称传递到 URL 中。 (示例:用户单击名为“employees”的表中第 4 行的结果。URL 参数将变为 ?table=employees&id=4。“employees”部分是我遇到问题的地方.)

任何帮助将不胜感激! :) 相关代码删节如下:

[...]

// The 12 tables are split across two languages, so the loop is made of two parts -- an English loop and a Japanese loop. lineToString() is a custom function that replaces the numeric result from the line select dropdown with the proper text name for the line.
if ($line < 1 || $line > 6) {
for ($i = 1; $i < 7; $i++) {
$lineName = lineToString($i);
$completedQuery = $completedQuery."SELECT * FROM en_".$lineName." WHERE MATCH (report,counter) AGAINST ('%".$query."%' IN BOOLEAN MODE)";
$completedQuery = $completedQuery." UNION ALL ";
}
for ($i = 1; $i < 7; $i++) {
$lineName = lineToString($i);
$completedQuery = $completedQuery."SELECT * FROM jp_".$lineName." WHERE MATCH (report,counter) AGAINST ('%".$query."%' IN BOOLEAN MODE)";
if ($i < 6) {
$completedQuery = $completedQuery." UNION ALL ";
}
}
}

$result = mysql_query($completedQuery) or die(mysql_error());
if(mysql_num_rows($result) > 0) {
while($results = mysql_fetch_array($result)) {
if ($results['report'] == NULL) {
echo "<td height=\"25px\"></td>\n";
} else {
echo "<td><a href=\"report.php?line=".TABLE-NAME-HERE."&report=".$results['id']."\">".Truncate($results['report'], 100)."</a></td>\n";
}

[...]

最佳答案

它位于 $completedQuery 变量中。基本上 $completedQuery 必须像

$completedQuery = "select * from ".$table_name." where search_term like '%userdata%'";

这意味着您已经知道表名称,因为您正在查询它。您可以在报告网址中使用 $table_name 变量。

关于php - 在 PHP 和 MySQL 中获取行表的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21682626/

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