我试图使用这里的文件实现一个简单的文件上传:
http://www.sanwebe.com/2012/05/ajax-image-upload-and-resize-with-jquery-and-php
Run Code Online (Sandbox Code Playgroud)
我有它的工作,并设法通过CSS更改样式等,并更改文件名等.
我现在需要在iframe中使用它并传递文件名的变量.
在我的应用程序中,我可以使用localstorage,setItem('clientID',10)或向iframe网址添加参数.www.xxx.com/uploads?clientID=10.
该插件有一个html文件,然后调用php文件:
<form action="processupload.php" method="post" enctype="multipart/form-data" id="MyUploadForm">
Run Code Online (Sandbox Code Playgroud)
那么将clientID变量传递给final.php文件的"正确"方法是什么?
我可以在HTML文件中使用javascript并将变量传递给表单操作,即:
<form action="processupload.php?"+clientID method="post" enctype="multipart/form-data" id="MyUploadForm">
Run Code Online (Sandbox Code Playgroud)
或者我可以获取html文件中的url参数并添加到表单操作.
我在身体标签后尝试了这个:
<?php
$clientID='100';
?>
Run Code Online (Sandbox Code Playgroud)
然后将表单操作更改为:
<form action="processupload.php?clientID=" <?php echo $clientID ?> method="post" enctype="multipart/form-data" id="MyUploadForm">
Run Code Online (Sandbox Code Playgroud)
然后在我添加的PHP文件中:
$clientID = $_GET["clientID"];
Run Code Online (Sandbox Code Playgroud)
并将文件名详细信息更改为:
$NewFileName = $clientID.$File_Ext; //new file name
Run Code Online (Sandbox Code Playgroud)
当我上传文件但clientID为空时,该过程有效.例如,文件名为'.png'而不是'100.png'
MrWarby
Mar*_*her 10
如果你想通过HTML ....
代替
<form action="processupload.php?clientID=" <?php echo $clientID ?> method="post" enctype="multipart/form-data" id="MyUploadForm">
Run Code Online (Sandbox Code Playgroud)
试试这个:
<form action="processupload.php?clientID=<?php echo $clientID ?>" method="post" enctype="multipart/form-data" id="MyUploadForm">
Run Code Online (Sandbox Code Playgroud)
如果仍然无效(某些服务器不喜欢混合POST和GET),那么尝试交换:
<form action="processupload.php" method="post" enctype="multipart/form-data" id="MyUploadForm">
<input type="hidden" name="clientID" value="<?=$clientID;?>" />
<!-- the rest of your form -->
</form>
Run Code Online (Sandbox Code Playgroud)
然后在你的PHP文件中,交换$_GETfor $_POST.
| 归档时间: |
|
| 查看次数: |
22474 次 |
| 最近记录: |