Я редактирую шаблон сообщения Wordpress. И я хочу вызвать функцию PHP в javascript, но мой код не работает.Javascript call PHP function
- Вот что я хочу сделать. Когда пользователь нажимает
OK button
, при вызове функции функции PHP или сбое должно отображаться окно предупреждения.
Вот мой JS код:
(function() {
tinymce.PluginManager.add('facebook_api_tinymce', function(editor, url) {
editor.addButton('facebook_api_tinymce',
{
title: 'Set friend condition',
text: 'Condition',
type: 'menubutton',
menu:
[
{
text: 'Friend',
onclick: function() {
editor.windowManager.open({
body:[
{
type: 'textbox',
name: 'textboxName',
label: 'Set friend',
value: '20'
}
],onsubmit: function(e) {
$.ajax({
url: 'databaseConnection.php',
type: 'GET',
data: {functionname: 'updateDatabase', post_id: 1, no_friend: 2},
error:function(){
alert("failed");
},
success: function(data) {
alert("success");
console.log(data); // Inspect this in your console
}
});
}
});
}
}
]
});
});
А вот мой PHP код:
<?php
$post_id = 0;
$no_friend = 0;
//Check did it pass the functionName
if(!isset($_POST['functionname']))
$error = 'No function name!';
//Check did it pass the Post id
if(!isset($_POST['post_id']))
$error = 'No function post_id!';
else {
$post_id = $_POST['post_id'];
}
//Check did it pass the no_friend
if(!isset($_POST['no_friend']))
$error = 'No function no_friend!';
else{
$no_friend = $_POST['no_friend'];
}
//If no data are missed
if(!isset($error)) {
switch($_POST['functionname']) {
case 'updateDatabase':
updateDatabase(intval($post_id), intval($no_friend));
break;
default:
$error = 'Not found function '.$_POST['functionname'].'!';
break;
}
}
function updateDatabase($post_id, $no_friend)
{
$ans = $post_id + $no_friend;
echo $ans;
}
echo $error;
Он должен показать окно предупреждения. Что я ошибаюсь?
Вы используя 'Тип:" GET "' в ajax, но вы пытаетесь получить значение в php, используя 'POST' – Sree
Thx много. проблема была исправлена. – Capslock10