Извините, если у меня есть неправильная терминология.mysql query array counter
У меня есть цикл в PHP, который работает запрос MySQL ...
for ($i = 0; $i <count($user_id_pc); $i++)
{
$query2 = " SELECT job_title, job_info FROM job_description WHERE postcode_ss = '$user_id_pc[$i]'";
$job_data = mysqli_query($dbc, $query2);
$job_results = array();
while ($row = mysqli_fetch_array($job_data))
{
array_push($job_results, $row);
}
}
Результаты, которые даются, когда я вставить ...
print_r ($job_results);
На экран -> Массив()
Если я изменю запрос на m $user_id_pc[$i]
до $user_id_pc[14]
например, я получаю один набор результатов.
Если я включить этот код после запроса и внутри для цикла
echo $i;
echo $user_id_pc[$i] . "<br>";
я получить номер счетчика $i
находится на которой следуют данные внутри массива для этого счетчика позиции.
Я не уверен, почему массив $job_results
пуст из запроса, используя счетчик $i
, но нет, если я вводим номер вручную?
Это особый характер, который мне нужно бежать?
Полный код
<?php
print_r ($user_id_pc);
//Select all columns to see if user has a profile
$query = "SELECT * FROM user_profile WHERE user_id = '" . $_SESSION['user_id'] . "'";
//If the user has an empty profile direct them to the home page
$data = mysqli_query($dbc, $query);
if (mysqli_num_rows($data) == 0)
{
echo '<br><div class="alert alert-warning" role="alert"><h3>Your appear not to be logged on please visit the<a href="index.php"> home page</a> to log on or register. <em>Thank you.</em></h3></div>';
}
//Select data from user and asign them to variables
else
{
$data = mysqli_query($dbc, $query);
if (mysqli_num_rows($data) == 1)
{
$row = mysqli_fetch_array($data);
$cw_job_name = $row['job_description'];
$cw_rate = $row['hourly_rate'];
$job_mileage = $row['mileage'];
$job_postcode = $row['postcode'];
$response_id = $row['user_profile_id'];
}
}
for ($i = 0; $i <count($user_id_pc); $i++)
{
$query2 = " SELECT job_title, job_info FROM job_description WHERE postcode_ss = '{$user_id_pc[$i]}'";
$job_data = mysqli_query($dbc, $query2);
$job_results = array();
while ($row = mysqli_fetch_array($job_data))
{
array_push($job_results, $row);
}
echo $i;
?>
<br>
<?php
}
print ($query2);
print $user_id_pc[$i];
?>
попробовать это $ Query2 = "SELECT JOB_TITLE, job_info FROM job_description WHERE postcode_ss =«" $ user_id_pc [$ я]".. «"; – JYoThI
запрос внутри цикла не является хорошим способом добиться того, что есть, есть другой способ сделать это .....? –