PHP 上传,按操作属性提供动态网址
PHP upload with dynamic url by action attribute.
我正在尝试使用 php 将 matlab 文件上传到我的服务器上。我需要将此文件作为 php url 的一部分传递,以便我可以从 url 中取出此文件并将其传递给自定义 shell 脚本中的一些代码。
这是我用来更改 URL 的脚本,但文件没有上传。
网页代码:
<script type="text/javascript">
window.onload = function(){
var form = document.getElementById("phpForm");
form.onsubmit = function(){
var matlabfile = document.getElementById("fileToUpload");
var filename = matlabfile.value;
var filename2=filename.replace(/^.*''/, "");
var filename3=filename2.substr(0, filename2.lastIndexOf('.'));
window.location = "upload.php?matlabfile=" + filename3
return false;
};
};
</script>
<form action="" id="phpForm" method="post"
name="phpForm" enctype="multipart/form-data>
<table style=" text-align:center;">
<tr>
<td><b>File 1:</b> <input id=
"fileToUpload" name="fileToUpload"
type="file"></td>
</tr>
<tr>
<td><input name="submit" type=
"submit" value=
"Upload Script"></td>
</tr>
</table>
</form>
PHP代码:
<?php
$targetfolder = "";
$targetfolder = $targetfolder . basename( $_FILES['fileToUpload']['name']) ;
if(move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $targetfolder)) {
echo "The file ". basename( $_FILES['fileToUpload']['name']). " is uploaded";
}
else {
echo "Problem uploading file";
}
$var1=$_GET['matlabfile'];
echo "<pre>$var1</pre>";
echo "matlabfile : ".$_GET['matlabfile']."<br>";
$output = shell_exec("./n.sh $var1 2>&1");
echo "<pre>$output</pre>";
?>
你能告诉我我做错了什么吗?
期待您的回复。
感谢和最好的问候,希瓦姆·迪克西特
您的"return false;"阻止提交表单,然后文件未上传。您只需将用户移动到另一个地址即可。
而不是
window.location = "upload.php?matlabfile=" + filename3;
return false;
尝试将表单操作设置为所需的 URL:
form.setAttribute('action', "upload.php?matlabfile=" + filename3);
然后,用户将被发送到您想要的页面,文件将被上传:)
相关文章:
- Google Closure Advanced |无法识别对象属性|动态属性
- 如何从动态属性将IMG插入DOM
- 将动态属性添加到对象末尾
- 将动态属性从 ADF 传递到 JavaScript
- 动态属性名称串联
- 具有角度的动态属性
- 在挖空JS中从ATTR调用模型函数以获取动态属性
- 按动态属性值选择聚合物元素
- 对象中的动态属性名称
- 拖放区将动态属性追加到 #dz 删除
- 如何在 jQuery 小部件中使用动态属性值
- 在 Jquery/Javascript 中访问动态属性名称
- 创建具有动态属性的对象数组
- 如何在车把/Ember.js中插入动态{{属性}}
- 如何使用动态属性访问对象
- 动态属性对象 - JSON
- 角度控制器的动态属性
- 将动态属性名称添加到选择中
- JavaScript:如何迭代一个对象的属性,并针对另一对象的动态属性进行测试
- 表单动态属性更改和提交不起作用