Php 是否将行数组中的值传递给另一个变量名?
如何将行数组中的值传递给另一个变量,因为行数组的结果我需要在另一个表中执行另一个查询以进行选择。在echoPhp 是否将行数组中的值传递给另一个变量名?,php,mysqli,Php,Mysqli,如何将行数组中的值传递给另一个变量,因为行数组的结果我需要在另一个表中执行另一个查询以进行选择。在echo$row['Plate']和$plateID中,都可以显示值,但对于另一个查询,不会显示结果。这是我的代码: <?php $connection=mysqli_connect("localhost","root",""); $db=mysqli_select_db($connection,'db_car_identification'); $q="SELECT Plate FROM
$row['Plate']
和$plateID
中,都可以显示值,但对于另一个查询,不会显示结果。这是我的代码:
<?php
$connection=mysqli_connect("localhost","root","");
$db=mysqli_select_db($connection,'db_car_identification');
$q="SELECT Plate FROM addplate ORDER BY ID DESC LIMIT 1 ";
$result=mysqli_query($connection,$q);
while($row = mysqli_fetch_array($result)) {
echo $row['Plate'];
$plateID = $row['Plate'];
echo $plateID;
$query="SELECT StuName FROM student_detail WHERE plateID=$plateID";
$query_run=mysqli_query($connection,$query);
while($row1=mysqli_fetch_array($query_run)) {
echo $row1['StuName'];
}
}
?>
请检查一些步骤
如果有帮助,请告诉我。您真的应该使用 然而,在您的示例中,您可以简单地使用SQL子查询。这将使您的代码更简单
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$connection = new mysqli("localhost", "root", "", 'db_car_identification');
$connection->set_charset('utf8mb4');
$result = $connection->query('SELECT StuName, Plate
FROM student_detail
WHERE plateID = (SELECT Plate FROM addplate ORDER BY ID DESC LIMIT 1)');
foreach($result as $row1){
echo $row1['StuName'];
}
尝试打印
$row1
并查看其中是否有任何内容。当我打印它时,它显示mysqli_fetch_array()期望参数1是mysqli_result。听起来您需要了解MySQL连接,您可以通过一个查询而不是许多小查询来执行所需的操作。实际上有3张桌子我需要加入。如果我把所有的表都连接在一起,它将有4个表需要连接。这就是为什么我先把单个选择放在一起,然后根据第一个选择的结果连接其他3个表。谢谢你的主意。我会看一看。所以现在我需要首先为这个想法进行配置。echo$query=“从学生详细信息中选择StuName,其中plateID=$plateID”编码>并直接在数据库上执行该查询,然后检查其是否有效。第三步有效。谢谢老板。。但是为什么我需要添加“”,因为数据类型设置为varchar而不是日期?因为您需要在查询中为每个非数字数据类型(如varchar、string、date等)添加引号。