0

jquery+phpを使用します。カスタムAJAXキャプチャを実行します。つまり、ユーザーが画像をクリックすると、自動的に更新されます。

<script src="/js/jquery.js"></script>

<script>

$(document).ready(function(){

    $.post('/captcha.php', {}, function(resp){

        $("div").html(resp);

    });

});

</script>

<div></div>

PHPヘッダーではすでに送信されているため、ヘッダーに含める<img src="/captcha.php" />と、jpegでキャプチャが出力されます。問題は、送信する必要のあるヘッダーにあるようです。だから、どうすればこれを行うことができますか?ヘッダーはPHPで送信されます。jsでは動作しません。

4

3 に答える 3

1

HTMLドキュメントの画像を変更する場合は、画像のsrc属性を変更します(または画像要素を新しいものに置き換えます)。XMLHttpRequestはまったく使用しないでください。

于 2012-04-11T10:40:23.057 に答える
1

captcha.phpファイルにヘッダー関数を追加します。

header('Content-Type: image/jpeg');
于 2012-04-11T10:37:45.590 に答える
1

別のスクリプトからソースをロードする場合srcは、ファイルのを文字列値で送信するだけです。このようにして、captcha.phpコードは次のようになります

 $source="/path/to/the/file.jpg";
 header("Content-type:text/plain");
 print $source;

それを受け取ったら、ソースを変更するために次のことを行うことができます

$("#changeCaptchaButton").click(function() {
  $.ajax({
    url: "captcha.php",
    cache: false,
    success: function(data) {
        alert("changing source of image");
        var source=data;
        $("#captchaImg").attr("src", source); 

      }
   });
});

現在のスクリプトで変更を行う場合は、ajaxを使用せず、後者のjQueryメソッドを使用してください

于 2012-04-11T10:50:47.010 に答える