Загружать и отображать несколько изображений с помощью php?

Код вставки:

 <input type="hidden" name="size" value="350000">
<input type="file" name="photo">

Код дисплея:

 echo "<img src='/images/" . $row['photo']. "' height='150px'><br>";

Но это касается только одной фотографии. Есть ли способ сделать несколько изображений?

Вот php процессы, обрабатывающие данные, которые вводятся в форму:

 <?php

//This is the directory where images will be saved
$target = "images/";
$target = $target . basename( $_FILES['photo']['name']);

//This gets all the other information from the form
$photo=($_FILES['photo']['name']);

// Connects to your Database
mysql_connect("localhost", "", "") or die(mysql_error()) ;
mysql_select_db("dirtypol_election2016compariso") or die(mysql_error()) ;

// Writes the information to the database
mysql_query("INSERT INTO databasename (photo) VALUES ('$photo')") ;

//Writes the photo to the server
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)) {

//Tells you if its all ok
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded, and your information has been added to the directory";
}
else {
//Gives and error if its not
echo "Sorry, there was a problem uploading your file.";
}
?>

0

Решение

  • Имя входа должно быть определено как массив, т.е. name = «inputName []»

  • Элемент ввода должен иметь несколько = «несколько» или просто несколько

  • Файл PHP использует синтаксис «$ _FILES [‘inputElemName’] [‘param’] [index]»

  • Убедитесь, что вы ищете пустые имена файлов и пути, массив может
    содержат пустые строки

HTML:

<input name="files[]" type="file" multiple="multiple" />

PHP:

<?php

include('config.php'); // my database connection is come form this file

// check files are set or not
if(isset($_FILES['files'])){

$errors= array();
$desired_dir="attachments/"; // replace with your directory name where you want to store images
// getting files array
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){

$file_name = $_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];
// checking file size (because i use it)
if($file_size > 8097152){
$errors[]='File size must be less than 8 MB'; // change or remove it
}

$filename=time().$file_name; // for creating unique file name
if(empty($errors)==true){
// moving files to destination
$move=move_uploaded_file($file_tmp,$desired_dir.$filename);
// you can direct write move_uploaded files method in bellow if condition
if($move)
{
// inserting data into database
mysql_query("INSERT into your_tablename(your_field) VALUES('$filename')"); // inserting data if file is moved
echo "The file ".$filename." has been uploaded"; // only for debugging
}
else{
echo $filename."is note uploaded"; // use this for debugging otherwise remove it
}

}
else{
echo $errors;
}
}
}
if(empty($error)){
echo "All attachments are uploaded successfully"; // your success message/action
}
?>

Я использую приведенный выше код для загрузки и вставки данных мультипал файлов, и он работает гладко. 🙂
Надеюсь, что это полезно …

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]