【急求】关于PHP中文件上传 POST传值问题 不确定是enctype="multipart/form-data"属性问题还是版本问题
表单有部分是这样的挑了些<formname="myform"method="post"action="tptj_ok.php"enctype="multipart/for...
表单有部分是这样的 挑了些
<form name="myform" method="post" action="tptj_ok.php" enctype="multipart/form-data">
<tr>
<td valign="top" align="right" width="28%">图片名称:<br></td>
<td width="72%"><input name="tpmc" type="text" id="tpmc" size="40"></td>
</tr>
<tr>
<td align="right" width="28%">上传路径:</td>
<td width="72%"><input name="file" type="file" size="23" maxlength="60" >
</td>
</tr>
<tr align="center">
<td colspan="2"><input name="btn_tj" type="submit" id="btn_tj" value="提交" onClick="return pic_chk();">
<input name="btn_cx" type="reset" id="btn_cx" value="重写"></td>
</tr>
</table>
</form>
处理页中去实现二进制图片的上传。
但是很奇怪 $_POST[file] 这样取不到上传路径。但是相应的tpmc等就可以用POST取到。$_FILES[file][name]也能取到。查看了print_r($_POST)发现只有tpmc和bt_tj被post过来。百度了一晚上= = 哎。。。看到有人说java里是enctype="multipart/form-data"属性是以二进制的数据格式来传输,所以传输到你的servlet里是二进制数据。。。
但是PHP刚接触。。我真的不知如何是好了 用的环境是WAMP2.0 还是说版本太老了 $_POST方法是新版本??
毕竟我只是想完成作业。。。。 不想整的乱七八糟不敢瞎霍霍
但是。。。取不到file所以没有路径不能fopen。。。
我理解能力还可以 但是php真没接触过 可是我要快速完成作业。。。
万念俱灰 期待有DX相助~~~~ 我只是要二进制上传啊~~~ 不可能没有办法吧
求高人点拨~ 展开
<form name="myform" method="post" action="tptj_ok.php" enctype="multipart/form-data">
<tr>
<td valign="top" align="right" width="28%">图片名称:<br></td>
<td width="72%"><input name="tpmc" type="text" id="tpmc" size="40"></td>
</tr>
<tr>
<td align="right" width="28%">上传路径:</td>
<td width="72%"><input name="file" type="file" size="23" maxlength="60" >
</td>
</tr>
<tr align="center">
<td colspan="2"><input name="btn_tj" type="submit" id="btn_tj" value="提交" onClick="return pic_chk();">
<input name="btn_cx" type="reset" id="btn_cx" value="重写"></td>
</tr>
</table>
</form>
处理页中去实现二进制图片的上传。
但是很奇怪 $_POST[file] 这样取不到上传路径。但是相应的tpmc等就可以用POST取到。$_FILES[file][name]也能取到。查看了print_r($_POST)发现只有tpmc和bt_tj被post过来。百度了一晚上= = 哎。。。看到有人说java里是enctype="multipart/form-data"属性是以二进制的数据格式来传输,所以传输到你的servlet里是二进制数据。。。
但是PHP刚接触。。我真的不知如何是好了 用的环境是WAMP2.0 还是说版本太老了 $_POST方法是新版本??
毕竟我只是想完成作业。。。。 不想整的乱七八糟不敢瞎霍霍
但是。。。取不到file所以没有路径不能fopen。。。
我理解能力还可以 但是php真没接触过 可是我要快速完成作业。。。
万念俱灰 期待有DX相助~~~~ 我只是要二进制上传啊~~~ 不可能没有办法吧
求高人点拨~ 展开
1个回答
展开全部
文件上传类型为file的控件,后台获取时只能用$_FILES来获取,其他的控件类型才是用$_POST来获取,你只需要用$_FILES获取的值来进行你的处理。
追问
不行啊 $_FILES也取不到完整的路径 只能取到name,type,tmp_name也找不到路径,error是0,size有。但是没路径就存不进数据库吧
追答
$_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认。可以在php.ini的upload_tmp_dir 指定,你去找一下upload_tmp_dir的值,对应的就是你上传图片的位置,你只需要把它转移出来就行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询