PHP MySQL выбрать результаты

0
<?php
$sql = "
  SELECT e.*, l.counts AS l_counts, l.date AS l_date, lo.counts AS lo_counts, lo.date AS lo_date
  FROM employee e
  LEFT JOIN logs l 
  ON l.employee_id = e.employee_id
  LEFT JOIN logout lo
  ON lo.employee_id = e.employee_id
  WHERE e.employee_id =" .(int)$_GET['salary'];

  $query = mysql_query($sql);

  $rows = mysql_fetch_array($query);

  while($countlog = $rows['l_counts']) {
  echo $countlog;
  }
echo $rows['first_name']; 
echo $rows['last_name_name']; 
?>


Я получил то, что хочу, с моим первым именем и last_name (получить только 1 результат). l_counts Я хотел бы зациклить эту вещь, но результат не останавливается, пока мой компьютер не перезагрузится. Лол. Как я могу получить точный результат? Мне нужно только получить точные результаты l_counts.

Спасибо
Иордания Пагадуан

Теги:

3 ответа

3
Лучший ответ

вы должны выполнить цикл rows, а не над $row[key]

while($row = mysql_fetch_array($query)) {
    echo $row['l_counts'];
}
  • 0
    если я это сделаю, то $ row ['last_name_name']; будут затронуты. Я только хотел зациклить это l_counts;
  • 0
    тогда вы должны сохранить last_name_name из первой итерации для дальнейшего использования. но в любом случае это плохая идея. если вам нужно: 1) все l_counts 2) первое last_name_name то вам нужно выполнить 2 запроса: первый получит только l_count s, а второй получит только одну запись с одним полем.
Показать ещё 2 комментария
1

Вы используете оператор присваивания = не оператор сравнения ==.

так что эта линия равна while(1) { }

то, что вы пытаетесь сделать, как предложено @zerkms, и зацикливать на возвращенные записи.

edit re: дополнительные комментарии OP

чтобы получить 1-ю строку, а затем петлю над остальными

$firstrow = mysql_fetch_array($query);
while($rows = mysql_fetch_array($query)
{
   //fun PHP скрипт
}
1
$mysqli = new mysqli("localhost", "root", "", "test");

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

if ($result = $mysqli->query("DO HERE WHAT YOU WANT TO DO (:")) {
    while($row = $result->fetch_row()){
        echo $row[0];
    }
    $result->close();
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню