2016-04-20 2 views
0

Я новичок в php. Я загружаю несколько файлов из формы вместе с другими входами в базу данных. Полный путь и имя файла должны быть вставлены в БД в одном столбце запятыми. Как мне это сделать?Вставка нескольких путей файлов в одном столбце базы данных?

$filename = $_FILES['file']['name']; 
$folder = "/var/www/html/PhpProject1/"; 
for($i=0; $i<count($_FILES['file']['name']);$i++) 
{ 
move_uploaded_file($_FILES['file']['tmp_name'][$i], $folder.$_FILES['file']['name'][$i]); 
}     
$stmt = $conn->prepare("INSERT INTO studentrecords(name, email, mobileno,address,gender,filename) values (?,?,?,?,?,?)"); 
$stmt->bind_param("ssssss",$name,$email,$mobno,$address,$gender,$filename); 
$stmt->execute(); 
echo "Successfull"; 
$stmt->close(); 
$conn->close(); 

ответ

1

Необходимо сохранить пути в массиве, поскольку вы загружаете несколько файлов. Поэтому здесь я использую массив $paths для хранения путей. И в запросе вставки я использую функцию implode для преобразования массива в строку (с запятой). Таким образом, вы можете хранить все пути как значение, разделенное запятыми, в одном столбце.

Это ваше решение

$filename = $_FILES['file']['name']; 
    $folder = "/var/www/html/PhpProject1/"; 
    $paths = array(); 
    for($i=0; $i<count($_FILES['file']['name']);$i++) 
    { 
    $paths[] = $folder.$_FILES['file']['name'][$i]; 
    move_uploaded_file($_FILES['file']['tmp_name'][$i], $folder.$_FILES['file']['name'][$i]); 
    }     
    $stmt = $conn->prepare("INSERT INTO studentrecords(name, email, mobileno,address,gender,filename) values (?,?,?,?,?,?)"); 
    $stmt->bind_param("ssssss",$name,$email,$mobno,$address,$gender,implode(",",$paths)); 
    $stmt->execute(); 
    echo "Successfull"; 
    $stmt->close(); 
    $conn->close(); 
+0

Thanku очень много. –

+0

Зачем OP использовать это «решение»? *** Хороший ответ *** всегда будет объяснять, что было сделано и почему это было сделано таким образом, не только для OP, но и для будущих посетителей SO. –

+0

@Jay Blanchard: Согласен с вашим комментарием и обновил ответ. Надеюсь, теперь это понятно для OP и будущих посетителей. Благодаря :) –

Смежные вопросы