CKEditor+SWFOploadは強力なエディタ(3)---バックグラウンド受信画像フローを実現
CKEditorとSWFOploadをフロントに配置しておけば基本的なニーズを満たすことができます
ここで、私が構成した非同期アップロード画像を受信するページはuploadです.ashx
このashxでアップロードされた画像の処理の流れは以下の通りです.
1.サーバ側にファイルを保存するにはcontextなどの絶対パスを使用する必要がある.Server.MapPath(fullDir)
2.画像のmd 5値を画像の名前として使用すると、画像名が重複しないことを保証し、2つ目はユーザーが同じ写真をアップロードするときに上書きすることができる
最後に、機能的なUbbエディタが誕生しました~~
ただしエディタはソースモードに移行できるため
ユーザーは、ソースモードで<,>の記号を直接入力することもできます.
だからバックグラウンドでユーザーが入力したデータを受信するとき
最後の最後~
ユーザーに情報を表示するときは、ubbコードをhtmlに変換する必要があります.これにより、ブラウザが解析できます.
書く静的クラスを提供して、使う時ubbコードを送り込んで、htmlコードを返します
UbbHelper
中には多くの問題があり、自分のニーズに合わせてコードを変更する必要があります.
これで大成功だ!
ここで、私が構成した非同期アップロード画像を受信するページはuploadです.ashx
このashxでアップロードされた画像の処理の流れは以下の通りです.
context.Response.ContentType = "text/plain";
HttpPostedFile file = context.Request.Files["Filedata"];//
string fileName = string.Empty;
string fileExtension = string.Empty;
if (file != null)
{
fileName = Path.GetFileName(file.FileName);//
fileExtension = Path.GetExtension(file.FileName);//
}
if (fileExtension == ".jpg")
{
string saveDir = "/upload/" + DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/";// upload ,
Directory.CreateDirectory(Path.GetDirectoryName(context.Server.MapPath(saveDir)));//
string fullDir = saveDir + GetMD5.GetFileMD5(file.InputStream) + fileExtension;// md5
file.SaveAs(context.Server.MapPath(fullDir));
context.Response.Write("ok;" + fullDir);//
}
注意すべき点は次のとおりです.1.サーバ側にファイルを保存するにはcontextなどの絶対パスを使用する必要がある.Server.MapPath(fullDir)
2.画像のmd 5値を画像の名前として使用すると、画像名が重複しないことを保証し、2つ目はユーザーが同じ写真をアップロードするときに上書きすることができる
最後に、機能的なUbbエディタが誕生しました~~
ただしエディタはソースモードに移行できるため
ユーザーは、ソースモードで<,>の記号を直接入力することもできます.
だからバックグラウンドでユーザーが入力したデータを受信するとき
msg = msg.Replace("<", "<").Replace(">", ">");
<,>を置換する必要があります最後の最後~
ユーザーに情報を表示するときは、ubbコードをhtmlに変換する必要があります.これにより、ブラウザが解析できます.
書く静的クラスを提供して、使う時ubbコードを送り込んで、htmlコードを返します
UbbHelper
中には多くの問題があり、自分のニーズに合わせてコードを変更する必要があります.
これで大成功だ!