0

一度に複数のファイルをアップロードしようとしていますが、ギャラリー名を定義する列の名前を定義するための単独のフォーム フィールドがあります... さまざまなスクリプトと方法を試しましたが、成功したのはこれだけです一つは、それぞれにギャラリーの名前を入力する必要があることを除いて、これを行う方法はありますか?

ここに私のHTMLフォームがあります

    <form action="php_multiple_upload2.php" method="post" name="form1" enctype="multipart/form-data">
        <input type="text" name="galnom1"><input type="file" name="fileUpload1" ><br>
        <input type="text" name="galnom2"><input type="file" name="fileUpload2"><br>
        <input type="text" name="galnom3"><input type="file" name="fileUpload3"><br>
        <input type="text" name="galnom4"><input type="file" name="fileUpload4"><br>
        <input name="hdnLine" type="hidden" value="4">
        <input name="btnSubmit" type="submit" value="Submit">
    </form>

ここにPHPコードがあります

    <?php
    include("../../cnf/cnctr.php");

    for($i=1;$i<=(int)($_POST["hdnLine"]);$i++)
    {
    if($_FILES["fileUpload".$i]["name"] != "")
      {
      if(copy($_FILES["fileUpload".$i]["tmp_name"],"img/".$_FILES["fileUpload".$i]["name"]))
        {
          $strSQL = "INSERT INTO galeria ";
          $strSQL .="(galnom,ttl) VALUES ('".$_POST["galnom".$i]."','".$_FILES["fileUpload".$i]["name"]."')";
          mysqli_query($fsn,$strSQL);
          echo "Copy/Upload ".$_FILES["fileUpload".$i]["name"]." completed.<br>";
        }
      }
    }
    echo "<br><a href='php_multiple_upload6.php'>View file</a>";
    mysqli_close($fsn);
    ?>

これは、HTMLフォームをどのように想像するかです:

    <form action="php_multiple_upload2.php" method="post" name="form1" enctype="multipart/form-data">
      <input type="text" name="gallery_name"><br> <!-- Just one field to name the gallery -->
      <input type="file" name="fileUpload1" ><br>
      <input type="file" name="fileUpload2"><br>
      <input type="file" name="fileUpload3"><br>
      <input type="file" name="fileUpload4"><br>
      <input name="hdnLine" type="hidden" value="4">
      <input name="btnSubmit" type="submit" value="Submit">
    </form>

いつも助けてくれてありがとう:)

よろしくお願いします

4

1 に答える 1

2

思った通りの形で使えます。

ライン交換するだけ

$strSQL .="(galnom,ttl) VALUES ('".$_POST["galnom".$i]."','".$_FILES["fileUpload".$i]["name"]."')";

この行で:

$strSQL .="(galnom,ttl) VALUES ('".$_POST["gallery_name"]."','".$_FILES["fileUpload".$i]["name"]."')";

念のため、SQL コードは SQL インジェクションに対して完全に保護されていないことに注意してください。

于 2012-09-29T15:10:54.517 に答える