如何使用AJAX调用PHP函数?

时间:2019-04-27 01:21:06

标签: php ajax

我正在使用XAMPP在localhost上运行服务器,我想调用一个Javascript函数,该函数将一些数据从浏览器发送到php脚本

当我的html页面上的a按钮被按下时,将调用JS函数:

function send_verification_code(){
    var xhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
    xhttp.open('GET','database.php?email='+email_address)
    xhttp.send()
}

因此,我想在上面的函数中将键值对$_GET添加到email=>email_address数组中,其中email_address是一个字符串。

上面的函数执行后,我想立即调用另一个函数,一个PHP函数,该函数通过调用add_email_to_be_verified将数据添加到服务器上的SQL数据库中(该函数属于php脚本,用于发送数据到):

database.php:

<?php
     $dbhost = "localhost";
     $dbuser = "root";
     $dbpass = "";
     $db = "example";
     $conn;

     function add_email_to_be_verified(){
        connect();
         $sql = 'insert into emailstobeverified values(';
         $sql .= $_GET['email'];
         $sql .= ',';
         $sql .= generate_verification_code();
         $sql .= ',';
         $sql .= date("Y-m-d H:i:s");
         $sql .= ');';
         query($sql);
         disconnect();

     }
     function generate_verification_code(){ //generates a random 6-digit verification code
        $code = mt_rand(0,999999);
        $padded_code = sprintf('%06d', $code);
        return $padded_code;
     }
     function connect(){
        $conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n". $conn -> error);
     }
     function query(sql){
        $conn->query($sql);
     }
     function disconnect(){
        $conn -> close();
     }
?>

如何使用AJAX调用php函数?

1 个答案:

答案 0 :(得分:0)

emaiAddress页上检测到get database.php时,可以调用该函数。例如:

if(isset($_GET['email'])){
    add_email_to_be_verified($_GET['email']);
}

我还将修改您的函数以将电子邮件作为参数,但是您也可以让该函数从get中查找电子邮件。

这里是带有email参数的函数的示例:

function add_email_to_be_verified($email){

     connect();
     $sql = 'insert into emailstobeverified values(';
     $sql .= $email;
     $sql .= ',';
     $sql .= generate_verification_code();
     $sql .= ',';
     $sql .= date("Y-m-d H:i:s");
     $sql .= ');';
     query($sql);
     disconnect();
}