Forum Webscript.Ru

Общие => Базы данных => Тема начата: a@mail.dux.ru от 25 Июля 2004, 17:28:26

Название: как записать массив в базу данных?
Отправлено: a@mail.dux.ru от 25 Июля 2004, 17:28:26
Не получается записать массив в базу данных или вывести из нее (MySQL). Не знаю, на каком шаге ошибка у меня.

код на пхп написан.













"") {

$SQLUpdate="update user set
massicq=\'$abc\'
Where ID=1
";
// формат massicq - blob

//тут коонект к бд и выполнение запроса. так что опускаю это;

//обновляет данные вроде нормально. но проверить то я их не могу.
// в моем phpmyadmin написано что в massicq - [BLOB]


теперь пытаюсь вывести данные
$SQLrequest="Select *  From user where ID=1";
//тут коонект к бд и выполнение запроса. так что опускаю это;

$massicq=mysql_result($result,0,"massicq");

//если тут же вывести $massicq echo $massicq - выведет - Array

}//END IF  ?>





//это я пытаюсь вывести данные из массива
//если вывести из полученного про формировании массива из формы,
//то все срабатывает
//$massicq=$abc;


$countmassiv=count($massicq);
   for ($i=0; $i<=$countmassiv; $i++){
      If($massicq[$i]<>"") {
         
         
         echo $massicq[$i];
         echo "
" ;
      } // end If($massiv[$i]<>"")
                    
   }// end for

 ?>

спасибо.
Название: как записать массив в базу данных?
Отправлено: Phoinix от 25 Июля 2004, 18:45:40
a@mail.dux.ru

[OFF]Весьма оригинальный способ хранения массивов...[/OFF]

А нельзя хранить массив, как-нибудь по-другому???
Название: как записать массив в базу данных?
Отправлено: a@mail.dux.ru от 25 Июля 2004, 20:29:46
Хорошая мысль, но хочется в базе данных :)
Название: как записать массив в базу данных?
Отправлено: AliMamed от 25 Июля 2004, 22:55:12
[p]serialize[/p]
Название: как записать массив в базу данных?
Отправлено: FANTAzeRus от 26 Июля 2004, 13:00:26
If (is_array($abc))
{
$LIST = implode("::",$abc)
$SQLUpdate="update user set massicq=\'".$LIST."\'Where ID=1";

Для Чтения:

$res="Select * From user where ID=1";
if(mysql_num_rows($res)>0)
{
$ln=mysql_fetch_array($res);
$massicq=explode("::",$ln[\'massicq\']);
foreach($massicq as $line)
{
echo $line."
"
}
}

?>

ИМХО это то, что ты хотел!
Название: как записать массив в базу данных?
Отправлено: ActiveX от 29 Июля 2004, 23:40:01
a@mail.dux.ru
Не понял, ты хошь массив построчно запихнуть в базу, или массив в одну строчку в базе?
Название: как записать массив в базу данных?
Отправлено: a@mail.dux.ru от 30 Июля 2004, 01:32:26
Господа, простите, что отлучился. отвечу всем :)

AliMamed , я в английском не силен. пытался понять, чего же там такое, но не понял, каким боком указанная тобой страница относится к моему вопросу. Может просто я не понял. извини :(


FANTAzeRus, спасибо огромное за подробный ответ. Но это не совсем то, что я хотел. А чего хотел, того может и не сделать :)
А так , разбить массив а потом собрать - я тоже умею. Так пока и спасаюсь :)


ActiveX, ты такие вопросы задаешь :) я на них не знаю ответы.
Ну, вот просто форма создает массив и я хочу его сунуть в базу как есть, что бы не раскладывать потом, как советывал мне
FANTAzeRus (еще раз спасибо ему. хороший человек :)  проголосую даже за него :))

.. а просто вытащить из базы - вот тебе и массив. Может и нельзя так, скажите и тему закроем :(
Название: как записать массив в базу данных?
Отправлено: a@mail.dux.ru от 30 Июля 2004, 01:34:38
А чего кстати не за всех голосовать то можно? мне не удалось выполнить гражданский долг (как обещал) :(
Название: как записать массив в базу данных?
Отправлено: Макс от 30 Июля 2004, 02:56:39
a@mail.dux.ru
в mysql нет такого типа данных как массив, поэтому просто без лишних телодвижений ты пхп-шный массив в таблицу не запишешь.

Чтобы ответить на твой вопрос тебе самому надо четко представлять, для чего тебе нужен "массив" именно в БД и как ты с ним собираешься работать.