Uploadifyアップロードプラグインにおけるファイル名取得の問題について

WBOY
リリース: 2016-06-23 14:22:51
オリジナル
1040 人が閲覧しました

Uploadify アップロード プラグインはファイル名を取得します

質問のタイトルを投稿してください。アドバイスをいただければ幸いです

現在のプログラムではアップロード後に画像をページに表示できますが、どうすれば取得できますか? 「送信」ボタンを押したときのファイル名は? データを入力してください。
プログラムコードは次のとおりです

test.php ファイル
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script type="text/javascript" src="../plug-in/uploadify/jquery.min.js"></script><script type="text/javascript" src="../plug-in/uploadify/jquery.uploadify.min.js"></script><link  rel="stylesheet" type="text/css"  href="../plug-in/uploadify/uploadify.css" /><script type="text/javascript"><?php $timestamp = time();?>	$(function() {			$('#file_upload').uploadify({				'formData'     : {					'timestamp' : '<?php echo $timestamp;?>',					'token'     : '<?php echo md5('hx110' . $timestamp);?>',					'folder'    : '/student/upload/photo'//存储目录,上传服务器后要更改				},				'swf'      : '../plug-in/uploadify/uploadify.swf',				'uploader' : '../plug-in/uploadify/uploadify.php',				'fileTypeDesc' : 'Image Files',        		'fileTypeExts' : '*.gif; *.jpg; *.png',				 'height'        : 25,                    'width'         : 100,				 'buttonText'     : '上传相片',				 'onUploadComplete' : function(fileObj){//显示上传成功后的图片					 $('#photo').attr("src","<?php echo $accessory = $hoem_upload."photo/".$timestamp;?>"+fileObj.name)					 //alert(fileObj.name);					 }			});		});</script></head><body><?phpif(isset($_POST['dosubm'])){	//一按提交按钮就把文本框的内容及上传的图片名字添加到数据库	$sql = "INSERT INTO `表A`(`tx1,tx2,tx3`,`相片名称`) values ('tx[1]','tx[2]','tx[3]','相片名称') ";	mysql_query($sql,$conn);}?><form method="post" enctype="multipart/form-data"><input name="tx[1]" type="text" /><br /><input name="tx[2]" type="text" /><br /><input name="tx[3]" type="text" /><br /><!--上传后图片显示--><img id="photo" src="../member/images/default.png" width="148" height="160" /><!--这个是上传图片的-->	<form>    <input id="file_upload" name="file_upload" type="file" multiple="true">    </form><input  name="dosubm" type="submit" id="提交" value="提交" /></form></body></html>
ログイン後にコピー



Uploadify.php ファイル

<?php/*UploadifyCopyright (c) 2012 Reactive Apps, Ronnie GarciaReleased under the MIT License <http://www.opensource.org/licenses/mit-license.php> */// Define a destination $targetFolder = $_POST['folder']; // Relative to the root $verifyToken = md5('hx110' . $_POST['timestamp']);if (!empty($_FILES) && $_POST['token'] == $verifyToken) {	// $_FILES["Filedata"]["name"] = $_POST['timestamp'];//更改文件名	$tempFile = $_FILES['Filedata']['tmp_name'];	$targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;	#rtrim() 函数从字符串右端删除字符	$targetFile = rtrim($targetPath,'/') . '/' .$_POST['timestamp']. $_FILES['Filedata']['name'];	// Validate the file type	$fileTypes = array('jpg','jpeg','gif','png'); // File extensions	$fileParts = pathinfo($_FILES['Filedata']['name']);//pathinfo函数以数组的形式返回文件路径的信息	#in_array() 函数在数组中搜索给定的值	if (in_array($fileParts['extension'],$fileTypes)) {		//move_uploaded_file($tempFile,$targetFile);		move_uploaded_file($tempFile,iconv("UTF-8","gb2312", $targetFile));//解决中文文件名乱码或无法上传的问题		//move_uploaded_file($tempFile,mb_convert_encoding($targetFile,'gb2312','UTF-8')); //解决中文文件名乱码或无法上传的问题(用这个效率比iconv()低一点,但iconv有一个BUG比较特殊的字符无法处一理)		echo '1';	} else {		echo '无效的文件类型.';	}}?>
ログイン後にコピー


他は変更していません。それらはすべてオリジナルです! !

より良い方法があれば、アドバイスをいただければ幸いです。


ディスカッションへの返信 (解決策)

これにはコールバック関数があるので、公式の例を参照してください。ここにいくつかのヒントがあります

 if (in_array($fileParts['extension'],$fileTypes)) {        //move_uploaded_file($tempFile,$targetFile);        move_uploaded_file($tempFile,iconv("UTF-8","gb2312", $targetFile));                echo "<input type=hidden name=pic value='$targetFile'>";    } 
ログイン後にコピー



JS パート:
'onUploadComplete' : function(fileObj){//显示上传成功后的图片                 $("form").append(fileObj)                     }
ログイン後にコピー

TottyAndBaty 回答ありがとうございます。私はあなたの指示に従いましたが、まだ専門的ではなく、印刷できません。ファイル名

if(isset($_POST['dosub'])){
print_r($_POST)
}

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート