2016-06-08 3 views
1

У меня есть код, который позволяет человеку загружать несколько изображений через форму.Как вставить данные в базу данных в несколько файлов?

Проблема заключается в том, что изображения загружаются на сервер, но не уверены, как получить изображения для отправки в базу данных.

PHP:

 else{ // No error found! Move uploaded files 
      if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $targetscreenshots.$name)) 

      $count++; // Number of successfully uploaded file 

     } 

Где разместить следующий код?

 { 
mysql_query("INSERT into Colleges (`files`) VALUES ('$files')"); // inserting data if file is moved 
    echo "Your screenshots have been uploaded successfully!" 
     } 
+1

Почему бы не сохранить адрес изображения в базе данных и сохранить изображения на сервере? –

+1

Предложите вам посмотреть [здесь] (http://stackoverflow.com/questions/5863870/how-should-a-model-be-structured-in-mvc) – bated

+0

@KI - Как мой код должен работать (на как минимум, для моего кода ввода одного изображения) заключается в том, что имя изображения отправляется и сохраняется в базе данных, а сам файл изображения сохраняется на сервере. проблема с приведенным выше кодом - я не знаю, как отправить адрес/имя изображения в базу данных. – thomas

ответ

1

Это мой собственный код, который я использую в моем сценарии.

 <?php 
      $upath="../images/"; 
      //uploads is the name of file array that is being uploaded. 
     foreach ($_FILES['uploads']['name'] as $key=>$file) { 
      $target = $upath.$file; 
      $path=substr($target,3); 
      // echo $path; THIS CAN BE STORED DIRECTLY TO THE DATABASE 
      move_uploaded_file($_FILES['uploads']['tmp_name'][$key], $target) 
      or die(); 
      mysql_query(**YOUR INSERT QUERY HERE. IT WONT BE EXECUTED IF IMAGE IS NOT UPLOADED PROPERLY.**)or die(mysql_error()); 

     } 

     ?> 

Я прочитал ваш комментарий, и поэтому я дал этот ответ ... Пожалуйста, поправьте меня, если я неверно истолковал ваш вопрос.

+0

Этот код фокусируется на загрузке SINGLE-изображений. Проблема, с которой я сталкиваюсь, сосредоточена на загрузке MULTIPLE-изображений, которая включает в себя цикл. У меня возникли проблемы с определением, куда положить код mysql_query для вставки имени изображения в базу данных. – thomas

+0

Конечно .. Но место для записи остается тем же ... В условии if, где вызывается перемещение загруженной функции файла .. Если она выполнена успешно, запись в базу данных должна быть выполнена .. @thomas –

+0

В моем коде также используется count ++ increment. каждый раз загружается файл, загружается другой файл, если он доступен. я помещаю запись базы данных до или после приращения? – thomas

0

Вы пропущенный код, который отвечает за изменения базы данных, я предлагаю вам прочитать некоторые учебники как this one. Я не тестировал его, но, по крайней мере, похоже, что он включает в себя все необходимые шаги.

+0

В этом учебном пособии основное внимание уделяется вставке SINGLE изображения в сервер. Мои проблемы связаны с вставкой MULTIPLE изображений в сервер. У меня проблема с одной строкой кода, которая вставляет местоположение файла изображения на сервере в базу данных. – thomas

0

$ файлы = $ _FILES [ "файлы"] [ "tmp_name"] [$ F]

Просто вставьте путь к файлу или имя в БД

+0

Где я могу поместить этот код? и мне также нужен фактический php для INSERT данных в базу данных, но я не знаю, куда положить код. Ваш код действительно не разрешает вставку данных в часть базы данных. – thomas

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