2012-06-06 40 views
7

自定義值是我的代碼:如何通過在uploadify如何通過用戶輸入的值來這裏uploadify.php uploadify

  $(function() { 

    $('#file_upload').uploadify({ 
    'buttonText' : 'BROWSE...', 
    'method' : 'post', 
    'height' : 50, 
    'buttonCursor' : 'hand', 
    'fileSizeLimit' : '100KB', 
    'formData' : { 
    'title' :$('input:text[name:title]').val(), 
    'about' :$('input:text[name:about]').val() }, 
    'auto'  : false, 
    'swf'  : 'uploadify.swf', 
    'checkExisting' : 'check-exists.php', 
    'uploader' : 'uploadify.php', 
    'onUploadSuccess' : function(file, data, response) { 
    $("#message").css("display","block"); 
    $("#message").text("upload process completed successfully"); 
    setTimeout(function() { 
    $('#message').fadeOut('fast'); 
}, 5000); 
    }, 

    'onUploadError' : function(file, errorCode, errorMsg, errorString) { 
     alert('The file ' + file.name + ' could not be uploaded: ' + errorString); 
    } 
}); 



    }); 
    </script> 
    </head> 
<?php include("includes/connection.php");?> 
    <body> 
     <div id="page"> 
      <div id="header"> 
       <h1>Photogallery</h1> 
    <?php include("includes/navigation.php"); ?> 
      </div><!--header--> 

      <div id="content"> 

       <div id="left"> 

<div id="message"> 
</div> 
<?php 

?>  

<table> 
    <tr> 
     <td> 
      <P>Title:</P> 
     </td> 
     <td> 
      <input type="text" value="" name="title" id="idtitle" /> 
     </td> 
    </tr> 
    <tr> 
     <td> 
      <p>About:</p> 
     </td> 
     <td> 
      <p><input type="text" value="" name="about" /> </p> 
     </td> 
    </tr> 
    <tr> 
     <td> 
      Select Photos you want to Upload 
     </td> 
     <td> 
      <input type="file" name="file_upload" id="file_upload" /> 
     </td> 
    </tr> 
</table>   


<a href="javascript:$('#file_upload').uploadify('cancel')">Cancel First File</a> | <a href="javascript:$('#file_upload').uploadify('cancel', '*')">Clear the Queue</a> | <a href="javascript:$('#file_upload').uploadify('upload', '*')">Upload the Files</a> 



       </div><!--left--> 

這裏是我的uplodify.php文件

<?php 
require_once("includes/connection.php"); 

$targetFolder = '/workbench/sudeepc/photogallery/uploads' ; 
    $title=$_POST['title']; 
    // $title="testtitle"; 
    $about=$_POST['about'];  
if (!empty($_FILES)) { 
    $tempFile = $_FILES['Filedata']['tmp_name']; 
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder; 
    $targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name']; 

    // Validate the file type 
    $fileTypes = array('jpg','jpeg','gif','png'); // File extensions 
    $fileParts = pathinfo($_FILES['Filedata']['name']); 



    if (in_array($fileParts['extension'],$fileTypes)) { 
     move_uploaded_file($tempFile,$targetFile); 

$query="INSERT INTO `photo` (`id` , `path` , `uname` , `title` , `about` , `date`) 
VALUES ('','${targetFile}','uname','${title}','${about}',now())";  

/* 
$query="INSERT INTO `photo` (`id` , `path` , `uname`) 
VALUES ('','${targetFile}', '${title}');"; 
*/ 
mysql_query($query,$connection); 


    } else { 
     echo 'Invalid file type.'; 
    } 
} 
?> 

我想要通過標題以及關於每個上傳和當用戶選擇多個圖片用戶可以輸入標題和關於每個。我該如何解決這個問題?

+2

請停止與古'mysql_ *'函數編寫新的代碼。他們不再被維護,社區已經開始[棄用流程](http://news.php.net/php.internals/53799)。相反,您應該瞭解準備好的語句並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli)。如果你關心學習,[這裏是一個很好的PDO相關教程](http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers)。 –

+0

現在數據庫條目爲空。 –

+0

有什麼方法可以在瀏覽器中打印該查詢嗎? –

回答

5
  1. 如何在uploadify中傳遞自定義值:

'formData': { 'userid': $("#uid").val(), 'taskid': $("#tid").val(), 'guid': $("#guid").val() },

  1. 有沒有什麼辦法讓上傳隊列圖像的數量? - onDialogClose您可以訪問隊列是這樣的:

'onDialogClose': function(queueData) { alert(queueData.filesQueued + ' files were queued of ' + queueData.filesSelected + ' selected files. There are ' + queueData.queueLength + ' total files in the queue.'); },

3

要通過自定義值使用formData

然後你就可以訪問它在PHP $_POST['someKey']

... 
'formData'         : { 
    'title' : $('input:text[name:title]').val(), 
    'about' : $('input:text[name:about]').val(), 
     ... 
    }, 
.. 

,可以查看上傳的文件數量,加上這個回調:

... 
    onDialogClose : function() { 
     console.log(this.queueData.filesQueued); 
    }, 
    ... 
+0

'formData':{ 'title':$('#idtitle')。val()},當我嘗試這個我得到null值在uploadify.php –

+0

感謝這個完美的作品。何人解決多個上傳案例? –

+0

有什麼方法可以獲取上傳隊列中的圖片數量。因此,我可以顯示標題文本框和每個文本框。 –