Я до сих пор новичок в PHP и AJAX, но я думаю, что я немного разбираюсь в JavaScript и jQuery. Вот моя проблема: в моем пользовательском интерфейсе у меня есть поле ввода формы и кнопка ОК (которая не входит в форму). Каждый раз, когда пользователь нажимает кнопку ok, содержимое поля ввода плюс некоторые переменные сеанса должны быть отправлены на сервер через AJAX, чтобы страница не загружалась.
Вот мой JS-код:
$.post('api/someFile.php',
{
var1: nr1,
var2: nr3,
var3: nr3,
}
);
Вот мой PHP-код someFile.php
:
<?php
// activate current session
session_start();
// use php console for debugging
require_once('PhpConsole.php');
PhpConsole::start();
// get data from UI
$var1 = $_POST["var1"];
$var2 = $_POST["var2"];
$var3 = $_POST["var3"];
debug("start receiving");
debug($var1 . " " . $var2 . " " . $var3);
// ... proceed with the data and write it in database...
debug("finished");
?>
Проблема заключается в том, что весь код в someFile.php
выполняется дважды. Это консольный выход:
javascript debug: send to server: nr1, nr2, nr3
php debug: start receiving
php debug: nr1 nr2 nr3
php debug: finished
php debug: start receiving
php debug: nr1 nr2 nr3
php debug: finished
Однако данные записываются в базу данных только один раз. Это довольно странно. Это ошибка в php-консоли или мой код плохой?
какой браузер вы используете? Иногда это случалось с Fireforx. –
Я протестировал его в Chromium. Есть ли вероятность, что это просто ошибка в консоли PHP? – MenschMarcus