DZHETIGAPA
26.02.2012 - 02:56
У меня есть несколько переменных, которые представляют собой многомерные массивы. Мне нужно эти переменные занести в БД. Для этого я для каждой переменной использую функцию serialize. Но эта функция ведет себя как-то непонятно. То заносит в БД сериализованный массив, а то в поля БД заносит следующее: N; то есть раз на раз не приходится.
В чем может быть дело? Где моя ошибка?
jetistyum
26.02.2012 - 06:30
Ну как ты наверное понимаешь, сама функция serialize не заносит ничего в базу, поэтому если ты подозреваешь, что в базе не то, что надо, проверяй без базы. А N; это наверное сериализированное значение переменной которая равна null.
DZHETIGAPA
26.02.2012 - 12:10
Так это понятно, что сама функция не заносит. Я использую sql запросы для занесения в БД сериализованный массив.
И без базы я проверяю. Ничего не выводит поэтому и херню в БД заносит.
caballero
26.02.2012 - 14:39
так проверь что на вход serialize подается
и что выводит
БД тут при чем вообще
walerus
26.02.2012 - 17:00
DZHETIGAPA Скорее всего пустой массив ты сериализируешь, по этому и выдает N;
проверяй на то что это массив и он не пустой.
if ( is_array( $array ) && !empty( $array ) )
$array = serialize( $array );
else
die ( "Это не массив или массив пустой." );
P.S. 777 - Сообщений... ))
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.