我正在读取两个图像文件并将其存储到psql中。当我读取一个文件时,代码不会引发错误。当我为其他文件添加代码时,代码开始在html末尾抱怨一个脚本的“ Uncaught ReferenceError”。
这是我的代码。这是读取两个图像文件的正确方法,还是我尝试读取文件的方法有问题。
if(isset($_POST["submit1"])){
$file_name = $_FILES["img1"]["tmp_name"];
$img = fopen($file_name, 'r') or die("cannot read image\n");
$data = fread($img, filesize($file_name));
var_dump($file_name);
$es_data = pg_escape_bytea($data);
fclose($img);
$file_name2 = $_FILES["img2"]["tmp_name2"];
$img2 = fopen($file_name2, 'r') or die("cannot read image\n");
$data2 = fread($img2, filesize($file_name2));
var_dump($file_name2);
$es_data2 = pg_escape_bytea($data2);
fclose($img2);
try {
$sql .......................
答案 0 :(得分:0)
$_FILES
是一个多维数组。第一列/元素代表给定的文件,第二列/元素代表与该文件相对应的属性。因此tmp_name
将始终保持不变,而img
可能会发生变化。但是您也可以输入第3维来处理多个文件。
<form action="file-upload.php" method="post" enctype="multipart/form-data">
Send these files:<br />
<input name="userfile[]" type="file" /><br />
<input name="userfile[]" type="file" /><br />
<input type="submit" value="Send files" />
</form>
$_FILES["userfile"]["tmp_name"][0]
是第一个文件的名称,$_FILES["userfile"]["tmp_name"][1]
是第二个文件的名称,...
https://secure.php.net/manual/en/features.file-upload.multiple.php