2015-11-14 4 views
0

я уже успешно загрузил мой образ в базу данных, мой код:манипуляция DOM расспрашивает

<?php 
if(isset($_POST['submit'])){ 
    $name = $_POST["inputEntryName"]; 
    $picture_tmp = $_FILES['inputFile']['tmp_name']; 
    $picture_name = $_FILES['inputFile']['name']; 
    $picture_type = $_FILES['inputFile']['type']; 
    $desc = $_POST["desc"]; 
    $path = "upload/". $picture_name; 

    if (file_exists("upload/" . $picture_name)){ 
     echo $picture_name . " already exists. "; 
    } 
    else{ 
     if(move_uploaded_file($picture_tmp,$path)){ 
      require_once "database.php"; 
      $db = new Database(); 
      $insQuery = "insert into image(name,image,description) values('".$picture_tmp."','".$path."','".$desc."')"; 
      $result = $db->query($insQuery); 
      echo "File successfully uploaded!"; 
     } 
     else{ 
      echo "File is not uploaded."; 
     } 
    } 
} 
?> 

я хочу сделать DIV для каждого изображения в моей базе данных что-то вроде этого:

<name> 
<image> 
<description> 

затем Я хочу добавить эти div в мой основной контейнер в index.php. как я могу это сделать? это манипуляция с домом или есть ли другой способ добиться этого?

это моя функция тест:

+0

Как вы загрузки изображений? Если с помощью javascript метод будет отличаться, чем при более традиционном представлении формы. – RamRaider

+0

Я сделал это через традиционную отправку формы, как в приведенном выше коде. – Jason

+0

Как и в случае, если вы используете стандартную форму POST, а не Javascript, вам не нужно будет манипулировать DOM с помощью PHP или Javascript - просто создайте контент во время выполнения, используя запрос, чтобы получить детали изображения из db (для все изображения) и прокручивать набор записей, создавая желаемую структуру html. – RamRaider

ответ

0

В соответствии с запросом, быстрый пример, который поможет вам отображать изображения после отправки формы и обновления вашего db.

<?php 
    session_start(); 
    require_once 'database.php'; 

    if($_SERVER['REQUEST_METHOD']=='POST'){ 
     /* Perform any checks to ensure there is file to proceess */ 

     /* Handle file upload */ 

     /* Insert record into db */ 
    } 
?> 
<html> 
    <head> 
     <title>File upload and image display</title> 
    </head> 
    <body> 
     <!-- 
      by omitting the action, we automatically POST the form to the same page 
      and is processed at the top of the script 
     --> 
     <form name='fileupload' method='post' enctype='multipart/form-data'> 
      <!-- 
       Include all the fields & buttons required to upload file(s) 
      --> 
     </form> 
     <!-- :: Display images :: --> 
     <div id='images'> 
     <?php 
      /* 
       This is slightly pseudo code because it is impossible to know the 
       exact manner in which your `database` class works - mysql, mysqli 
       or possibly pdo. 
      */ 

      $sql='select `name`,`image`,`description` from `image`;'; 
      if(!$db) $db = new Database; 
      $res=$db->query($sql); 
      if($res){ 
       while($rs=$res->fetch_object()){ 
        echo " 
        <div> 
         {$rs->name} 
         <img src='/path/to/images/{$rs->image}' alt='{$rs->description}' /> 
         {$rs->description} 
        </div>"; 
       } 
      } 

      $db->close(); 
     ?> 
     </div> 
     <!-- :: End display images :: --> 
    </body> 
</html> 

Если это не то, что вы имеете в виду то, пожалуйста, объясните, что именно вы пытаетесь сделать - это должно запросить БД и Generat необходимый HTML

+0

Да, это то, что я ищу, так же, как вы публикуете комментарий, я узнал, что могу вернуть html в php-код !!. спасибо – Jason

0

насчета:

// ... assuming that this is the array of the images 
$arr = ... 

for ($i = 0; $i < count($arr); $i++) { 

    echo "<h1>Name</h1>"; 
    echo "<img src=\"" . $arr[ $i ] . "\" />"; 
    echo "<p>Description</p>"; 

} 

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

+0

то, что я пытаюсь сделать, - это автоматически сделать div, содержащий все переменные, а затем добавить его в основной контейнер. Как это сделать с кодом? – Jason

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