Данные HTML-формы не передаются в php-файл по запросу GET ajax - PullRequest
0 голосов
/ 19 мая 2018

Я получаю ошибки при создании запроса GET для отправки данных формы в файл PHP.Что мне делать?

function addDetails(str1,str2,str3,str4){

    var xmlhttp=new XMLHttpRequest();
    xhttp = new XMLHttpRequest();

    xhttp.onreadystatechange = function() {
       if (this.readyState == 4 && this.status == 200) {
        document.getElementById("viewblock").innerHTML = this.responseText;
       }
    };
    xmlhttp.open("GET","addDetails.php?a="+str1+"&b="+str2+"&c="+str3+"&d="+str4,true);
    xmlhttp.send();
}

от str1 до str4 - это значения полей ввода (HTML), которые я отправляю при вызове addDetails ().

Мой PHP-код выглядит так

$a = $_REQUEST["a"];
$b = $_REQUEST["b"];
$c = $_REQUEST["c"];
$d = $_REQUEST["d"];

$con=new mysqli_connect('localhost','root','');
if(!$con){
    die('Connection Error : '.mysqli_error($con));
}

mysqli_select_db($con,"ajax_app");
$sql="INSERT INTO images(title,description,capturedate,image) VALUES ($a,$b,$c,$d)";
if(mysqli_query($con,$sql)){
    alert("data added successfully");
}
else{
    alert("failed to add");
}
?>

Никаких изменений не происходит, когда я выполняю это.И ошибки тоже нет.

1 Ответ

0 голосов
/ 19 мая 2018

Возможно, вы получили ошибки в php-скрипте.Вы не можете вызывать функции alert () в PHP.Используйте вместо этого эхо.Тогда вы увидите ответы в консоли вашего браузера.

Ваш PHP-код должен выглядеть следующим образом:

$a = $_REQUEST["a"];
$b = $_REQUEST["b"];
$c = $_REQUEST["c"];
$d = $_REQUEST["d"];

$con=new mysqli_connect('localhost','root','');
if(!$con){
    die('Connection Error : '.mysqli_error($con));
}

mysqli_select_db($con,"ajax_app");
$sql="INSERT INTO images(title,description,capturedate,image) VALUES ($a,$b,$c,$d)";
if(mysqli_query($con,$sql)){
    echo "data added successfully";
}
else{
    echo "failed to add";
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...