• ↓
  • ↑
  • ⇑
 
Записи с темой: php (список заголовков)
15:19 

Хочу я сказать, что...

PHP ваще ахриневший или Хром ахриневший, но в общем session_start в нём не пуляет сессию в куки. В моей линуховой Опере пуляет, в виндовой в соседнем кабинете у дэвушки адной не пуляет...
Ясно дело никакого другого вывода в документ я до вызова session_start не делал.
В общем приходится куки прописывать ручками после session_start (что какбэ доказывает, что никакого вывода нет, чтобы куки не принялись, потому что ручками всё принимается).

Короче, не доверяйте функции session_start!

@темы: cookies, php, session_start, кодинг, работа

18:33 

Поддерживаю!

Вася:
Доброго времени суток!
Подскажите, как сохранить двумерный массив в сессии.

tony2001:
точно так же, как и любую другую переменную.

*...потом там всякие мутки, гонения и т.д. и далее произошло...*

Вася:
ладно, ну не правильно выразился, подскажите что надо писать, чтоб сохранить массив? если пишу обычное присвоение, сохраняется скаляр...

Nimous:
А что ты пишешь?

Вася:
if (!isset($_SESSION["maslo"]))
{
session_register("maslo");
$_SESSION["maslo"] = array();
}
$maslo = $_SESSION["maslo"];
$maslo[$_SESSION["kollo"]][0] = $row[0];
$maslo[$_SESSION["kollo"]][1] = $row[1];
$_SESSION["maslo"] = array($maslo);
$kollo = $_SESSION["kollo"];

И первым комментарием было (цитирую с научной точностью):
"шедевр"

@темы: php, work, Я ху&ю! :), работа, юмор

16:53 

Инициатива наказуема...

...а чрезмерная инициатива карается по всем статьям.

История: вчера наш админ попросил посмотреть что нам система автодозвона, поставленная москвичами, хреначит своей вебмордой в логи ошибок и нифига не работает, потому что москвичи говорят, что им не до нас сейчас.

Я взялся... нашёл море говна, индусского кода и ... снова индусского кода да лени/спешки/непонятно чего. Но реально некоторые тамошние решения очень улыбали, а некоторые делали из меня идиота, потому что я в этом "лего" не мог найти где оно и что, и куда... реально по файлам переменные больше нигде не использовались/не объявлялись и тому подобное...

В общем я позволил себе очень большую оплошность. Я решил приколоть нашего админа и дописал в их лого вместо их слогана "потому что индусы дешевле". Ага, забыл сказать, суть в том, что эта фигня же для внутреннего пользования вроде бы как, потому я думал, что никто, кроме админа не увидит.

И вот он рок -- они зашли в 23 по нашему времени (в 1:00 ночи по ихнему) посмотреть че там не работает... зашли и ушли.
Сегодня обиженные и могут расторгать договора на свои услуги.

Я уже наизвинялся и т.п., но пока что последний вариант известий от них, если я такой умный, то они мне будут давать наводки, а я буду сам настраивать. Это они админу нашему говорят, мне почему-то не говорят.
Если так и будет, то будет жопа. Я получу от всех, а то и уволят, хз.

Последний же мой акт извинения выглядит в виде письма с извинением, списком всего, что я наисправлял и звонком, итогом которого есть "мы Вам по почте всё ответим". Вот сижу, жду...

@темы: работа, программирование, звиздец, work, programming, php, я - идиот

17:54 

defined() - ЗЛО!

Никогда по возможности не используйте в php ф-цию defined() -- она медленнее медленного.
Как пишет мой западный коллега, самый медленный вариант проверки условия с параметром:

defined(CONST);

где CONST - неопределённая константа.
По идее следующий по тормознутости вариант это где CONST -- определённая константа.
Но у него это исчислялось миллисикундами (2+ для определённой константы и 12+ миллисекунд при неопределённой). Собственно вот:



У меня же на практике выходит ещё веселее:
В индексном файле (index.php) объявляю:
define('INDEX', 1);

а в начале подключаемых через include_once() файлов делаю проверку
if (!defined(INDEX)) header("Location: /"); // перенаправляю на индексный файл

И вот, при отработке файла отдельно, т.е. при неопределённой константе, там действительно дело идет в миллисекундах и он перенаправляет на индексный, что я и заметить толком не успеваю невооруженным глазом. Да и пробовал там же перед самой проверкой тупо для тестов определить константу - не заметно.

А вот при отработке в паре с include_once() дела хуже некуда -- константа, выходит, что определена, а страница объемом менее 1 КБ в браузере грузится более секунды, т.е. тупо раздражительно залипает. Только комментирую строку с проверкой, как перезагрузка страницы становится подобна мельканию.

Так-то!

@темы: defined, php, work, работа

21:33 

PHP + MySQL

Эта страница решает все холивары какое из PHP расширений (интерфейсов) для работы с базами данных юзать:
ua2.php.net/manual/en/mysqli.overview.php

Для работы исключительно с MySQL - mysqli (PHP's mysqli Extension)
Для работы с разными/другими БД - PDO (PHP Data Objects)
Если вы совсем отстали от жизни и у вас MySQL сервер ниже версии 4.1.3, то ТОЛЬКО ТОГДА классическое расширение MySQL (PHP's MySQL Extension)

Причем для работы с мускулом, какой бы из них вы не выбрали, рекомендуется настроить на работу с mysqlnd (MySQL native driver).
Для чего в Linux при сборке PHP нужно добавить параметров:
./configure --with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
...другие параметры

А в Windows дистрибутивах, начиная с версии 5.3, mysqlnd выставлен по умолчанию и ничего делать не нужно.

@темы: mysql, php, работа

Не Сам у рай

главная