私は基本的に、ユーザーがボタンを繰り返しクリックしてクリックするたびにスコアを上げるサイトに取り組んでいます。クリックごとにページを更新したくないので、AJAXを使用しています。次のように私がいるjQuery/AJAX post() - いくつかの問題
の問題は、現在、以下のとおりです。私は=
<? echo $result['count']; ?>
に私のjavascriptのvar
を設定しようとすると
、動作するようには思えません。
私は正確に
UPDATE
に$update = $dbh->execute("UPDATE count SET count='$count'+1 WHERE username='$username'");
のようなクエリの計算とMySQLテーブルを使用する方法を理解していません。これは計算の正しい構文ですか、PDOでこれを行う正しい方法ですか?ここで
は、私はクリックするシステムのために使用しています私のテストページのコードです:
<html>
<?php
$hostname = 'localhost';
$username2 = 'refrigerator';
$password = 'xxx';
$dbh = new PDO("mysql:host=$hostname;dbname=refrigerator", $username2, $password);
$username = $_COOKIE["user"];
$rows = $dbh->prepare("SELECT count FROM count WHERE username = '$username'");
$rows->execute();
$result = $rows->fetchALL();
$result['count'] = $count;
if(isset($_POST['action'])){
if ($_POST['action'] == 'increase'){
$update = $dbh->execute("UPDATE count SET count='$count'+1 WHERE username='$username'");
}
}
?>
<body>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var count = <? echo $result['count']; ?>;
$("#update").click(function() {
$.ajax({
type: "POST",
url: "button.php",
data: {"action":"increase"},
success: function(update) {
count++;
$("#counter").html(+count);
}
});
});
});
</script>
<button id="update" type="button">Button</button>
<div id="counter"><? echo $result['count']; ?></div>
</body>
</html>
どうもありがとう、任意の助けをいただければ幸いです。あなたが私の質問に答えるのを助ける正しい方向に私を向けることができても、それはすばらしいでしょう。
はありがとう
あなたは持っている必要があり
ていますか? ' ... ?>'を使用できない可能性があり、 '' – Dutchie432
@ Dutchie432 返信ありがとう 私は短いタグを使う必要があると私は確信しています。変数$ resultが定義されていないか、何かがないというエラーです。 – Taimur
'$ result ['count'] = $ count;'の行の後に 'die($ result ['count'])'を置くと、期待される結果が見えますか? – Dutchie432