使用PHP上传文件后执行操作?
我有一个具有以下结构的页面:使用PHP上传文件后执行操作?,php,file-upload,Php,File Upload,我有一个具有以下结构的页面: 1. Text 2. Form with SUBMIT button that allows users to upload files 3. PHP code to handle the files 我想在进入3之前完成2(等待用户点击提交)。我也想保持活动在同一页上。。。现在,如果用户点击SUBMIT,他/她将被重定向到upload.php脚本 鉴于我是PHP新手,实现这一点最简单的方法是什么?谢谢你抽出时间 代码如下: HTML(我想保留此页面上的所有内
1. Text
2. Form with SUBMIT button that allows users to upload files
3. PHP code to handle the files
我想在进入3之前完成2(等待用户点击提交)。我也想保持活动在同一页上。。。现在,如果用户点击SUBMIT,他/她将被重定向到upload.php脚本
鉴于我是PHP新手,实现这一点最简单的方法是什么?谢谢你抽出时间
代码如下:
HTML(我想保留此页面上的所有内容):
上载文件:
仅使用PHP无法实现这一点。如果希望流程位于同一页面上(无需刷新),则需要使用AJAX,即javascript。尝试阅读jQueryAjax部分
当您上传文件时,您不能使用纯ajax(xmlhttprequest对象不支持文件上传)进行文件上传,因此您可能需要寻找插件来完成此操作,或者您可以使用隐藏的IFRAME作为表单的目标。1)在表单的操作中指定同一文件的名称
2) 指定要提交的名称按钮lits say name=“submit”
3) 在同一页上:
if(isset($_POST['submit']))
{
write file handliig code here..
all file processing code you were doing in that redirected php script do here..
}
您是否可以发布您迄今为止尝试过的代码,并指出哪里出现了错误/问题?您可能希望向标记中添加Javascript,因为这需要它。请澄清您的问题。PHP的工作方式是,脚本只在上传完成后执行,因此“我想在执行脚本之前完成上传”的问题无关紧要。
<?php
error_reporting(E_ALL);
for ($i=1; $i<4; $i++)
{
$file = "file" . $i;
if (($_FILES[$file]["size"] < 20000))
{
if ($_FILES[$file]["error"] > 0)
{
echo "Return Code: " . $_FILES[$file]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES[$file]["name"] . "<br />";
echo "Type: " . $_FILES[$file]["type"] . "<br />";
echo "Size: " . ($_FILES[$file]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES[$file]["tmp_name"] . "<br />";
$moved = move_uploaded_file($_FILES[$file]["tmp_name"], "C:/inetpub/wwwroot/PHP_Ramp/upload/" . $_FILES[$file]["name"]);
if ($moved) {
echo "Move: Success <br/>";
}
else {
echo "Move Failed <br/>";
}
echo "Stored in: " . "C:/inetpub/wwwroot/PHP_Ramp/upload/" . $_FILES[$file]["name"];
}
}
else
{
echo "Invalid file";
}
}
?>
if(isset($_POST['submit']))
{
write file handliig code here..
all file processing code you were doing in that redirected php script do here..
}