ホームページ バックエンド開発 PHPチュートリアル Yii CKEditorを組み合わせて画像アップロード機能を実装_PHPチュートリアル

Yii CKEditorを組み合わせて画像アップロード機能を実装_PHPチュートリアル

Jul 13, 2016 am 10:28 AM
ckeditor yii 写真をアップロードする

最近取り組んでいるプロジェクトでは、WYSIWYG エディターに画像アップロード機能を実装する必要があります。CKEditor のインターフェースが気に入ったため、CKEditor を選択しました。 CKEditor と連携する CKFinder もありますが、機能が複雑すぎるため、CKEditor のドキュメントをざっと見たところ、この機能は CKFinder に頼らなくても自分で実装できることがわかりました。

次のコードは Yii フレームワークに基づいていますが、他のフレームワークや言語を使用する場合も考え方はまったく同じです。必要な子供の靴を参照できます。

まず、CkEditor で画像アップロード機能を有効にするには、エディターの filebrowserImageUploadUrl 属性を設定する必要があります:

コードをコピーします コードは次のとおりです:

CKEDITOR.replace( 'editor1' 、
filebrowserUploadUrl er/upload.php',
filebrowserImageUploadUrl : '/uploader/upload.php?type=Images'
});
次に、対応する URL に画像アップロード関数を実装し、特定の形式で HTML コードを返します。 CKEditor に接続すると、CKEditor は正常に画像をプレビューして挿入できます。
コントローラーのコードの一部のみを以下のように実装しました:

コードをコピー コードは次のとおりです:
/**
* アップロードした画像を保存します
*
* @return string javascript code
* @author lfyzjck
**/
public function actionImg($type, $CKEditor , $CKEditorFuncNum, $langCode = 'zh-cn')
{
if(empty($CKEditorFuncNum) || $type != 'Images'){
$this->mkhtml($ CKEditorFuncNum,'','エラー関数呼び出し');
}
if(isset($_FILES['upload'])){
//画像アップロード設定を取得します
$options = Options::model()-> findByPk(1);
$form = new UploadForm('image',$options);
$form->upload = CUploadedFile::getInstanceByName('upload');
if($form->validate()) {
//ファイル名 : 時刻 + ソースファイル名
$target_filename = date('Ymd-hm',time()).$form->upload->getName();
$path = Yii::app ()->basePath .'/../uploads/'.$target_filename; //画像の保存パス
$form->upload->saveAs($path);
$this->mkhtml($CKEditorFuncNum ,Yii::app( )->baseUrl.'/uploads/'.$target_filename, "アップロード成功");
}
else{
$this->mkhtml($CKEditorFuncNum,'',$form-> ;getError('upload' ));
}
}
}
/**
* CKEditorのプロンプト情報を返します
*
* @return void
* @author lfyzjck
**/
プライベート関数 mkhtml($fn, $fileurl, $message)
{
$str = '';
exit( $str);
}
mkhtml 関数については特別な説明が必要です。CKEditor 関数を呼び出してプロンプト情報を生成します。アップロードが成功すると、画像リンクが返され、CKEditor は URL に基づいて画像プレビューを生成します。
次に、画像の形式とサイズが要件を満たしているかどうかを確認する UploadForm コードが来ます。


コードをコピーします コードは次のとおりです:
class UploadForm extends CFormModel
{
public $upload;
プライベート $オプション;

プライベート $タイプ;

public function __construct($type, $options){

$this->options = $options;
$this->type = $type;
}
/**
* 検証ルールを宣言します。
* ルールでは、ユーザー名とパスワードが必須であることが示されています。
* パスワードは認証される必要があります。
 */
public function rules( )
{
return array(
array('upload', 'file',
'types' => $this->options->getAttribute("allow_".$this->type."_type" ),
'maxSize' => 1024 * (int)$this->options->getAttribute("allow_".$this->type."_maxsize"),
'tooLarge'=>'ファイルサイズが制限を超えています',
),
);
}
}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/802217.html技術記事最近取り組んでいるプロジェクトでは、WYSIWYG エディターに画像アップロード機能を実装する必要があるため、CKEditor のインターフェイスが気に入ったため、CKEditor を選択しました。 CKEditor ではうまく動作しますが...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP と CKEditor を使用してリッチ テキスト エディターを作成する PHP と CKEditor を使用してリッチ テキスト エディターを作成する May 11, 2023 pm 04:06 PM

Web アプリケーションの普及に伴い、リッチ テキスト エディターを作成することがますます一般的になりました。 CKEditor は、優れたカスタマイズ性と使いやすさにより、最高のリッチ テキスト エディターの 1 つとして広く認識されています。この記事では、PHPとCKEditorを使ってリッチテキストエディタを作成する方法を紹介します。 CKEditor の概要 CKEditor は、JavaScript を通じて実装されたオープンソースのクロスプラットフォームのリッチ テキスト エディターです。フォント スタイル、書式設定、グラフィックスなどを含む、直感的でわかりやすいツールバーを提供します。

CakePHP フレームワークを使用して画像のアップロードと表示を実装する手順 CakePHP フレームワークを使用して画像のアップロードと表示を実装する手順 Jul 29, 2023 pm 04:21 PM

CakePHP フレームワークを使用して画像のアップロードと表示を実装する手順 はじめに: 最新の Web アプリケーションでは、画像のアップロードと表示は一般的な機能要件です。 CakePHP フレームワークは、開発者に強力な機能と便利なツールを提供し、画像のアップロードと表示を簡単かつ効率的にします。この記事では、CakePHP フレームワークを使用して画像をアップロードして表示する方法を紹介します。ステップ 1: ファイル アップロード フォームを作成する まず、ユーザーが画像をアップロードするためのフォームをビュー ファイルに作成する必要があります。以下はその例です

WeChatアプレットは画像アップロード機能を実装 WeChatアプレットは画像アップロード機能を実装 Nov 21, 2023 am 09:08 AM

WeChat アプレットが画像アップロード機能を実装 モバイル インターネットの発展に伴い、WeChat アプレットは人々の生活に欠かせないものになりました。 WeChat ミニ プログラムは、豊富なアプリケーション シナリオを提供するだけでなく、画像アップロード機能などの開発者定義の機能もサポートします。この記事では、WeChat アプレットに画像アップロード機能を実装する方法と具体的なコード例を紹介します。 1. 準備作業 コードを書き始める前に、WeChat 開発者ツールをダウンロードしてインストールし、WeChat 開発者として登録する必要があります。同時に、WeChat についても理解する必要があります。

Vue テクノロジー開発における画像のアップロードと圧縮の処理方法 Vue テクノロジー開発における画像のアップロードと圧縮の処理方法 Oct 08, 2023 am 10:58 AM

Vue テクノロジ開発で画像のアップロードと圧縮を処理する方法 最新の Web アプリケーションでは、画像のアップロードは非常に一般的な要件です。ただし、ネットワーク送信とストレージの理由により、オリジナルの高解像度画像を直接アップロードすると、アップロード速度が遅くなり、ストレージ容量が大量に無駄になる可能性があります。したがって、画像のアップロードと圧縮は非常に重要です。 Vue テクノロジー開発では、いくつかの既製のソリューションを使用して画像のアップロードと圧縮を処理できます。 vue-upload-comoneの使い方を紹介します。

Yii2 と Phalcon: グラフィック レンダリング アプリケーションの開発にはどちらのフレームワークが適していますか? Yii2 と Phalcon: グラフィック レンダリング アプリケーションの開発にはどちらのフレームワークが適していますか? Jun 19, 2023 am 08:09 AM

現在の情報化時代では、ビッグデータ、人工知能、クラウド コンピューティング、その他のテクノロジーが大手企業の焦点となっています。その中でも、高性能なグラフィックス処理技術として、グラフィックスカードレンダリング技術がますます注目を集めています。グラフィックス カード レンダリング テクノロジは、ゲーム開発、映画やテレビの特殊効果、エンジニアリング モデリングなどの分野で広く使用されています。開発者にとって、自分のプロジェクトに合ったフレームワークを選択することは非常に重要な決定です。現在の言語の中でも PHP は非常に動的な言語であり、Yii2、Ph などの優れた PHP フレームワークもいくつかあります。

PHPとVueを使って画像アップロード機能を実装する方法 PHPとVueを使って画像アップロード機能を実装する方法 Sep 25, 2023 pm 03:17 PM

PHP と Vue を使用して画像アップロード機能を実装する方法 現在の Web 開発では、画像アップロード機能は非常に一般的な要件です。この記事では、PHPとVueを使って画像アップロード機能を実装する方法と、具体的なコード例を詳しく紹介します。 1.フロントエンド部分(Vue) まずフロントエンドで画像をアップロードするためのフォームを作成する必要があります。具体的なコードは次のとおりです:<template><div><inputtype="fil

ThinkPHP6 を使用して画像をアップロードする方法 ThinkPHP6 を使用して画像をアップロードする方法 Jun 20, 2023 pm 09:25 PM

インターネットの発展に伴い、画像のアップロードは Web サイトやアプリケーションの開発に不可欠な機能になりました。 PHP の分野では、ThinkPHP6 は非常に人気のある開発フレームワークになっています。この記事では、ThinkPHP6を使用して画像アップロードを実装する方法を紹介します。 1. プロジェクトとコントローラーを作成する まず、新しい ThinkPHP6 プロジェクトを作成する必要があります。 Composer を使用してインストールすることも、公式 Web サイトから最新バージョンをダウンロードすることもできます。インストールが完了したら、コンソールに次のように入力します

PHP フレームワーク Yii を使用して可用性の高いクラウド バックアップ システムを開発する方法 PHP フレームワーク Yii を使用して可用性の高いクラウド バックアップ システムを開発する方法 Jun 27, 2023 am 09:04 AM

クラウド コンピューティング テクノロジの継続的な発展により、データのバックアップはすべての企業が行う必要のあるものになりました。この文脈では、可用性の高いクラウド バックアップ システムを開発することが特に重要です。 PHP フレームワーク Yii は、開発者が高性能の Web アプリケーションを迅速に構築できる強力なフレームワークです。ここでは、Yii フレームワークを使用して可用性の高いクラウド バックアップ システムを開発する方法を紹介します。データベースモデルの設計 Yii フレームワークでは、データベースモデルは非常に重要な部分です。データ バックアップ システムには多くのテーブルとリレーションシップが必要なため、

See all articles