Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php创建一个基于输入创建更多表单字段的文件上载表单?_Php_Forms_File_Loops_Upload - Fatal编程技术网

如何使用php创建一个基于输入创建更多表单字段的文件上载表单?

如何使用php创建一个基于输入创建更多表单字段的文件上载表单?,php,forms,file,loops,upload,Php,Forms,File,Loops,Upload,我的SQL表中有十列:id、imgid、urlid、image1、image2、image3、image4、image5和comment。Id、imgid和urlid是int类型。图[1-5]为mediumblob类型。Url和注释是文本类型。Imgid是上传的图像数(最大值应该是5),urlid是提交的url数(现在应该是一个),url保存url,comment保存用户评论 表单首先询问用户想要上传多少张图片(在我的脚本中,最多5张)。例如,如果用户选择3,那么也应该使用新的提交按钮创建3个文

我的SQL表中有十列:id、imgid、urlid、image1、image2、image3、image4、image5和comment。Id、imgid和urlid是int类型。图[1-5]为mediumblob类型。Url和注释是文本类型。Imgid是上传的图像数(最大值应该是5),urlid是提交的url数(现在应该是一个),url保存url,comment保存用户评论

表单首先询问用户想要上传多少张图片(在我的脚本中,最多5张)。例如,如果用户选择3,那么也应该使用新的提交按钮创建3个文件上载字段。名为$imgid的变量将存储数字3,即用户要上载的文件数。然后,用户选择3个图像并单击新创建的submit按钮,将这三个图像提交到SQL表的前三个图像列中。我的问题是,当我单击第一个按钮后出现的第二个提交按钮时,出现以下错误:

Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty in dbpform2.php on line 75
以下是我迄今为止所做的:

<html>
<body>

<form action="dbpform2.php" method="POST">
How many images do you want to upload?<br>
<input type="text" name="imgid"  /><br />
<input type="submit" name="submit" value="submit" />
</form>

<?php 
mysql_connect ("","","") or die(mysql_error());
mysql_select_db ("") or die(mysql_error());


$imgid = $_POST['imgid'];

if (isset($_POST['submit']))
{
    echo"<form action='dbpform2.php' method='POST' enctype='multipart/form-data'>
";

    if ($imgid >= 5)
    {
        for ($i=1; $i<= 5; $i++)
        {

        ${'img' . $i} = "img".$i;
        echo "<input type='file' name='${'img' . $i}'  /> <br />";

        }

        echo"
        <input type='hidden' name='imgid' value='$imgid' />
        <input type='submit' name='submit2' value='submit2' />
        </form>";
    }

    if ($imgid <= 5)
    {
        for ($i=1; $i<=$imgid; $i++)
        {

        ${'img' . $i} = "img".$i;
        echo "<input type='file' name='${'img' . $i}'  /> <br />";

        }
        echo"

        <input type='hidden' name='imgid' value='$imgid' />
        <input type='submit' name='submit2' value='submit2' />
        </form>";
    }
}

?>

<?php

$imgid = $_POST['imgid'];

for ($i=1; $i <= $imgid; $i++)
{

${'img' . $i} = "img".$i;
${'file' . $i}  = $_FILES['${'.img.' . $i}']['tmp_name'];

}

    if (isset($_POST['submit2']))
    {

        for ($i=1; $i<=$imgid; $i++)
        {
            ${'img' . $i} = "img".$i;
            ${'file' . $i} = addslashes(file_get_contents ($_FILES['${'.img.' . $i}']['tmp_name']));

        }

        mysql_query ("INSERT INTO dbp VALUES ('','$imgid','$urlid','$url', '$file1', '$file2','$file3','$file4','$file5','$comment')"); 

    }
?>



</body>
</html>

您要上载多少图像?


$\u文件['${.img..$i}']

替换为
$\u文件[${'img'.$i}]

使用IDE编辑脚本,以避免此类愚蠢的错误。尝试NetBeans、PhpStorm。

并尝试阅读。

$\u文件['${.img..$i}']

替换为
$\u文件[${'img'.$i}]

使用IDE编辑脚本,以避免此类愚蠢的错误。尝试NetBeans、PhpStorm。

试着读一下。

啊,又是意大利面代码。人们真的需要使用MVC。同意,你可能真的想重新考虑你的方法。你为什么用php而不是javascript来做这件事?啊,又是意大利面代码。人们真的需要使用MVC。同意,你可能真的想重新思考你的方法。你为什么用php而不是javascript来做这件事?谢谢你的帮助。我基本上是在使用youtube教程、Google、W3schools和这个网站尽可能快地死记硬背PHP,所以看起来愚蠢的错误对我来说并不那么明显。谢谢你的帮助。我基本上是在用youtube教程、Google、W3schools和这个网站尽可能快地死记硬背PHP,所以看起来愚蠢的错误对我来说并不那么明显。