У меня есть ввод HTML с функцией и параметром, установленным для него так
<input onclick='myFunc($count)' type='button' value='ClickMe'>;
У меня также есть ссылки на сценарии JQuery и мой файл сценариев.
<script src = "jquery.js"></script>
<script src = "myscript.js"></script>
Внутри моего файла myscript.js у меня есть содержимое как таковое
function myFunc(x) {
alert(x);
$(document).ready(function() {
$.ajax({
url: "myphp.php",
method: "post",
data: { param1: "x" },
dataType: "text",
success: function(strMessage) {
}
})
})
}
Вот мой файл myphp.php
<?php
$param1 = $_GET['param1'];
echo $param1;
?>
Как вы можете видеть в файле javascript, у меня есть alert(x); чтобы проверить, что функция захватывает переменную $count и до сих пор работает (правильное значение появляется в окне предупреждения). Однако я хочу передать этот параметр x PHP-скрипту, но мой PHP-скрипт ничего не выводит, я предполагаю, что строка, в которой у меня есть param1, неверна. Какие-нибудь советы?
Я выполнил ваши инструкции и удалил предупреждение (x); функция под myFunc(), и когда я нажимаю кнопку, я получаю предупреждение, но ничего внутри предупреждения. Это будет означать, что либо параметр не передается в AJAX и/или PHP? Довольно сложно проверить, вызывает ли AJAX файл PHP из веб-браузера.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


В вашем вызове AJAX вы используете метод POST, поэтому, чтобы поймать переменную в PHP, вам нужно получить к ней доступ из $_POST:
<?php
$param1 = $_POST['param1'];
echo $param1;
?>
Вы делаете XHR методом POST
method: "post",
и вы ищете его в массиве GET
$_GET['param1'];
Измените либо на отправку, либо на получение (с учетом вашего сценария), и вы должны быть в порядке.
Узнайте больше здесь, чтобы узнать о различных методах отправки HTTP-запросов: https://www.guru99.com/php-forms-handling.html
Вы используете метод post в AJAX, но пытаетесь получить значение в $_GET, что неверно.
В вашем PHP-коде просто замените $_GET['param1'] на $_POST['param1'], и все заработает.
или Если вы хотите использовать $_GET в своем PHP-коде, измените метод в AJAX или используйте $.get. Примеры можно найти на W3School.
https://www.w3schools.com/jquery/jquery_ajax_get_post.asp
удалите кавычки из данных: {param1: "x"} в вашем javascript и добавьте
alert(strMessage);внутри фигурных скобокsuccess: function( strMessage ) { }.