@thekot24
Говнокодер.

Почему не записываются данные в БД?

Короче, ребят. Есть код:
for($i = 0; $i < count($groups); $i++){
  /*  $find = mysql_query("SELECT * FROM groups_data WHERE group_id=".$groups[$i]);
    $find = mysql_fetch_assoc($find);
    if(empty($find['group_id'])){
         mysql_query("INSERT INTO groups_data (group_id,post_id) VALUES (".$groups[$i].",0)") or die(mysql_error()); //добавляем наши группы в базу, стави post_id по умолчанию 0
    } else {*/
        $wallGet = api("https://api.vk.com/method/wall.get?owner_id=-".$groups[$i]."&count=1");
        $wallGet = json_decode($wallGet);
        $id =  $wallGet->response[1]->id.' ';
        $group = $groups[$i];
   

    $res =   mysql_query("UPDATE groups_data SET `post_id`='".$id[$i]."' WHERE `group_id`='".$groups[$i]."';");
       echo $res.'<br>';
 #   }
 
    
}

Он почему-то записывает данные только первого group_id, а дальше - нет, что делать?
в $groups это:
$groups = array('122860616','122860645','122860660');
  • Вопрос задан
  • 852 просмотра
Решения вопроса 1
Gavr23
@Gavr23
php, mysql, html
Я один вижу что запрос со вставкой закоментирован? Выполняется только апдейт.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Оох, такой каша вариться, моя не смотреть! (с) Jar Jar Binks.
1) Каша внатуре, ну да ладно, это пол беды.
2) Используйте prepared statements и PDO.
3) Формируйте запросы в переменные, только потом передавайте запрос на исполнение, так хоть можно дебаггить что там в запрос попадает.
4) Если нифига не ясно(как тут) - через строчку ставим print_r(), и так для всего что шевелится.
5) Profit
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы