我有以下html
<form action="upload.php" method="get" enctype="multipart/form-data">
Enter 10 digit mobile number <input id="imgphno" type="text" maxlength="10" />
<br/><br/>
<input id="file" type="file" name="file" />
<br/><br/>
<input type="submit" name="submit" value="Send" id="sndimg"/>
</form>
当我运行浏览器地址栏时显示
http://116.75.128.138/balasaheb/upload.php?file=thumb.jpg&submit=Send
如何访问upload.php中的文本框内容?
答案 0 :(得分:2)
您正在使用GET方法将表单数据发送到上传页面。
您可以使用_GET["submit"]
_GET["file"]
将名称属性添加到<input id="imgphno" type="text" maxlength="10" />
但您需要使用POST方法发送数据以达到thumb.jpg的内容。
答案 1 :(得分:1)
使用表格中的文件和文字时,_POST为空
上传文件时,必须使用POST而不是GET。上传不适用于GET方法。
method="post"
另外请确保您的PHP包含$_POST
而不是$_GET
,但您尚未向我们展示。
如果要获取文本框的值,请使用表单元素命名:
<input id="imgphno" type="text" maxlength="10" name="textbox" />
^^^^^^^^^^^^^^
然后将其用作:
$text = $_POST['textbox'];
您不能仅依靠id
而name
来传递表单元素。
然后按照你的意愿去做,但是再次使用POST ...不要GET,因为你也在上传。
根据手册 http://php.net/manual/en/function.move-uploaded-file.php
此函数检查以确保filename指定的文件是有效的上载文件(意味着它是通过PHP的HTTP POST上载机制上传的)。如果文件有效,它将被移动到目标给出的文件名。
Stack上给出的另一个答案是支持这个:
move_uploaded_file()
仅适用于通过POST上传的文件。