3

私はPHPが初めてで、これを理解しようとしていますが、まだ理解していません。jQuery で html テキスト ボックスの値を取得し、それを変数に変換して (変数または文字列?) として格納し、ページの更新後に再び引き戻そうとしています。

ユーザーにボタンを押してもらい、次のことを実行してもらいたい:

$('.save').click(function () { 
    // pulls the value from the textarea
    var file = $('#subtext').val();
    // send to php to hold text
    $.ajax({
        url: '/mininote/system/data.php',
        type: 'POST',
        data: { textbox: file },
        success: function(data) {
            alert('Saved data to php!');
            $(save).text('All changes saved.').show().delay(3000).fadeOut(800);
        }
    });

});

次に、投稿データを受信し、ユーザーがページをリロードして php からデータを取得 (または存在するかどうかを確認) し、テキスト ボックスの値を php からの値に置き換えるまで、php に格納します。

$.ajax({
    url: '/mininote/system/data.php',
    type: 'GET',
    data: { textbox: file },
    success: function(data) {
        // add text back to text box
        $("#subtext").val(data);
    }
});

基本的に私が探しているのは以下です: -

  1. ajax POST を実行して、テキスト ボックスから取得したデータを挿入する方法
  2. PHPに追加
  3. ページのリロード時に GET リクエストを使用し、テキスト ボックスのテキストを PHP ファイルのテキストに置き換えます。

PHPコードに何を入れる必要がありますか? それとも、別の方向に進む方が簡単でしょうか? このメソッドがローカル ストレージで機能するようになりました。この作品のブラウザ対応も欲しいです。

多数のユーザー向けに設定する必要はありません。これに関する私の知識を増やす回答は、非常に役立ちます。

編集:複数のプラットフォームやデバイスで使用できるように、サーバー側の何かを本当に探しています。

4

6 に答える 6

0

Ajax は主に、クライアント (js) からサーバー側 (php) へ、またはサーバー側 (php) からクライアント (js) へ、Web ページをリロードせずにデータを送信するために使用されます。name-attribute が textarea に指定され、そのメソッドがフォームに投稿するように設定されていることを確認してください。あなたの問題を正しく理解していれば、次のようなことができます:

<?php
session_start();

if (isset($_POST['subtext'])) {
    $_SESSION['subtext_value'] = $_POST['subtext'];
}
if (isset($_SESSION['subtext_value'])) {
    $subtextValue = $_SESSION['subtext_value'];
}
else {
    $subtextValue = '';
}
?>
<html>
<body>
<form action="/mininote/system/data.php" method="post">
<textarea id="subtext" name="subtext"><?php echo $subtextValue;?></textarea>
<input type="submit" value="ok" />
</form>
</body>
</html>
于 2013-08-17T05:05:18.313 に答える
0

次のように、一時的な Cookie のようなセッションを使用します。

session_start();
$_SESSION['sessionName'] = $sessionVar;

次に、セッションを破棄できます。session_destroy();

詳しくはこちらをご覧ください

于 2013-08-17T02:36:20.283 に答える
0

なぜPHPに送信するのですか?
クッキーを使用してクライアント側に保存するだけの方が優れており、PHP で $_COOKIE を使用してアクセスします

jQuery.cookie を次からダウンロードします。

carhartl/jquery-cookie と実行:

$('.save').click(function () { 
// save data from textarea to cookie
var data = $.trim($('#subtext').val());
$.cookie('TEXTAREA_VALUE', data);
});

そしてPHPで読む:

<?php
echo $_COOKIE['TEXTAREA_VALUE'];
?>

そして削除するには:

$.removeCookie('TEXTAREA_VALUE', { path: '/' });

いい友達!

于 2013-08-17T04:51:55.843 に答える