Попробуйте использовать json, например:
$_SESSION['data'] = json_encode(mysql_fetch_array($result));
Редактировать
Позже вы затем json_decode
переменная $_SESSION['data']
и получите массив со всеми необходимыми данными.
Пояснение:
Вы можете использовать json_encode
и json_decode
, если хотите уменьшить количество строк кода, которые вы пишете. В примере в вопросе, строка кода была необходима для копирования каждого столбца в базе данных в массив SESSION. Вместо того чтобы делать это с 50-75 строками кода, вы можете сделать это с 1 на json_encoding
всей записи базы данных в строку. Эта строка может быть сохранена в переменной SESSION. Позже, когда пользователь заходит на другую страницу, там присутствует переменная SESSION со всей строкой JSON. Если вы хотите узнать имя, вы можете использовать следующий код:
$fname = json_decode($_SESSION['data'])['fname'];
Этот метод не будет быстрее, чем построчное копирование, но сохранит кодирование и будет более устойчивым к изменениям в вашей базе данных или коде.
КСТАТИ
У кого-нибудь еще есть проблемы с входом] в уценку? Я должен вставить это.