嗨,伙计们,我在php中遇到了POST问题,你知道,所以,是的,数据代码
<form action="index.php?upload=true" method="post">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
<?php
if (isset($_GET['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_POST['photo'];
list($width, $height) = getimagesize($uploaded);
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
?>
所以我的问题是:当我按下上传按钮,我得到错误:http://postimg.org/image/h39bvyt8j/(我不能上传图片,我没有声誉)是的,我所需要的是:当我按下上传按钮时,图像比例必须写入,如你在图片底部看到的,例如:我上传图像,按下上传,它写:宽度:100px高度:150px谢谢你的帮助!(我认为有一些Post方法)
上传文件时必须定义enctype="multipart/form-data"为:
<form action="index.php?upload=true" method="post" enctype="multipart/form-data">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
文档在这里
应该使用$_FILES['photo']
而不是$_POST['photo']
,这意味着您还需要将enctype="multipart/form-data"
添加到form
元素。
点击这里阅读更多
你必须添加
enctype="multipart/form-data"
,并将动作留空。之后,添加以下代码
if (isset($_POST['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_FILES['photo']['name'];
move_uploaded_file($_FILES['photo']['tmp_name'], $uploaded);
list($width, $height) = getimagesize($uploaded);
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
变化
if(isset($_GET['upload']))
if(isset($_POST['uploaded']))
也$uploaded=$_POST['photo'];
$uploaded = $_FILES['photo'];
1)将action = ""
保留为空,因为代码存在于同一文件中。
2)在表单标签中添加enctype="multipart/form-data"
属性。
$_FILES[];
代替$_POST[];
4)在['photo']
后面添加['name']
和Tadah !现在应该可以运行了:
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="photo" id="photo" value="upload image">
<input type="submit" name="upload" value="DO IT"/>
</form>
<?php
if (isset($_POST['upload'])) {
runMyFunction();
}
function runMyFunction(){
$uploaded=$_FILES['photo']['name'];
list($width, $height) = getimagesize("path/to/images/image.jpg");
echo "width: " . $width . "<br />";
echo "height: " . $height;
}
?>