Sly32

Рейтинг
370
Регистрация
29.03.2012
Mad_Man:
Sly32, методы классов не должны ничем гадить в основной поток вывода. Никаких echo во внутренних вызовах не должно быть.

И вам спасибо, добрый человек))) Ценно, буду знать. А как тогда обработать случай с отсутствием данных?

Tibald, С такой позиции я с вами соглашусь. Сантехник - пусть, Но вот когда рисуют сотни сайтов и пихают их потом во всякие сапы и блогуны...

Ragnarok, Понятно, спасибо за помощь

SeVlad, Я исходил из того, что ТС немного перепутал термины и имел ввиду не php-файл а запись (post) или страницу уже в базе данных и именно в них планировал править дивы через админку.

SeVlad:
Можно и водку "пить" спринцеванием в анус.. А вот править файлы по http - есть дурная и вредная затея. Да-да родной ВПшный редактор - большое зло и я не дождусь когда его наконец выкинут из ядра и вынесут в плагин.
Еще более вредная затея ТАК решать задачу (редактирования контента), как это хочет ТС.
У ВП есть 100500 нормальных способов реализации. И они ничуть не гемморей (если сделать как надо), чем правка файлов. По юзабилити ровно тоже, а мб и удобней.

Ну, я в приницпе считаю весь WP - большим злом.)) Серьезно. Он настолько прост для пользователя, что теперь любой сантехник идет и делает себе сайт. Обычно с приставкой говно- )))

Но в данном случае как раз через плагин и можно не использовать встроенный редактор а создать свой

Ragnarok,

1. Да,нужно сделать еще проверку полученных данных. Я проверяю, правда наличие строки после выполнения query - этого недостаточно, думаете? Проверять еще и каждый fetch?

2. как правильно - прямо вфункции вставить $limit = (int)$limit; ?

Ilekor, Нет, я сделал именно как хотел. Может несколько коряво, но визуально проще

Класс:


public static function dat1($limit){
global $mysqli;
$res = array();
$arg = "SELECT * FROM `posts` WHERE `p_type` = 'news' ORDER BY `p_title` ASC LIMIT 0, " . $limit;
$query = $mysqli->query($arg);
$row_cnt = $query->num_rows;
if ($row_cnt > 0) {
for ($i = 0; $i < $row_cnt; $i++){
$res[$i] = $query->fetch_array(MYSQLI_ASSOC) ;
}
return $res;
}
else{
echo 'Ничего не найдено';}

}

На выводе:


foreach (News::dat1(3) as $n) {
echo $n['p_title'];
}

Теперь универсальный вывод получится, особенно если классами задавать стили как нужно в разных местах страницы. Еще раз спасибо, без вас уже 2 дня бился, не мог все изученное в кучку собрать)))

Ilekor, Thanks a lot!!

Благодаря всем помогающим был направлен в нужное русло и разобрался!

Теперь в классе циклом создаю массив с нужными данными, а не как ранее, одну строку, а в выводе с помощью foreach делаю нормальный вывод. ТСтили прилепить теперь значительно проще, постепенно получается уйти от ЦМСки

Ilekor, C

этим разобрался. Но моя функция выводит данные только по одной строке из таблицы, последней по выбранным параметрам. Фореач - доступ ко всем переменным из строки - это хорошо. А как получить следующую строку?

Например вывести все заголовки p_title из таблицы posts

Ilekor, Стыдно признаться, но все равно не понимаю...

А вывести как? этот foreach должен быть в классе, но вне вызываемой функции?

Как потом использовать данные на странице вывода?

Всего: 7322