вставка массива в поле базы

Тема в разделе "PHP Pro", создана пользователем SimonSmith, 10 фев 2011.

Статус темы:
Закрыта.
  1. SimonSmith

    SimonSmith Постоялец

    Регистр.:
    25 сен 2008
    Сообщения:
    148
    Симпатии:
    33
    Создаю массив с input="files[]", обрабатываю:
    PHP:
    foreach ($_FILES["files"]["error"] as $key => $error) {
                           if (
    $error == UPLOAD_ERR_OK) {
     
    $file_types = array('image/jpeg' => 'jpg','image/gif' => 'gif','image/png' => 'png');                            
                                        if (
    array_key_exists($_FILES["files"]["type"][$key], $file_types)) {
    mysql_query ("INSERT INTO table SET row1 = '".$_FILES["files"]["name"][$key]."'") or die();
    }
    }
    в примере при запуске создаются 2 записи... но как сделать что бы весь массив вводился одной записью в row1...
     
  2. Maza

    Maza

    Регистр.:
    3 июл 2007
    Сообщения:
    255
    Симпатии:
    118
    Если правильно понял, то так.
    Сделать конкатенацию строк там где if, а вставку вынести за пределы цикла.
    Т.е что то типо этого $line .=$_FILES["files"]["name"][$key]
    PHP:
    foreach ($_FILES["files"]["error"] as $key => $error) {
                           if (
    $error == UPLOAD_ERR_OK) {
     
    $file_types = array('image/jpeg' => 'jpg','image/gif' => 'gif','image/png' => 'png');                            
                                        if (
    array_key_exists($_FILES["files"]["type"][$key], $file_types)) {
     
    $line .=$_FILES["files"]["name"][$key];
    }

    mysql_query ("INSERT INTO table SET row1 = '".$line."'") or die();
     
  3. Juri

    Juri

    Заблокирован
    Регистр.:
    5 окт 2007
    Сообщения:
    1.065
    Симпатии:
    197
    Читайте про
    http://docs.php.net/manual/en/function.serialize.php

    ну и обратное первому
    http://docs.php.net/manual/en/function.unserialize.php
     
Статус темы:
Закрыта.