6

私は、ユーザーがAce Editorを介してhtml、css、およびjavascriptコンテンツを送信できる小さなWebアプリを作成しています。このエディターでは、保存されたコンテンツをエディターにエコーするだけで十分ですが、データベースにユーザー入力を送信する方法が見つかりません。JavaScriptによって生成されたテキストエリアがあることはわかりますが、JavaScriptが何をしているのか、どのようにアクセスするのか、または他の何かを完全に探す必要があるのか​​どうかは正確にはわかりません。

私は主に、phpをdbに送信するために使用できるフィールドまたは何かを探しています。

4

1 に答える 1

14

編集ウィンドウの内容は、セッションgetValueメソッドで使用できます。たとえば、保存ファイルの標準ACEデモの拡張機能は次のとおりです。

saveFile = function() {
    var contents = env.editor.getSession().getValue();

    $.post("write.php", 
            {contents: contents },
            function() {
                    // add error checking
                    alert('successful save');
            }
    );
};

demo.jsにある既存の「FakeSave」にsaveFile呼び出しを追加しました。アラートを次のようなコードに置き換えます。

// Fake-Save, works from the editor and the command line.
canon.addCommand({
    name: "save",
    bindKey: {
        win: "Ctrl-S",
        mac: "Command-S",
        sender: "editor|cli"
    },
    exec: function() {
        saveFile();
    }
});

phpファイルは1行だけです:

$r = file_put_contents("foo.txt", $_POST["contents"]) or die("can't open file");

于 2011-07-12T16:35:04.963 に答える