Как занести массив в mysql

streloc

Новичок
Как занести массив в mysql

Есть формочка. Добавляю в базу, А она пишет в поле ааа=Array а не нужные данные.
<select name="aaa[]" multiple>
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="d">d</option>

Что я делаю не так???
 

Demiurg

Guest
сериализовать массив.

А что у тебя в этом массиве ?
 

streloc

Новичок
А если пишу так
<select name="aaa" multiple>
То пишется только первое значение.

Что такое сериализовать массив.???
 

Krisha

pain in the neck
имхо, запихивать серриализованный массив ему вовсе не нужно...
 

StUV

Rotaredom
Krisha
если бы он сказал хоть слово, про то что что ему _действительно_ нужно =)))
 

Tigr

Новичок
посмотри ф-ю implode(), хотя если бы сказал что тебе нужно конкретно ...
 

streloc

Новичок
Мне нужно запихнуть несколько значений в поле базы данных, а затем вытащить все эти значения
 

StUV

Rotaredom
streloc
с помощью [m]serialize[/m]/[m]unserialize[/m] это можно сделать ...

возможно, если бы ты описал саму задачу немного подробнее, то получил бы более правильное решение
 

streloc

Новичок
Не знаю как подробнее. Всё очень просто.
Есть форма. В ней выделяем несколько опций ОДИН, ДВА,ТРИ,ЧЕТЫРИ. Затем эти четыри значения надо занести в базу НАПРИМЕР в поле 'NUMBER'. Потом вывести по запросу из базы обратно в массив. Помоему всё просто но я не знаю как.

serialize/unserialize - я прочитал но пока не понял. Может можно по другому
 

Tigr

Новичок
при записи массива делаешь serialize($arr), при выборке $arr = unserialize();
 

StUV

Rotaredom
этот вариант хранения породит траблы, если тебе тебе когда-нибудь потребуется доступ не ко всем данным массива, а "точечно" (причем из большого кол-ва записей)

но если этого никогда не произойдет (зависит от постановки задачи - т.е. осмысленного ответа на вопрос "зачем ?" - возможно по сути тебе всегда будут нужны все элементы массива из одной записи) - тогда можно и так

-~{}~ 28.05.04 17:30:

>> я прочитал но пока не понял
сериализация представляет массив в виде строки определенного формата
ан-сериализация - восстанавливает его прежнюю структуру
 

StUV

Rotaredom
какая разница =))))

прочти из базы и сделай unserialize - увидишь
 

Tigr

Новичок
если тяжко понять, но нужно сейчас сделать то возьми implode(',', $arr) и explode(',', $data_from_field)

но разобраться все же нужно...
 

Balancer

Guest
Я для хранения массивов использую просто отдельные таблицы, типа (id, key, value)

И хранить просто, и работать, и с выборками никаких проблем...
 
Сверху