- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
BasePelleta, может сначала нужно данные ID считать, а уже потом перемешивать. Как думаете?
+ замените $tmp=$mass[$i]; на $tmp[]=$mass[$i];
Вы это имели ввиду ?
var_dump($tmp); выводит array(4) { [0]=> string(3) "339" [1]=> NULL [2]=> NULL [3]=> NULL }
var_dump($zap); выводит string(6) "339,,,"
var_dump($mass) сделайте сначала.
Ещё наверное проверку нужно сделать, если в $mass <$i то break;
Я думал, вы разбираетесь в программировании, коль тут спрашиваете.
var_dump($mass) сделайте сначала.
Ещё наверное проверку нужно сделать, если в $mass <$i то break;
array(1) { ["count(*)"]=> string(3) "339" }
Зачем тут появился count(*)?!
Зачем тут появился count(*)?!
может сначала нужно данные ID считать
array(1) { ["link_id"]=> string(2) "34" }
Теперь вместо:
$tmp[]=$mass[$i];
пишите:
$tmp[]=$mass[$i]['link_id'];
Теперь вместо:
$tmp[]=$mass[$i];
пишите:
$tmp[]=$mass[$i]['link_id'];
Сделал
print_r($tmp); die; вывел Array ( [0] => 3 [1] => [2] => [3] => )
а что в print_r($mass); ?
Если что поменяйте:
$tmp[]=$mass[$i]['link_id'];
на
$tmp[]=$mass['link_id'][$i];
array(1) { ["link_id"]=> string(2) "34" }
Если что поменяйте:
$tmp[]=$mass[$i]['link_id'];
на
$tmp[]=$mass['link_id'][$i];
print_r($tmp); die;
Array ( [0] => [1] => [2] => [3] => )
BasePelleta добавил 25.08.2011 в 10:37
Вроде бы вывод print_r($mass); говорит, что запрос правильный?
Вот так работает:
$mass = $db->one_col_array("SELECT link_id FROM ".TBL_ARTICLE." WHERE catid=\"".$a_Ad['catid']."\"
AND bb_region_id IN (".get_cats($reg_id, RegTable('Regions','category')).") ");
shuffle($mass); //Это перемешает массив.
//Потом выбираем ID
$tmp = array_slice($mass, 0, 3);
//Теперь через запятую их складываем
$zap=implode(',',$tmp);
$ql = 'SELECT link_id AS o_id,'.$TITLE_FIELD.' AS o_title, images AS o_images, bb_descr AS o_descr FROM '.TBL_AD.
' WHERE link_id IN ('.$zap.')'.
FilterSQL().' ORDER BY link_id DESC LIMIT 3';
Мои ошибки:
1. one_col_array - запутался с методом
2. $tmp = array_slice($mass, 0, 3); а не $tmp[]=$mass[$i]['link_id'];
Тема исчерпана!