使用jQuery

时间:2015-08-12 13:14:26

标签: javascript php jquery

我的这个php函数位于基础/home/index.php

function addEmail() {
    $email = htmlentities($_POST['email']);
    if (wp_create_user($email, '7777777', $email)) echo 'OK';
    die();
}

我在/home/js/assets.js中也有这个jQuery函数。该函数检查电子邮件是否有效,如果是,应运行上面的php函数。

$('#submit_btn').click(function () {
    var entered = $('#ms_id-2 > input#input_fld').val();
    if (isValidEmailAddress(entered) == false) {
        alert('Sorry, the email you entered is invalid. Please try again.');
        //console.log('No Validation!');
    } else {

        alert('Thank you. Your email address has been added to the list.');
    }
});

基本上,如果电子邮件有效,我需要代码在index.php中执行该函数。最快的方法是什么?

1 个答案:

答案 0 :(得分:4)

创建一个调用所需逻辑的PHP资源。根据你想要它做什么,像这样简单的东西可能会起作用:

<?php
    require('index.php');
    addEmail();
?>

然后向该资源发出AJAX请求:

$.post('theNewPage.php', { 'email' : entered }, function (response) {
    // handle the response in some way
});

重点是JavaScript和PHP无法执行彼此的代码。一个是客户端,一个是服务器端。它们在不同环境中的不同时间运行。在这种情况下,他们通过HTTP请求进行通信。

因此,如果您要执行代码服务器端,则创建一个执行它的页面,然后向该页面发出HTTP请求(在本例中为AJAX请求)以执行它。 JavaScript代码中回调函数中的response将包含该页面的结果(在这种情况下似乎是echo 'OK')。您将检查该响应并执行您打算在页面上执行的任何操作。