在PHP中如何创建一个具有上传按钮的表单,但它还有提交按钮,我从文件和其他一些数据(来自其他内部)提交该文本?我可以在一个表单中使用两个按钮元素,还是应该将表单拆分为两个表单,其中一个表单有上传按钮,另一个表单有另一个提交按钮?我应该使用jQuery上传文件,但之后如何在动作php文件中访问这些数据?请帮忙。谢谢
答案 0 :(得分:4)
无需多种表格。要上传文件,请使用<input type="file" name="MyFile">
并将以下属性添加到form
元素:enctype="multipart/form-data"
将表单提交到服务器后,您将获得一个$_FILES
超全局数组(除了包含其余字段的$ _POST数组),您将在其中找到所有数据上传文件的详细信息。当您提交表单时,文件会上传到临时位置,您需要使用move_uploaded_file()
函数将其移动到常量住所。
答案 1 :(得分:1)
是的,你可以。您可以执行通过上传按钮触发的上传脚本。在表单的开头包含该脚本。这些方面的东西:
<?php
if(isset($_POST['upload'])) {
//In your upload script you could store all the upload data in $_SESSION
include('yourUploadScript.php');
}
if(isset($_POST['submit'])) {
//Trim and escape post data here
//Send the post data and file upload data via your own submit function/script or whatever
}
?>
<html>
<body>
<form method="post" name="myForm" action="thisphp.php" enctype="multipart/form-data">
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" name="upload" value="upload" />
First name: <input type="text" name="fname"><br />
Last name: <input type="text" name="lname"><br />
<input type="submit" name="submit" value="submit" />
</form>
</body>
</html>
请记住,操作应该是此表单/ php文件。另请注意,此html可能无效,具体取决于您的doctype。这只是为了证明。
答案 2 :(得分:0)