このブログでは、バックグラウンド記事の編集と公開として kindeditor4 を使用しています。kindeditor ダウンロード パッケージには、PHP でファイルをアップロードするサンプルが含まれていますが、そのサンプルを使用してローカル ファイルをサーバー ディスクにアップロードすることもできます。はディスク操作を許可しないので、ストレージ API を使用してファイルをアップロードし、ストレージ API を使用して、ディスク操作に関するすべてのコードに ke のアノテーションを付けます。
< ?php
/**
* KindEditor PHP
*
* この PHP プログラムはデモンストレーション プログラムであり、実際のプロジェクトで直接使用することはお勧めできません。
* このプログラムを直接使用する場合は、使用する前に関連するセキュリティ設定をよく確認してください。
*
*/
require_once 'JSON.php';
$php_path = dirname(__FILE__) . '/';
$php_url = dirname($_SERVER[' PHP_SELF']) . '/';
//ファイル保存ディレクトリパス
$save_path = $php_path . '../../res/upload/';
//ファイル保存ディレクトリURL
$save_url = $php_url . '../../res/upload/';
//アップロードできるファイル拡張子を定義します
$ext_arr = array('image' => array('gif ', ' jpg', 'jpeg', 'png', 'bmp'),'flash' => array('swf', 'flv'),'media' => ', ' mp3', 'wav', 'wma', 'wmv', 'mid', 'avi', 'mpg', 'asf', 'rm', 'rmvb'),'file' => ('doc ', 'docx', 'xls', 'xlsx', 'ppt', 'htm', 'html', 'txt', 'zip', 'rar', 'gz', 'bz2', ' gif', 'jpg', 'jpeg', 'png', 'bmp'),
);
//最大ファイルサイズ
$max_size = 1000000;
$save_path = realpath($ save_path) . '/';
//ファイルがアップロードされたとき
if (empty($_FILES) === false) {
//元のファイル名
$file_name = $_FILES[ 'imgFile'][ 'name'];
//サーバー上の一時ファイルの名前
$tmp_name = $_FILES['imgFile']['tmp_name'];
//alert( 「ファイルを選択してください。 " . $tmp_name);
//ファイルサイズ
$file_size = $_FILES['imgFile']['size'];
//ファイル名をチェック
if (!$file_name) {
alert("ファイルを選択してください。");
}
$dir_name = empty($_GET['dir']) 'image' :rim($_GET['dir']);
//ファイル拡張子を取得します
$temp_arr =explode(".", $file_name);
$file_ext = array_pop($temp_arr);
$file_ext = trim($file_ext);
$file_ext = strto lower($file_ext);
//拡張子をチェック
if (in_array($file_ext, $ext_arr[$dir_name]) === false) {
alert("ファイル拡張子のアップロード名前は許可されない拡張子です。 " . implode(",", $ext_arr[$dir_name]) . "");
}
//新しいファイル名
$new_file_name = date ("YmdHis") . '_' . rand(10000, 99999) . '.' $file_ext;
$s = new SaeStorage();
$s ->upload('article', $new_file_name, $tmp_name);
if(!$result) {
alert("ファイルのアップロードに失敗しました。");
}
// @chmod ($file_path, 0644);
$file_url = $result;
//$s->getUrl( 'redstones' , $new_file_name );
header('Content-type: text/ html; charset=UTF-8');
$json = new Services_JSON();
echo $json->encode(array('error' => 0, 'url' => $file_url )) ;
exit;
}
functionalert($msg) {
header('Content-type: text/html; charset=UTF-8');
$json = new Services_JSON ();
echo $json->encode(array('error' => 1, 'message' => $msg));
exit;
}
?
この記事へのリンク http://www.cxybl.com/html/wlbc/Php/20130601/38186.html