Hello经验丰富的程序员。我目前在../var/www/photos
文件夹中有目录images/
和文件Dan.php
。
在浏览器中使用Dan.php
时单击上传按钮时,会显示成功消息。破碎的图像方块显示出来了。右键单击时,我也无法在新选项卡中打开图像。该图像也不会出现在images/
文件夹中。这是Dan.php
。非常感谢您的见解和帮助。
我也尝试过chmod -R 777 ../var/www/photos/images
。
<!--I want you to use GD Library to Resize the image that is uploaded.
如果你很快就能搞清楚,就开始研究用于裁剪的JS脚本
个人资料图片的图片(比例应为1:1) - &gt;
<html>
<body>
<form action="<?php echo ( $_SERVER['PHP_SELF'] );?>" method="post" enctype="multipart/form-data">
<label for="file">Pictures</label>
<input type="file" name="file[]" id="file" accept="image/*" multiple="">
<button type="submit" name="send_album">Submit</button>
</form>
<?php
if(!is_dir('images')) {
mkdir('images');
}
if(isset($_POST['send_album'])) {
//for($x = 0; $x < 9; $x++)
$x = -1;
foreach ($_FILES["file"]["name"] as $firstNameKey => $arFileDescriptions) {
$x += 1;
if ($_FILES["file"]["error"][$x] > 0) {
echo "Error: " . $_FILES["file"]["error"][$x] . "<br>";
} elseif (file_exists("images/". $_FILES["file"]["name"][$x])) {
echo $_FILES["file"]["name"][$x] . " already exists. <br />";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"][$x], "images/" . $_FILES["file"]["name"][$x] . '/');
echo "Stored in: " . "images/" . $_FILES["file"]["name"][$x] ."<br />";
echo '<img style="height:150px;" src="' . 'images/'. $_FILES["file"]["name"][$x] . '" /><br />';
echo "Upload: " . $_FILES["file"]["name"][$x] . "<br />";
echo "Type: " . $_FILES["file"]["type"][$x] . "<br />";
echo "Size: " . ($_FILES["file"]["size"][$x] / 1024) . " kB<br />";
}
}
}
?>
</body>
</html>
答案 0 :(得分:0)
我对您的代码进行了一些更改。试试这个。
if(isset($_POST['send_album'])) {
//for($x = 0; $x < 9; $x++)
$x = -1;
foreach ($_FILES["file"]["name"] as $firstNameKey => $arFileDescriptions) {
$x++;
if ($_FILES["file"]["error"][$x] > 0) {
echo "Error: " . $_FILES["file"]["error"][$x] . "<br>";
} elseif (file_exists("images/". $_FILES["file"]["name"][$x])) {
echo $_FILES["file"]["name"][$x] . " already exists. <br />";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"][$x], "images/" . $_FILES["file"]["name"][$x]);
echo "Stored in: " . "images/" . $_FILES["file"]["name"][$x] ."<br />";
echo '<img style="height:150px;" src="' . './images/'. $_FILES["file"]["name"][$x] . '" /><br />';
echo "Upload: " . $_FILES["file"]["name"][$x] . "<br />";
echo "Type: " . $_FILES["file"]["type"][$x] . "<br />";
echo "Size: " . ($_FILES["file"]["size"][$x] / 1024) . " kB<br />";
}
}
}
答案 1 :(得分:-1)
如何在服务器上设置 save_mode ?这是一个常见问题。尝试上传到目录只是'photos /',而不是'photos / images /',有效吗?
如果您想更改 save_mode :
1)打开php.ini。 vi / php / php.ini的路径(替换为php.ini文件的路径)
2)找到以下行:safe_mode
3)打开或关闭安全模式。 safe_mode = Off您可以通过将其更改为On或Off来激活或关闭它。 safe_mode =开启
4)通过/etc/init.d/httpd restart重新启动Apache Web服务器或者终止所有退出的httpd连接并运行service httpd startssl