|
|
|
|
|
для: Jovidon
(13.10.2014 в 14:24)
| | Если говорить о чем-то особенном в PDO, то это курсоры, а остальное разве чем-то отличается от того что вы использовали ранее? Вам не хватает того набора, который вы определили глобально, например в результате объединения - используйте fetchAll(), а в остальном зачем это нужно? | |
|
|
|
|
|
|
|
для: confirm
(13.10.2014 в 13:22)
| | Я вас понял уже установил глобальные настройки.
вапрос был для psychomc
а если выбрать по ИД тогда использовать fetchAll() или просто fetch() ? | |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 13:05)
| | да, и учтите комментарий confirm'a сверху. | |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 13:05)
| | Что так?
Я вам говорю, что установите глобально тот тип, который вам постоянно желателен, fetchAll() и тип одномоментный, это уже в процессе можно указать. | |
|
|
|
|
|
|
|
для: psychomc
(13.10.2014 в 12:56)
| | так?
<?
$statm = $pdo->prepare($sql);
$statm->execute();
$feed = $statm->fetchAll();
if(!empty($feed)) {
// ok
}
|
| |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 11:46)
| | не надо никаких rowCount, вызываете сразу fetchAll и проверяете результирующий массив на empty. и не надо никакой самоделятельности, смотрите в мануал | |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 11:46)
| | В глобальных настройках установите
$optionspdo = array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_CASE => PDO::CASE_LOWER
);
А при разборе:
$news = $statm->fetch();
Или получая одну строку, сразу
$news = $statm->execute()->fetch();
А если в каком-то случае потребуется иное, то указать
...fetch(PDO::FETCH_NUM) | |
|
|
|
|
|
|
|
для: psychomc
(13.10.2014 в 11:19)
| | Спасибо! )
<?
// query
$sql = 'SELECT `news_ID`, `title` '
. 'FROM `news` '
. 'ORDER BY `news_ID` '
. 'DESC ';
// execute
$statm = $pdo->prepare($sql);
$statm->execute();
if($statm->rowCount()) :
$news = $statm->fetchAll(PDO::FETCH_ASSOC);
?>
<table class="table table-bordered">
<thead>
<tr>
<td>#</td>
<td><?php echo $lng['title']; ?></td>
<td width="75"> </td>
</tr>
</thead>
<tbody>
<?php foreach ($news as $row): ?>
<tr>
<td><?php echo (int) $row['news_ID']; ?></td>
<td><?php echo _sf($row['title']);?></td>
<td>
<?php echo _editBtn('news_ID=' . (int) $row['news_ID']); ?>
<?php echo _delBtn('news_ID=' . (int) $row['news_ID']); ?>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php endif; ?>
|
| |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 11:08)
| | лол. испольщуйте метод fetchAll | |
|
|
|
|
|
|
|
для: Jovidon
(13.10.2014 в 11:08)
| | Потому, что первую запись вы уже извлекли перед циклом:
if($statm->fetchColumn() > 0)
rowCount() возвращает количество строк. | |
|
|
|
|