За последние 24 часа нас посетили 22490 программистов и 1147 роботов. Сейчас ищут 620 программистов ...

Не работает редактирование

Тема в разделе "PHP для новичков", создана пользователем MrSullex, 27 июн 2016.

  1. MrSullex

    MrSullex Активный пользователь

    С нами с:
    15 сен 2015
    Сообщения:
    122
    Симпатии:
    1
    Имеется функция редактирования данных в базе данных

    Код (PHP):
    1. public function updatePromo($promoid, $data = array()) {
    2.         $sql = "UPDATE `promo`";
    3.         if(!empty($data)) {
    4.             $count = count($data);
    5.             $sql .= " SET";
    6.             foreach($data as $key => $value) {
    7.                 $sql .= " $key = '" . $this->db->escape($value) . "'";
    8.                
    9.                 $count--;
    10.                 if($count > 0) $sql .= ",";
    11.             }
    12.         }
    13.         $sql .= " WHERE `id` = '" . (int)$promoid . "'";
    14.         $query = $this->db->query($sql);
    15.         return true;
    16.     }
    Вызывает функцию с помощью

    Код (PHP):
    1. $this->usersModel->updatePromo($promoid, $promoData);
    Но кнопка редактирования тупо зависает и ничего не срабатывает.
    Если закомментировать строку вызова функции, то срабатывает result (выводит сообщение об успехе).
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    отлаживай) нам не видно какие ошибки тебе сообщает субд и пхп
    кстати в логике ошибка. если пустая дейта то можно сразу выйти из функции вместо выполнения пустого запроса "обнови промо где юзер такой-то" (то есть без указания пар ключ-значение. кэп)
     
  3. MrSullex

    MrSullex Активный пользователь

    С нами с:
    15 сен 2015
    Сообщения:
    122
    Симпатии:
    1
    php ошибок не выдает, apache кстати тоже. просто зависает и все.
     
  4. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Рассказывай как проверяешь)
     
  5. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.902
    Симпатии:
    969
    отлаживай построчно. развесь вардампы переменных, убедись в их значении. и проверь индексы в базе - может тупит долго из-за самого обновления. в общем тебе виднее что у тебя там за код и как он должен работать.
     
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв