- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Что выведет этот запрос посмотрите здесь http://bloodtar.ru ниже надписи "Последние посты( в разрабоке)"
Как видите, не у всех постов есть значение post_title, поэтому отображаются пустые поля. Что указать в where, чтоб отображались только не пустые поля? есть вообще такое?
function view_lposts($params)
{
global $DB;
$res = mysql_query("SELECT post_title, post_creator_user_ID, post_ID, post_status
FROM evo_items__item
WHERE post_status = 'published' and post_title is not NULL
ORDER BY evo_items__item.post_datecreated DESC
LIMIT 0 , 20");
echo $params['block_title_start'];
echo $params['block_title_end'];
echo '<ul>';
while ($row = mysql_fetch_object($res)) {
$resu = mysql_query("SELECT blog_ID
FROM evo_blogs
WHERE blog_owner_user_ID = $row->post_creator_user_ID");
while ($rowa = mysql_fetch_object($resu)) {
echo '<li><a href="http://bloodtar.ru?blog='.$rowa->blog_ID.'&p='.$row->post_ID.'" >'.$row->post_title.'</a></li>';}}
echo '</ul>';
гуглим на тему Left Join
гуглим на тему Left Join
Используйте операцию LEFT JOIN для создания левого внешнего объединения, при котором все записи из первой (левой) таблицы включаются в динамический набор, даже если во второй (правой) таблице нет соответствующих им записей. - по-моему это не про меня...
По-моему вы просто не поняли что к чему. С помощью джойна можно объединить ваш аццкий код в один запрос, и как раз либо пропустить отсутствующие соответствия, либо наоборот их включить.
Дело осложняется только LIMIT 20, это придется вынести из sql на уровень php
neolord, с объединением что-то не понял, а проблему решил так:
function view_lposts($params)
{
global $DB;
$res = mysql_query("SELECT post_title, post_creator_user_ID, post_ID
FROM evo_items__item
WHERE post_status = 'published'
ORDER BY evo_items__item.post_datecreated DESC
LIMIT 0 , 20");
echo $params['block_title_start'];
echo $params['block_title_end'];
echo '<ul>';
$h=0;
while ($row = mysql_fetch_object($res) and $h<10) {
if($row->post_title){
$resu = mysql_query("SELECT blog_ID
FROM evo_blogs
WHERE blog_owner_user_ID = $row->post_creator_user_ID
LIMIT 0,1");
while ($rowa = mysql_fetch_object($resu)) {
echo '<li><a href="http://bloodtar.ru?blog='.$rowa->blog_ID.'&p='.$row->post_ID.'" >'.$row->post_title.'</a></li>'; $h=$h+1;}}}
echo '</ul>';
}