[英]Get value of a submitted form without submit button
我正在尝试上传没有提交按钮的图像。 我的代码无需提交即可正常工作。
我的HTML代码
<form name="service_image_form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Add new image <input name="userfile" type="file" id="userfile" onchange="return subForm()" />
</form>
<script>
function subForm() {
document.service_image_form.submit();
};
</script>
但是我在使用PHP检索数据时很少感到困惑。 在PHP中,我尝试了类似的方法来检索数据。
if (isset($_POST['service_image_form']))
{
echo "working";
}
在这里,我试图回显“工作”只是为了确认。 如果我的条件正常,则可以将映像保存到服务器和数据库。 我知道它很简单,但是在这里停留了一段时间。 浏览了很多链接,但不知道。 这个你能帮我吗。
我知道如果我有一个名称为“ submit”的提交按钮,那么我可以像这样检索
if(isset($_POST['submit']))
{
upload code comes here..
}
我不要提交按钮。
要检查是否发出过帐请求:
if($_SERVER['REQUEST_METHOD']=='POST'){
echo "working";
}
请注意,上传的文件数据将位于$_FILES
超全局变量中,而不是$_POST
,并且正如Fred所提到的,您将需要在表单上添加enctype属性
您需要这样添加enctype属性
<form name="myform" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Add new image <input name="userfile" type="file" id="userfile" onchange="return subForm()" />
</form>
在您的php中,您可以使用$ _FILE获取上传的文件
<?php
if ($_FILES['userfile']['error'] > 0) {
echo $_FILES['userfile']['error'];
} else {
echo 'Name: ' . $_FILES['userfile']['name'];
echo 'Temp file location in: ' . $_FILES['userfile']['tmp_name'];
}
?>
因此,基本上,您正在尝试检查上传是否正确,对吗? 好吧,这不是怎么做的。
PHP对于该http://php.net/manual/pl/features.file-upload.php具有出色的手册
你想念:
之后一切顺利,您可以在此处找到所有详细信息, 网址为http://php.net/manual/pl/features.file-upload.post-method.php,这非常简单。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.