簡體   English   中英

ajax從mysql加載數據

[英]ajax load data from mysql

您好,我正在嘗試使用Ajax從服務器加載數據。 這是我的js

<script>
jQuery(document).ready(function($){
$("#mc-prize").click(function(){ 
event.preventDefault();
$.ajax({
          url: "includes/prize.php",
          type: "GET",
          datatype: "text",
          data: {"num": num},
          cache: false,
          success: function(response){
                 $("#some-block").append(response);
         }
        });
});
});
</script>

這是我的priest.php文件

<?php
$host = '#';
$user = '#';
$password = '#';


if (isset($_POST['submit'])){
    $prize_email = $_POST['email'];
    $mysqli = new mysqli($host, $user, $password, $user);
    $result = $mysqli->query("SELECT * FROM prize_numbers WHERE email = '" .$prize_email. "'") or die ("Couldn't connect to database.");
    $row = $result->fetch_assoc();
   if($row['email']) {
       echo "Your num: ".$row['num'];
    } else {
       echo "No email in db";
    }

}
?>

但是,當我嘗試從數據庫中獲取一些數據時,我看到一個錯誤:“未捕獲的ReferenceError:未定義num”

怎么了?

UPD:對不起,什么是我的PHP正確的JS? 我需要在數據中放置什么?

您的問題不在您的php中,而是在js代碼中

data: {"num": num},

在js代碼的任何地方都沒有定義變量num

嘗試使用以下代碼:

<script>
jQuery(document).ready(function($){
$("#mc-prize").click(function(){ 
var some_email = ''; // DEFINE HERE THE EMAIL YOU WANT TO SEND
event.preventDefault();
$.ajax({
          url: "includes/prize.php",
          type: "POST",
          datatype: "text",
          data: {"email": some_email,"submit": 1},
          cache: false,
          success: function(response){
                 $("#some-block").append(response);
         }
        });
});
});
</script>

您在JQuery中的數字未定義。 數據是您要輸出的參數,響應是您作為輸出獲得的結果。 只需將以下代碼行data: {"num": num},替換為data: "email="+email_var並添加變量email_var實現(例如: var email_var = "simplemail@mail.org" )。

UPD:傳遞電子郵件,以便您可以在PHP中進行檢查。

if (isset($_POST['email'])){
    $prize_email = $_POST['email'];
    $mysqli = new mysqli($host, $user, $password, $user);
    $result = $mysqli->query("SELECT * FROM prize_numbers WHERE email = '" .$prize_email. "'") or die ("Couldn't connect to database.");
    $row = $result->fetch_assoc();
   if($row['email']) {
       echo "Your num: ".$row['num'];
    } else {
       echo "No email in db";
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM