• PDO::prepare или PDO::query?

    @Dark_Dante Автор вопроса
    Александр Таратин: Страшная штука :) Как я понял через гугл переводчик, если явно указать кодировку работы с базой данных через SET names, например utf-8, то всякие китайские иероглифы будут нестрашны?
  • PDO::prepare или PDO::query?

    @Dark_Dante Автор вопроса
    Про многократное использование тут вопросов нет.
    А для однократного использования что лучше?
    Лично я все время во всех случаях все делаю через prepare. И что то стал сомневаться последнее время, правильно ли я делаю?
  • Что тут закодировано?

    @Dark_Dante Автор вопроса
    Спасибо.
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    Анатолий K: Простенькая функция для расчета процентов - принимает сумму первым параметром, проценты вторым (необязательный параметр, по умолчанию равен 10). userdata - массив с данными юзверя, userdata['merge'] - соответственно наценка для текущего пользователя.
    Тут самое удивительное то, что этот код неделю-две назад нормально работал. Обращался в техподдержку, клянутся что ничего в настройках сервера не меняли.

    Ну будем разбираться. Ведь чудес же не бывает... Наверное:)
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    Анатолий K: Ну насколько я знаю, в php это не принципиально. Но тем не менее в рабочем примере как только я не изголялся. И инициировал массив в начале foreach, а по окончании unset'ил, И пробовал объявлять его вне цикла... И пробовал не создавать новый массив, а изменять старый. Те же яйца, только в профиль. Стоит только зайти в цикл - отбивка по таймауту
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    evnuh: Спасибо за совет :) Пробовал. У меня уже крыша едет =) Только свой массив в форыч передам - 504. Даже если внутри форыча все закомментировать.
    Хотя чтобы подготовить исходный массив отрабатывается миллион различных циклов. Если бы foreach совсем не работал то входной массив не создавался бы... Вот это я наговнокодил=)
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    evnuh: Попробовал. То же самое.
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    myfirepukan: может быть я где то туплю? Вот полный код проблемного участка
    $this->load->helper('procents');
    			$res=$this->json->getParts($parts, $s='');
    			//делаем проценты
    			$a=array();
    			if(!empty($res)){
    			
    				foreach($res as $r){
    					$r['price']=round (procents($r['price'], $userdata['merge']), 1, PHP_ROUND_HALF_UP);
    					$r['crc']=md5($r['price'].$r['uniqueid'].$r['brandName'].$r['artikul']);
    					$img_array=$this->json->getImage($r['artikul'], $r['brandName']);
    					if(!empty($img_array))
    						$img_array=json_encode($img_array);
    					else
    						$img_array=false;
    					$r['image']=$img_array;
    					$a[]=$r;
    					
    				} 
                    var_dump($a);
    			}

    $res представляет из себя массив по типу
    array(66) {
    [0]=>
    array(10) {
    ["uniqueid"]=>
    string(32) "101DA34107D9854A29B32A84199634F8"
    ["brandName"]=>
    string(5) "REMSA"
    ["artikul"]=>
    string(6) "020512"
    ["description"]=>
    string(45) "Торм. колодки FORD Scorpio зад."
    ["delivery_period"]=>
    string(3) "5/5"
    ["chance_of_shipment"]=>
    string(5) "н/д"
    ["price"]=>
    float(1161)
    ["last_upd"]=>
    string(16) "2015-05-08 17:08"
    ["origin"]=>
    int(0)
    ["provider"]=>
    string(32) "f781d2dc99fbaa3136da525b2977992e"
    }
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    myfirepukan: попробовал вот так
    $a=array();
    $b=range(0, 1000, 1);
    foreach ($b as $i){
    $a[]=$i;
    }
    var_dump($a);
    Отрабатывает
    Видимо и правда что то с входными данными в массиве $a не так. Только бы еще понять что с ними не так
  • Проблема с foreach. Почему выкидывает 504 ошибку?

    @Dark_Dante Автор вопроса
    хостинг sweb. Лимит 300 сек. Раньше этот же скрипт с этим же кодом отрабатывался нормально.
    Даже больше скажу.
    В foreach делал так
    foreach ($a as $b){
    $c[]=array(); //пустой массив то должен быстро отработать
    }
    И все равно 504.
    Даже если foreach заменить на for:
    $lenght=count($a);
    for ($i=0; $i<$length; $i++){
    $c[]='бла бла бла';
    }
    Тоже 504. Проверил еще раз количество вложенных массивов внутри $a - 65. Данных с гулькин нос.