-2

javascriptボタンをクリックするとデータベースエントリを1ずつインクリメントするphp関数を呼び出そうとしていますが、結果がページに表示されますが、ボタンは何もしません。以下のコードの問題の原因を教えてください。

これはおそらく初歩的な質問だと思いますが、私は研究の一部を行いました.これは私の低レベルの知識で得た最も遠いものです(私は学び始めたばかりです).私は修正するか、学ぶ必要があります。

  <?php
$con=mysqli_connect("XXX","XXX","XXX","XXX");
?>

<?php
function addOne()
{
global $con;
mysqli_query($con,"UPDATE voting SET A=A+1");
 }

$result = mysqli_query($con,"SELECT * FROM voting");

while($row = mysqli_fetch_array($result))
  {
  echo $row['A'];
  }

mysqli_close($con);
?>

<script>
function increment()
{
  <?php addOne();?>;
}
</script>

<button onclick="increment()">VOTE</button>
4

2 に答える 2

2

そのためには AJAX を使用する必要があります。

何かのようなもの:

function increment(){
    $.ajax({
        url: "example.com/increment.php",
        cache: false,
        success: function(html){
            //
        }
    });
}

次に、サーバー側では、 などの PHP ファイルでincrement.php、データベースを更新できます。この例では jQuery を使用していることに注意してください。

于 2013-07-28T12:19:32.203 に答える
0

PHPはサーバーサイド、JavaScriptはクライアントサイドです。PHP を使用して JavaScript 関数を呼び出すことはできず、JavaScript を使用して PHP 関数を呼び出すことはできません。これらは別々に動作します。

使用するとき

<?php addOne();?>;

php 関数の結果を html コードに出力しているだけで、他には何もありません。php 関数を呼び出したい場合は、AJAX 呼び出しまたはフォーム送信を使用する必要があります。

于 2013-07-28T12:22:02.880 に答える