Reputation: 33
I have an error in executing a while loop in php. actually in php code I tried to fetch records from database for that i establish connection at the beginning of code.In code my outer loop executed well but inner loop executed only one time and terminated.Then i tried to establish mysql connection once again within while loop then it executed.If i comment this it not work well.Tell me to run while loop there is need to establish connection once again or there is another way to solve problem.
Here is my code:
$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>';
}
}
Upvotes: 1
Views: 178
Reputation: 481
Try this
//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>";
}
Upvotes: 1
Reputation: 1304
You are trying to acces normal array's values with keys
$dbname = $row['DBName'];
$jobname = $row['JobName'];
To do this you must have associative arrays. Try changing
$row = mysqli_fetch_array
to
$row = mysqli_fetch_assoc
Upvotes: 0