-1

クラスを使用してページ上のすべての div の ID を取得し、archiveそれらを MySQL クエリに入れて、ID がデータベースにアーカイブされているかどうかを確認したいと考えています。

だから基本的に私はこれをどのように行うことができるのか疑問に思っています:$div = $(this).attr('id');

次に、それをループに入れてチェックします。

$matches = mysql_query("SELECT * FROM content WHERE `div` = '$div'");
        while ($post = mysql_fetch_assoc($matches)) 
        {
            if (mysql_num_rows($matches) > 0)
            { 
              //DO THIS
            }
        }

アップデート

私は今AJAX用にこのコードを持っています:

$('div.heriyah').each(function() { 
var curID = $(this).attr('id'); 
$.post("admin/btnCheck.php", { div : curID }, function(data) {
if (data == "yes") {
    $('#' + curID).html('<div class=\"add\"><div id=\"add_button_container\"><div id=\"add_button\" class=\"edit_links\">  + Add Element</div></div></div><div class=\"clear\"></div></div>');
} else {
    $('#' + curID).html('<div class=\"add\"><div id=\"add_button_container\"><div id=\"add_button\" class=\"edit_links\">  + Set As Editable Region</div></div></div><div class=\"clear\"></div></div>');
}
  });
});

そして私のPHP:

$matches = mysql_query("SELECT * FROM content WHERE `div` = '".$_POST['div']."'");
 if (mysql_num_rows($matches) > 0)
 { 
    echo "yes";
 } else {
    echo "no";
 }

私は何を間違っていますか?

4

2 に答える 2

2

そのようなPHPスクリプトにjavascript変数をスローすることはできません。ページに ajax リクエストを送信する必要があります

$div = $(this).attr('id');
$.post("yourquerypage.php", { divid : $div }, function(data) {
    // Something to do when the php runs successfully
});

次に、$_POST() から変数を取得するようにクエリを構成します。

$matches = mysql_query("SELECT * FROM content WHERE `div` = '".$_POST['divid']."'");

そしてもちろん、注射の対策を講じる必要があります。

于 2012-04-07T01:19:56.683 に答える
0

単純な構文エラーです。の後に条件を削除するelseと、問題ないはずです。

else (data == "yes") { // remove (data == "yes")
    // snip
}
于 2012-04-07T02:15:07.167 に答える