wip found how to theorically get ajax request in php but for the moment i get error 400

This commit is contained in:
asus
2024-02-10 02:22:16 +01:00
parent 1e88b2c2f6
commit f1f04c4f12
6 changed files with 41 additions and 27 deletions

View File

@@ -0,0 +1,2 @@
<input type='text' id='mytext'>
<button id='mybutton'>send</button>

View File

@@ -0,0 +1,18 @@
const inputElement = document.getElementById('mytext');
const sendButton = document.getElementById('mybutton');
sendButton.addEventListener('click', () => {
const inputValue = inputElement.value;
const myurl = php_data.ajax_url;
console.log(myurl);
fetch(myurl, {
method: 'POST',
credentials: 'same-origin',
body: JSON.stringify({
action: 'get_data',
_ajax_nonce: php_data.nonce,
data: inputValue,
})
})
});

View File

@@ -1,27 +1,21 @@
<?php
function wp_model_plugin_content() {
echo "
<input type='text' id='mytext'>
<button id='mybutton'>send</button>
add_files_to_front( array(
"menu/menu.js",
));
<script>
const inputElement = document.getElementById('mytext');
const sendButton = document.getElementById('mybutton');
$ajax_url = admin_url( 'admin-ajax.php' );
$nonce = wp_create_nonce( 'wp-pageviews-nonce' );
add_var_to_front(
compact(
"ajax_url",
"nonce",
),
"menu"
);
sendButton.addEventListener('click', () => {
const inputValue = inputElement.value;
const myurl = php_data.ajax_url;
console.log(myurl);
fetch(url, {
method: 'POST',
credentials: 'same-origin',
body: JSON.stringify({ data: inputValue })
})
});
</script>
";
echo create_html("menu/menu.html");
}
?>

View File

@@ -55,9 +55,6 @@ function add_var_to_front($vars, $handle = "init") {
$handle = pathinfo($handle, PATHINFO_FILENAME);
$object_name = "php_data";
$ajax_url = admin_url( 'admin-ajax.php' );
$vars["ajax_url"] = $ajax_url;
wp_localize_script($handle, $object_name, $vars);
}

View File

@@ -21,10 +21,11 @@ in opposition to the methode file_get_contents()
https://stackoverflow.com/a/4402045/9497573
*/
function create_html($files, $vars) {
function create_html($files, $vars = null) {
$files = (array)$files;
$html_dir = PLUGIN_DIR.'html/';
extract($vars);
if (!is_null($vars))
extract($vars);
ob_start();
foreach($files as $file) {

View File

@@ -93,11 +93,13 @@ function plugin_menu() {
}
add_action('admin_menu', 'plugin_menu');
add_action( 'wp_ajax_nopriv_get_data', 'my_ajax_handler' );
add_action( 'wp_ajax_get_data', 'my_ajax_handler' );
function my_ajax_handler() {
console_log("in my_ajax_handler");
console_log("data: ");
console_log($data);
wp_send_json_success( 'It works' );
}
add_action( 'wp_ajax_get_data', 'my_ajax_handler' );
?>