Я пытаюсь вставить данные из формы в базу данных без обновления страницы, мои HTML страницы выглядит следующим образом:Вставки в базу данных MySQL с помощью AJAX + PHP
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<form name="form1" method="post" action="">Enter Name
<input type="text" name="t1" id="t1">
</td>
<br>Enter City
<input type="text" name="t2" id="t2">
</td>
<br>
<input type="button" name="button1" value="Insert to DB" onClick="aa()">
</form>
<div id="d1"></div>
<script type="text/javascript">
function aa() {
var xmlhttp = new XMLhttpRequest();
xmlhttp.open("GET", "insert.php?name=" + document.getElementById("t1").value + "&city" + document.getElementById("t2").value, false);
xmlhttp.send(null);
document.getElementById("d1").innerHTML = xmlhttp.responseText;;
}
</script>
</body>
</html>
и мой insert.php выглядит следующим образом:
<?php
$name = $_GET["name"];
$city = $_GET["city"];
mysql_connect("localhost","root", "");
mysql_select_db("dwh");
mysql_query("insert into table1 values('$name','$city')");
echo "Record inserted";
?>
По-моему, это должно отправлять PHP все данные в «get», а php должен просто взять его и вставить. Как-то это не так. Может быть, я что-то пропустил, ты можешь помочь мне найти проблему?
браузер консоли сказать:
(index):16 Uncaught ReferenceError: XMLhttpRequest is not defined(index):16 aa(index):9 onclick
Спасибо много.
p.s. Я понимаю, что мой MYSQL-соединение - это риск безопасности, это было создано, чтобы проверить, как заставить его работать.
Включение jQuery здесь кажется спорным, поскольку вы его вообще не используете. –
Попробуйте удалить 'method =" post "' –
Пожалуйста, _please_, *** перестаньте использовать расширение 'mysql' ***, это *** depreacted *** и уже какое-то время. [*** Прочитайте красное предупреждение о человеке ***] (http://php.net/mysql_query) и нажмите ссылки. Научитесь использовать (и любить) 'PDO' и/или' mysqli' ('i' для _improved_). Это заменяющие расширения –