这个php函数位于base/home/index.php
function addEmail() {
$email = htmlentities($_POST['email']);
if (wp_create_user($email, '7777777', $email)) echo 'OK';
die();
}
我也有这个jQuery函数位于/home/js/assets.js函数检查邮件是否有效,如果有效,应该运行上面的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中执行那个函数。最快的方法是什么?
创建调用所需逻辑的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
将包含该页的结果(在这种情况下,它似乎是'OK'
的echo
)。您将检查该响应并执行您打算在页面上执行的任何操作。