我正在尝试使用这里的文件实现简单的文件上传:
http://www.sanwebe.com/2012/05/ajax-image-upload-and-resize-with-jquery-and-php
我有它的工作,并设法通过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">
那么&#39;正确&#39;将clientID变量获取到final.php文件的方法。
我可以在HTML文件中使用javascript并将变量传递给表单操作,即:
<form action="processupload.php?"+clientID method="post" enctype="multipart/form-data" id="MyUploadForm">
或者我可以抓取html文件中的url参数并添加到表单操作。
我在身体标签后尝试了这个:
<?php
$clientID='100';
?>
然后将表单操作更改为:
<form action="processupload.php?clientID=" <?php echo $clientID ?> method="post" enctype="multipart/form-data" id="MyUploadForm">
然后在我添加的PHP文件中:
$clientID = $_GET["clientID"];
并将文件名详细信息更改为:
$NewFileName = $clientID.$File_Ext; //new file name
当我上传文件但clientID为空时,该过程有效。例如,文件是名称&#39; .png&#39;而不是&#39; 100.png&#39;
MrWarby
答案 0 :(得分:9)
如果你想通过HTML ....
而不是
<form action="processupload.php?clientID=" <?php echo $clientID ?> method="post" enctype="multipart/form-data" id="MyUploadForm">
试试这个:
<form action="processupload.php?clientID=<?php echo $clientID ?>" method="post" enctype="multipart/form-data" id="MyUploadForm">
如果仍然无效(某些服务器不喜欢混合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>
然后在您的PHP文件中,将$_GET
替换为$_POST
。