0

私のphpには、乱数を生成する次の2つのセッション変数があります。

<?php
session_start();
if (!isset($_SESSION['num1']) && !isset($_SESSION['num2'])) {
$_SESSION['num1'] = rand(1,5);
$_SESSION['num2'] = rand(1,5);
}
?>

そして同じページに、num1+num2を示すこのラベルがあります。

<label><?=$_SESSION['num1']?> + <?=$_SESSION['num2']?> ?</label>

ラベルの横にあるimgをリンクに変換して、ページを更新せずにnum1とnum2の変数を更新することは可能ですか?

これらの変数をcaptcha.phpのような別のファイルに作成し、それをラベルに含めて、生成された数値をcaptcha.phpなどにエコーで表示する必要がありますか?または、ajaxを使用する必要がありますか?

皆さん、私にこれを手伝ってくれませんか。私はデザイナーで、ポートフォリオを作成しようとしています。このフォームは私を夢中にさせています。ありがとう


@Koterpillarあなたが言ったように、私のcaptcha.phpで私はこれらを持っているでしょう:

<?php
session_start();
if (!isset($_SESSION['num1']) && !isset($_SESSION['num2'])) {
$_SESSION['num1'] = rand(1,5);
$_SESSION['num2'] = rand(1,5);
}
?>

次に、キャプチャphpをdivに含めます。#captchaとしましょう。キャプチャは1+3 =のような簡単な質問で行われます。描画画像などはありません。小さなウェブページです。キャプチャにノイズや線は必要ないと思います。検証は、php送信フォームで行われます。 。しかし、そのdivを更新するためにajaxでcaptcha phpを呼び出す方法は?こんな感じ?

$("#captcha").click(function() {

$.ajax({
type: "POST",
url: "includes/captcha.php",
data: ,
success: function(){

},
});
}

助けてくれてありがとう!

4

3 に答える 3

1

「ページを更新せずにnum1とnum2を更新する」場合は、Ajaxを使用する必要があります。次のような提案をします。

<div id='captcha'><?php include 'captcha.php'; ?></div>

captcha div次に、Ajax-同じものを要求して更新しcaptcha.phpます:

$.get('includes/captcha.php', function (data) {
    $('#captcha').html(data);
});

(もちろん、レート制限、画像の描画などはまだ必要です。)

于 2013-03-11T09:06:15.333 に答える
0

セッションは一度だけ実行されます...つまり、セッションが設定されている場合はページを開いたときに...セッション値を設定し、セッション値を確認します...ロード後にページを更新する必要があると思います.. ..次に、Ajaxを使用する必要があります...そのビーコンセッションはサーバー側です..サーバー要求がないと、セッションから値を設定または取得できません。

ありがとうございました...

于 2013-03-11T09:05:36.907 に答える
0

ページを更新せずに更新したい場合は、はい、Ajaxを使用する必要があります。

于 2013-03-11T09:05:57.207 に答える