谁能告诉如何将值从jquery传递给uploadify.php dynfolder:$("#storeloyaltyid").val()
,//value是照片1 m无法在uploadify中获取.php
Jquery
if($("#uploadphotoz").length>0){
uploadphotoz();
}
function uploadphotoz(){
$('#uploadphotoz').Uploadify({
uploader:urljs+"/jslib/Uploadify.swf",
cancelImage:urljs+"/image/cancel.png",
buttonImage:urljs+"/image/browse_button.png",
uploadUrl:urljs+"/jslib/uploadify.php",
dynfolder:$("#storeloyaltyid").val(),//value is photo1
height : 21,
width :59,
auto : true,
fileLimit:1,
preview:'stuimgpreview',
onComplete: function(event,status,imgs){
$("#memPhoto").val(imgs);
},
onRemove:function(event,imgs){
$("#memPhoto").val(imgs);
}
});
}
上传.php
<?php
if (!empty($_FILES)) {
$filename = $_FILES['Filedata']['name'];
$filetmpname = $_FILES['Filedata']['tmp_name'];
$fileType = $_FILES["Filedata"]["type"];
$fileSizeMB = ($_FILES["Filedata"]["size"] / 1024 / 1024);
// Place file on server, into the images folder
//move_uploaded_file($_FILES['Filedata']['tmp_name'], "../uploaded_photos/".$filename);
$dynfolder=$_POST['dynfolder'];
mkdir($dynfolder, 0755, true);move_uploaded_file($_FILES['Filedata']['tmp_name'], "../uploaded_photos"."/".$dynfolder."/".$filename);.../uploaded_photos/photos1/1.jpg
}elseif($_POST['d']){
$filename = $_POST['d'];
$dynfolder=$_POST['dynfolder'];
mkdir($dynfolder, 0755, true);
$dFile=move_uploaded_file($_FILES['Filedata']['tmp_name'], "../uploaded_photos"."/".$dynfolder."/".$filename);//.../uploaded_photos/photos1/1.jpg
unlink($dFile);
}
?>
我无法uploaded_photos文件夹中创建一个名为 photos1 的新文件夹...路径应该是.../uploaded_photos/photos1/1.jpg
的,dynfolder:$("#storeloyaltyid").val(),//value is photo1
,谁能说出代码有什么问题。
$('#uploadphotoz').Uploadify({
...
'method': 'post',
'formData': { 'dynfolder': $("#storeloyaltyid").val() },
...
});
试试这个:您可能需要将/../
更改为../
。我目前无法对此进行测试。
此外,您应该检查该目录是否存在以及文件上传是否成功。我不知道如果文件夹已经到位,PHP 会做什么。
<?php
$basepath = dirname(__FILE__);
if (!empty($_FILES)) {
$filename = $_FILES['Filedata']['name'];
$filetmpname = $_FILES['Filedata']['tmp_name'];
$fileType = $_FILES["Filedata"]["type"];
$fileSizeMB = ($_FILES["Filedata"]["size"] / 1024 / 1024);
$dynfolder = $_POST['dynfolder'];
mkdir($basepath.'/../'.$_POST['dynfolder'], 0755, true);
move_uploaded_file($_FILES['Filedata']['tmp_name'], $basepath.'/../'.$_POST['dynfolder'].'/'.$filename);
}
?>
编辑:
Javascript的问题是你只是在名为dynfolder
的对象中"编造"了一个变量。Uploadify有一个名为formData的设置。在此处传递变量。
例如:
[...]
height : 21,
width : 59,
auto : true,
formData : jQuery.parseJSON('{"dynfolder":"'+$("#storeloyaltyid").val()+'"}'),
[...]