У меня возникают проблемы с получением моих данных из fetchAll для выборочной печати.
В обычном mysql я делаю так:
$rs = mysql_query($sql); while ($row = mysql_fetch_array($rs)){ $id = $row['id']; $n = $row['n']; $k = $row['k']; }
В PDO у меня проблемы. Я привязал параметры, затем я сохраняю извлеченные данные в $ rs, как указано выше, с целью прокрутки через него таким же образом.
$sth->execute(); $rs = $query->fetchAll();
Теперь наступает проблема. Что я делаю PDO-мудрый, чтобы получить что-то, соответствующее циклу while выше? Я знаю, что могу использовать print_r () или dump_var, но это не то, что я хочу. Мне нужно делать то, что я использовал, чтобы иметь возможность делать с обычным mysql, например, захватывать $ id, $ n, $ k индивидуально по мере необходимости. Является ли это возможным?
Заранее спасибо..
Должен быть
while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $id = $row['id']; $n = $row['n']; $k = $row['k']; }
Если вы настаиваете на fetchAll
, то
$results = $query->fetchAll(PDO::FETCH_ASSOC); foreach($results as $row) { $id = $row['id']; $n = $row['n']; $k = $row['k']; }
PDO::FETCH_ASSOC
выбирает только имена столбцов и опускает числовой индекс.