我的这个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中执行该函数。最快的方法是什么?
答案 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'
)。您将检查该响应并执行您打算在页面上执行的任何操作。