Вставка изображений PHP Mysql

#php #mysql

Вопрос:

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

 <?php
header("Location:../index.php");
// Create database connection
$db = mysqli_connect("localhost", "root", "", "alu");
// Initialize message variable
$msg = "";

//If upload button is clicked ...
if (isset($_POST['submit'])) {
//Get image name
$txtproducttitle = $_POST['txtproducttitle'];
$txtProductDescription = $_POST['txtProductDescription'];
$txtProdutPrice = $_POST['txtProdutPrice'];
$AdCondition = $_POST['AdCondition'];
$PrImg1 = $_FILES['PrImg1']['name'];
$PrImg2 = $_FILES['PrImg2']['name'];
$PrImg3 = $_FILES['PrImg3']['name'];
$PrImg4 = $_FILES['PrImg4']['name'];
$AdCategory = $_POST['AdCategory'];
$AdLocation = $_POST['AdLocation'];
$txtname = $_POST['txtname'];
$txtuseremail = $_POST['txtuseremail'];
$txtContact = $_POST['txtContact'];
$AdPayment = $_POST['AdPayment'];

$target = "../upload/".basename($PrImg1);
$sql = "INSERT INTO advertisement (AdTitle, AdDes, AdPrice, 
AdCondition, AdImg1, AdImg2, AdImg3, AdImg4, AdCategory, AdLocation, 
AdSellName, AdSellMail, AdSellContact, AdPayment) 
  VALUES  ('$txtproducttitle','$txtProductDescription','$txtProdutPrice','$AdCondition','$PrImg1','$PrImg2','$PrImg3','$PrImg4','$AdCategory','$AdLocation','$txtname','$txtuseremail','$txtContact','$AdPayment')";
mysqli_query($db, $sql);

if (move_uploaded_file($_FILES['PrImg1']['tmp_name'], $target)) {
    $msg = "Ad Successfully Posted";
}else
{
    $msg = "Failed To Post Ad";
}
}
$result = mysqli_query($db, "SELECT * FROM advertisement");
 

Комментарии:

1. См. раздел О внедрении sql и важности подготовленных и связанных запросов

2. И нормализуйте свою схему

Ответ №1:

Вам нужно использовать функцию move_uploaded_file для других изображений.
Воспользуйся:

 if (move_uploaded_file($_FILES['PrImg2']['tmp_name'], $target2)) {
    $msg = "Ad2 Successfully Posted";
}
else
{
    $msg = "Failed To Post Ad2";
}
if (move_uploaded_file($_FILES['PrImg3']['tmp_name'], $target2)) {
    $msg = "Ad3 Successfully Posted";
}
else
{
    $msg = "Failed To Post Ad2";
}
if (move_uploaded_file($_FILES['PrImg4']['tmp_name'], $target2)) {
    $msg = "Ad4 Successfully Posted";
}
else
{
    $msg = "Failed To Post Ad4";
}
 

Комментарии:

1. Да, я так думаю. где код для перемещения других файлов?