![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера RMCreative.ru - Блог/Записи в блоге |
![]() |
RMCreative.ru - Блог
Голосов: 1 Адрес блога: http://rmcreative.ru/feed/ Добавлен: 2008-06-12 21:34:00 блограйдером ZaiSL |
И ещё раз про невнятные ошибки MySQL
2012-04-18 17:18:58 (читать в оригинале)Снова наткнулся на совсем-совсем невнятные ошибки MySQL. Всё больше убеждаюсь, что о людях при написании данной его части никто не думал.
ALTER TABLE `post` DROP FOREIGN KEY `FK_Post_UserID`
В результате получаем:
SQLSTATE[HY000]: General error: 1025 Error on rename of './mydb/post' to './mydb/#sql2-11a-1f2c' (errno: 152)
Очень помогло…
Оказывается, нормальую информацию, получить всё-таки можно. Правда, через одно место:
SHOW ENGINE INNODB STATUS
отдаст нам кучу всего, в том числе:
LATEST FOREIGN KEY ERROR ------------------------ 120418 16:58:22 Error IN dropping of a FOREIGN KEY CONSTRAINT of TABLE "mydb"."post", IN SQL command ALTER TABLE `post` DROP FOREIGN KEY `FK_Post_UserID` Cannot find a CONSTRAINT WITH the given id "FK_Post_UserID".
Вот это уже намного понятней. У нас просто нет FK с таким именем. Интересно, чем руководствовались разработчики MySQL, скрывая от конечного пользователя действительно важную ему информацию?
Опасность слепой проверки заголовка X-Forwarded-For
2012-04-15 02:46:45 (читать в оригинале)Сегодня пришёл pull-request в Yii на эту тему. В классе CHttpRequest
есть метод getUserHostAddress
, который отдаёт нам IP пользователя. Предложение было перед возвратом $_SERVER['REMOTE_ADDR']
проверить, а нет ли чего в $_SERVER['HTTP_X_FORWARDED_FOR']
, и, если есть — вернуть. Мотивация — будут видны IP пользователей за прокси.
Так как такое заблуждение встречается ну очень часто, я даже не сразу вспомнил, откуда берётся $_SERVER['HTTP_X_FORWARDED_FOR']
. А берётся он из заголовка HTTP запроса X-Forwarded-For
и означает это то, что придти нам может что угодно.
А теперь представим, что разработчик воспользовался изменённым методом getUserHostAddress
, проверяющим X-Forwarded-For
:
if(in_array(Yii::app()->request->getUserHostAddress(), $allowedAddresses)) { // даём доступ к админке }
Тем, кто пишет на Zend Framework, кстати, стоит проверить свой код потому как Zend_Controller_Request_Http::getClientIp()
без переданного аргументом false
как раз проверяет X-Forwarded-For
:
/** * Get the client's IP addres * * @param boolean $checkProxy * @return string */ public function getClientIp($checkProxy = true) { if ($checkProxy && $this->getServer('HTTP_CLIENT_IP') != null) { $ip = $this->getServer('HTTP_CLIENT_IP'); } else if ($checkProxy && $this->getServer('HTTP_X_FORWARDED_FOR') != null) { $ip = $this->getServer('HTTP_X_FORWARDED_FOR'); } else { $ip = $this->getServer('REMOTE_ADDR'); } return $ip; }
Заслал репорт в трекер Zend Framework на всякий случай.
YiiConf 2012, открыта финальная регистрация
2012-04-10 13:08:04 (читать в оригинале)Открыта финальная регистрация на первую ежегодную профессиональную конференцию YiiConf.
- Дата проведения конференции: 19 мая
- Стоимость участия: $50, 1500р. или 400 гривен
- Количество мест: 200
- Место проведения: ул. Михайловская, 1/3 (Площадь Независимости) г. Киев, 01001, Украина
Докладчики
Александр Макаров
Опытный инженер, один из основных разработчиков Yii, создатель yiiframework.ru и rmcreative.ru, автор книги Yii 1.1 Application Development Cookbook. Расскажет о том, как ведётся разработка Yii, поведает факты о том, что же будет в Yii2, ответит на вопросы, научит, как правильно помочь проекту.
Алексей Спиридонов
Руководитель группы разработки и архитектор проекта api.2gis.ru. Расскажет о том, как применяют Yii в 2GIS.
Григорий Кочанов
Тимлид в компании sotmarket.ru (крупный российский интернет-магазин, партнёрская сеть), 8 лет занимался аутсорсингом, в прошлом — финансовый инженер УкрСиббанка. Объяснит, как правильно готовить MANY_MANY.
Андрей Геоня
Разработчик 2GIS, продолжит рассказ о том, как работают в компании. Его доклад называется «Теория ограничения в Agile команде».
Артём Демченков
Руководитель PHP-отдела компании Онтико, расскажет о проблеме персонализации контента и её решении средствами Yii и Sphinx.
Сергей Безбородов
Разработчик trud.com, поведает о проблемах роста и усложнения проекта.
Роман Гомолко
Покажет, как упростить себе жизнь с помощью KnockoutJS при построении сложного интерфейса.
Напоминаем, что визы из России не требуется.
За новостями можно следить в твиттере и социальных сетях.
По всем вопросам можно писать на org@yiiconf.ru.
До встречи на yiiconf!
Подробное сравнение синтаксиса PHP, Perl, Python и Ruby
2012-03-30 15:11:45 (читать в оригинале)Целых две страницы с подробным сравением синтаксиса интерпретируемых языков программирования.
- Страница первая
- Страница вторая
Шпаргалка easing-функций
2012-03-30 15:05:40 (читать в оригинале)Отличная наглядная шпаргалка по easing-функциям. Это те, что определяют изменение скорости анимации и используются в jQuery, SASS и CSS transition.
Рассматриваем


![]() | ||
+140 |
160 |
Zoxx.ru - Блог Металлиста |
+121 |
146 |
artnotes.ru |
+113 |
313 |
Yukari_7 |
+81 |
140 |
кино и люди |
+26 |
139 |
Mellanius.ru |
![]() | ||
-1 |
72 |
Bestmult.info - лучшие мультфильмы для просмотра on-line |
-1 |
67 |
Блог |
-4 |
62 |
Выкрутасы скачать бесплатно |
-9 |
15 |
Скачать все субтитры |
-10 |
14 |
Скачать субтитры L |

Загрузка...

взяты из открытых общедоступных источников и являются собственностью их авторов.