Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
52 / 3 / 4
Регистрация: 27.02.2016
Сообщений: 277

Цикл While внутри for()

21.08.2018, 15:29. Показов 1395. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, друзья. Никак не могу понять, что не так. подскажите, внизу скрипт.

Суть его в чем.
Я в сервис Mailchimp добавляю email адреса в списки рассылки.
Для примера их у меня пока 3 списка.

Вытаскиваю из БД первые 3 email адреса, также из файла listid.txt вытаскиваю первую строку с id списка, эти 3 мыла закидываю в 1 список под первым id из файла listid.txt
потом удаляю первые 3 адреса из бд

Далее цикл идет по второму кругу и снова вытаскиваю 3 email адреса из бд, вытаскиваю уже вторую строку из listid.txt, закидываю 3 мыла во второй список и последний 3 круг.

Но у меня срабатывает только 3 круг, 1 и 2 нет, т.е. только в последний список загружаются email адреса.

Подправьте, пожалуйста, не вижу сам.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
$file= file('api.txt'); //Список с id email листов на Mailchimp
 
 
for ($x=0; $x<3; $x++) {
 
$sql = mysql_query("SELECT * FROM base LIMIT 0,3");
while($result = mysql_fetch_array($sql)){
 
$array = array(
    'email_address' => $result['email'],
    'status'        => 'subscribed',
);
    
$json = json_encode($array);
 
$list_id = $file[$x];//id email листа для загрузки в него email адресов
 
$api_key = 'мой api';
$data_center = substr($api_key,strpos($api_key,'-')+1);
 
$url = 'https://'. $data_center .'.api.mailchimp.com/3.0/lists/'. $list_id .'/members';
 
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $api_key);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
$result = curl_exec($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status_code;
    
    }
    
    
    $del = mysql_query("DELETE FROM base LIMIT 3");
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.08.2018, 15:29
Ответы с готовыми решениями:

Цикл внутри функции
Я только начинаю использовать функции… Такая функция работает отлично: function isBad ($text) { if(@substr_count($text,...

Цикл внутри цикла
Здравствуйте, делаю скрипт для массового добавления урлов и кеев в базу тдс. Нужно чтобы переменная $poziciya увеличивалась на 1. То есть...

Цикл внутри конструкции echo
Помогите понять, почему не работают циклы и конструкции языка в echo. Код типа такого: $buildform=&quot; &lt;form&gt;&lt;tr&gt;...

2
 Аватар для Nick007
101 / 94 / 38
Регистрация: 30.09.2009
Сообщений: 442
21.08.2018, 16:03
Лучший ответ Сообщение было отмечено samvel4000 как решение

Решение

попробуйте убирать символ конца строки
PHP
1
$list_id =  rtrim($file[$x]);//id email листа для загрузки в него email адресов
Добавлено через 2 минуты
возможно из-за лишнего символа в адресе, по курлу не приходят данные
1
52 / 3 / 4
Регистрация: 27.02.2016
Сообщений: 277
21.08.2018, 16:06  [ТС]
Nick007, Спасибо, так и есть, все работает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.08.2018, 16:06
Помогаю со студенческими работами здесь

Возврат в бесконечный цикл после fatal error внутри него
Дано: бесконечный цикл (демон на php), который запускается банальным переходом по ссылке вида site.ru/daemon?key=jiowvzvd324e (key - это...

Цикл внутри цикла!
Здравствуйте. Имеется БД из 2 таблиц. Подключена к программе через АДО. Нужно вывести отчет в ексель по группам: т.е. сначала вывести...

Цикл внутри цикла (While)
Всем привет. Никак не получается организовать цикл внутри цикла на SQL Server 2012. В итоге отрабатывает только первый цикл. На...

Цикл внутри цикла
Есть вопрос, можно ли задать цикл внутри цикла? Вот в этой программе чтоб j прошёл условие while(j&lt;9) и выполнился цикл while (i&lt;9)...

Цикл внутри цикла
Возможно ли сделать ветвлением? Здесь же не одно истинное значение, как и ложное


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru