我在php中执行while循环时出错。实际上在PHP代码中我试图从数据库中获取记录,我在代码的开头建立连接。在代码中我的外部循环执行良好但内部循环只执行一次并终止。然后我尝试再次建立mysql连接循环然后它执行。如果我评论它不能很好。告诉我运行while循环需要再次建立连接或有另一种方法来解决问题。
这是我的代码:
$con = mysqli_connect("localhost", "root", "root", "scheduler");
$sql = "select * from jobschedule";
$result = mysqli_query($con,$sql);
$sql2 = "SET GLOBAL event_scheduler = 1";
mysqli_query($con,$sql2);
while($row = mysqli_fetch_array($result))
{
// $con = mysqli_connect("localhost", "root", "root", "scheduler");
$dbname = $row['DBName'];
$jobname = $row['JobName'];
$sql1 = "call $dbname.$jobname";
$result1 = mysqli_query($con,$sql1);
while($row1 = mysqli_fetch_array($result1))
{
echo '<tr>';
. '<td>' . $row1['Name'] . '</td>';
. '<td>' . $row1['CountryCode'] . '</td>'
. '<td>' . $row1['District'] . '</td>'
. '<td>' . $row1['Population'] . '</td>'
. '</tr>';
}
}
答案 0 :(得分:1)
试试这个
//Connection
$con = mysqli_connect("localhost", "root", "root", "dbname") or die("Error " . mysqli_error($con));
//Query
$query = "SELECT * FROM tablename" ;
//execute the query.
$result = $con->query($query) or die("Error in the Query.." . mysqli_error($con));
//display information:
while($row = mysqli_fetch_array($result)) {
echo $row["field_name"] . "<br>";
}
答案 1 :(得分:0)
您正尝试使用键
访问常规数组值 $dbname = $row['DBName'];
$jobname = $row['JobName'];
要执行此操作,您必须具有关联数组。尝试更改
$row = mysqli_fetch_array
到
$row = mysqli_fetch_assoc