Php 上传多张图片

Php 上传多张图片,php,mysql,sql,html,Php,Mysql,Sql,Html,我有一个简单的代码来上传多个图像,将图像上传到一个文件夹并保存到数据库的路径。我的问题是,图像名称将保存到数据库中,但图像不会上载到文件夹中。这是我正在使用的代码。这是一个免费的代码(没有太多的html),所以你可以尝试一下。我的数据库由id、image1、image2和image3组成 这是上传的代码 <?php include'includes/db.php'; if(isset($_POST['submit'])){ $extension = substr($_FILE

我有一个简单的代码来上传多个图像,将图像上传到一个文件夹并保存到数据库的路径。我的问题是,图像名称将保存到数据库中,但图像不会上载到文件夹中。这是我正在使用的代码。这是一个免费的代码(没有太多的html),所以你可以尝试一下。我的数据库由id、image1、image2和image3组成

这是上传的代码

<?php
include'includes/db.php';
  if(isset($_POST['submit'])){

    $extension = substr($_FILES['photo1']['name'],
    strrpos($_FILES['photo1']['name'], '.'));

    $extension = substr($_FILES['photo2']['name'],
    strrpos($_FILES['photo2']['name'], '.'));

    $extension = substr($_FILES['photo3']['name'],
    strrpos($_FILES['photo3']['name'], '.'));


     $extension = strtolower($extension);
     echo $extension;

    if( $extension == ".jpg" || $extension == ".jpeg" || $extension ==  ".gif" || $extension == ".png" )
    {
        $img1=$_FILES['photo1']['name'];
        $img2=$_FILES['photo2']['name'];
        $img3=$_FILES['photo3']['name'];

        $size=$_FILES['photo']['size'];
        $type=$_FILES['photo']['type'];
        $temp=$_FILES['photo']['tmp_name'];

        $limit_size = 1024000; 
        $size_in_kb = 1024; 
        $max_size = $limit_size/$size_in_kb; 


        if($size > $limit_size)
        {
            echo "<script>location.replace('test.php?err=File size exceeds $max_size KB')</script>";    

        }
        else 
        {
            move_uploaded_file($temp,"images/".$img1);
            move_uploaded_file($temp,"images/".$img2);
            move_uploaded_file($temp,"images/".$img3);

            $sql2="INSERT INTO ad_images(image1, image2, image3)VALUES('$img1', '$img2', '$img3')";
            $res2=mysql_query($sql2);

            if($res2){
            echo "<script>location.replace('test.php?success=Product added successfuly')</script>";
            }else{
            echo "<script>location.replace('test.php?vlx=Error. Try Again...')</script>";
        }
     }
   }
 }
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Script Testing</title>
</head>

<body>
  <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
  <p> Upload Image<br />
        <input type="file" name="photo1" id="photo"><br />
        <input type="file" name="photo2" id="photo"><br />
        <input type="file" name="photo3" id="photo"><br />

    <input type="submit" name="submit" id="submit" value="Add Product" style="margin-top: 25px; margin-left: 335px;"/>
  </p>

</body>
</html>
这就是我所做的

<?php
include'includes/db.php';
  if(isset($_POST['submit'])){

    $extension = substr($_FILES['photo1']['name'],
    strrpos($_FILES['photo1']['name'], '.'));

    $extension = substr($_FILES['photo2']['name'],
    strrpos($_FILES['photo2']['name'], '.'));

    $extension = substr($_FILES['photo3']['name'],
    strrpos($_FILES['photo3']['name'], '.'));


     $extension = strtolower($extension);
     echo $extension;

    if( $extension == ".jpg" || $extension == ".jpeg" || $extension ==  ".gif" || $extension == ".png" )
    {
        $img1=$_FILES['photo1']['name'];
        $img2=$_FILES['photo2']['name'];
        $img3=$_FILES['photo3']['name'];

        $size=$_FILES['photo']['size'];
        $type=$_FILES['photo']['type'];

        $temp1=$_FILES['photo1']['tmp_name'];
        $temp2=$_FILES['photo2']['tmp_name'];
        $temp3=$_FILES['photo3']['tmp_name'];

        $limit_size = 1024000; 
        $size_in_kb = 1024; 
        $max_size = $limit_size/$size_in_kb; 


        if($size > $limit_size)
        {
            echo "<script>location.replace('test.php?err=File size exceeds $max_size KB')</script>";    

        }
        else 
        {
            move_uploaded_file($temp1,"images/".$img1);
            move_uploaded_file($temp2,"images/".$img2);
            move_uploaded_file($temp3,"images/".$img3);

            $sql2="INSERT INTO ad_images(image1, image2, image3)VALUES('$img1', '$img2', '$img3')";
            $res2=mysql_query($sql2);

            if($res2){
            echo "<script>location.replace('test.php?success=Product added successfuly')</script>";
            }else{
            echo "<script>location.replace('test.php?vlx=Error. Try Again...')</script>";
        }
     }
   }
 }
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Script Testing</title>
</head>

<body>
  <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
  <p> Upload Image<br />
        <input type="file" name="photo1" id="photo"><br />
        <input type="file" name="photo2" id="photo"><br />
        <input type="file" name="photo3" id="photo"><br />

    <input type="submit" name="submit" id="submit" value="Add Product" style="margin-top: 25px; margin-left: 335px;"/>
  </p>

</body>
</html>

您似乎正在尝试移动未上载的文件

<input type="file" name="photo1" id="photo"><br />
<input type="file" name="photo2" id="photo"><br />
<input type="file" name="photo3" id="photo"><br />
在这些情况下,电源编程通常会有所帮助。找一个朋友(他在编程方面不一定比你强,但如果他比你强的话,这会有帮助)尽可能地向他解释问题。下一件事你知道-你已经解决了你的问题


另外,与您的显式问题无关,html中不应该有重复的id值。您有三个重复的ID。

我想是这样的:

<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"    enctype="multipart/form-data">
<p> Upload Image<br />
    <input type="file" name="photo[]" id="photo"><br />
    <input type="file" name="photo[]" id="photo"><br />
    <input type="file" name="photo[]" id="photo"><br />

<input type="submit" name="submit" id="submit" value="Add Product"  style="margin-top: 25px; margin-left: 335px;"/>
</p>

</body>
</html>


您必须将名称定义为name=“photo[]”

应该是:

<input type="file" name="photo[]" id="photo"><br />
<input type="file" name="photo[]" id="photo"><br />
<input type="file" name="photo[]" id="photo"><br />




$temp1=$\u文件['photo1']['tmp\u name']$temp2=$\u文件['photo2']['tmp\u名称']$temp3=$_文件['photo3']['tmp_名称'];没有人。。。。。我只是把这个$temp1=$\u文件['photo1']['tmp\u名称'];$temp2=$_文件['photo2']['tmp_名称'];$temp3=$_文件['photo3']['tmp_名称'];现在图片上传得很好。。无论如何,谢谢你,伙计:)没有人。。。。。我只是把这个$temp1=$\u文件['photo1']['tmp\u名称'];$temp2=$_文件['photo2']['tmp_名称'];$temp3=$_文件['photo3']['tmp_名称'];现在图片上传得很好。。无论如何,谢谢你,伙计:)看看这个多图片上传短而甜!!
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"    enctype="multipart/form-data">
<p> Upload Image<br />
    <input type="file" name="photo[]" id="photo"><br />
    <input type="file" name="photo[]" id="photo"><br />
    <input type="file" name="photo[]" id="photo"><br />

<input type="submit" name="submit" id="submit" value="Add Product"  style="margin-top: 25px; margin-left: 335px;"/>
</p>

</body>
</html>
<input type="file" name="photo[]" id="photo"><br />
<input type="file" name="photo[]" id="photo"><br />
<input type="file" name="photo[]" id="photo"><br />