【发布时间】:2016-03-31 06:58:59
【问题描述】:
我刚刚开始学习 mysqli 和 php ...所以我是新手。 我正在尝试为 babynames 建立一个网站。
我在 phpmyadmin 中有一个babynames 数据库。有表 country1、country2、country3....等等。所有表格都有相同的列 id、name、meaning、gender 和 alphabet >.
我使用以下代码使用 PHP 和 MYSQLI 打印名称表
$sql1="SELECT id,name, meaning, alpha, gender FROM $country WHERE gender='$gender' AND alpha='$alpha' $limit";
$query=mysqli_query($con,$sql1);
while($rows=mysqli_fetch_array($query)){
echo "<td><a href='meaning-of.php?name=$rows[name]'>".$rows['name']."</a></td>";
echo "<td>".$rows['meaning']."</td>";
echo "<td>".$rows['gender']."</td></tr>";
}
name 列链接到meaning-of.php?name=$rows[name]
现在我想要一个 PHP 和 MYSQLI 中的代码来搜索数据库“babynames”的所有表(比如 100 个表)以查找特定的 name 并显示相同的 name 和含义。 如果 name 在表格中不止一次出现,那么所有的名字都应该连同它们各自的含义一起显示出来。
我如何在所有表中搜索特定名称并使用 PHP 和 MYSQLI 显示。
我想通过像 http://localhost/meaning-of.php?name=John 或 http://localhost/meaning-of.php?name=samson 那样只将 name 变量传递到地址栏中来搜索数据库,并且通过仅根据名称搜索数据库的所有表来查找含义。like 如果设置名称而不是通过 $name=$_GET["name"]; 获取名称然后搜索整个数据库表并显示含义
有没有类似的代码
SELECT *(all columns) FROM * (all the tables or the database name or all the databases) WHERE name=$name;
请帮忙。请提前谢谢您。
【问题讨论】:
-
也许整理你的数据库可能会有所帮助。一张表,其中包含您的
countries列表和unique key值。一个带有unique key值的names表,然后创建另一个表uses,其中包含names.key和countries.key。有些名字可能出现在不止一个国家/地区,因此会显示为1,2和1,3。查询所有名称会更容易,查询特定国家/地区的名称也很容易。 -
在你的常识下阅读我的评论他的回答