使用 AJAX 发布请求将数据发送到 mysql 数据库
Posted
技术标签:
【中文标题】使用 AJAX 发布请求将数据发送到 mysql 数据库【英文标题】:Send data to mysql database using AJAX post request 【发布时间】:2013-08-28 20:39:01 【问题描述】:我想通过 AJAX POST 请求发送用户输入的字符串并添加到数据库:
Új gyártó: <input type="text" id="new_mfg" size="20">
<button id="add_mfg">Hozzáadás</button>
<script>
$("#add_mfg").click(function(e)
e.preventDefault()
var new_mfg = $('#new_mfg').val();
//$(this).text(new_mfg);
request = new XMLHttpRequest();
request.open("POST","/phps/add_mfg.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
request.send('$new_mfg');
);
</script>
这里是 add_mfg.php 脚本:
require_once('login.php');
$new_mfg = $_POST['new_mfg'];
$new_mfg = stripslashes($new_mfg);
$db_server = mysql_connect($db_hostname, $db_username, $db_password);
if(!$db_server) die("Unable to connect to MYSQL:" . mysql_error());
mysql_select_db($db_database)
or die("Unable to select database:" . mysql_error());
$query = "INSERT INTO mfg(ID, mfg_name) VALUES(NULL, '$new_mfg')";
$result = mysql_query($query);
mysql_close($db_server);
代码不起作用,我不知道问题是什么。
【问题讨论】:
为什么不使用 JQuery ajax 方法? api.jquery.com/jQuery.ajax 请求发送到add_mfg.php。控制台有错误吗? 事实上,您不能。您只能将其发送到 PHP 脚本 不,我没有任何错误日志。我会尝试更改为 jquery ajax 方法,但这对这种情况有影响吗? 【参考方案1】:您需要将点击事件处理程序包装到$(document).ready(function() );
$(document).ready(function()
$("#add_mfg").click(function(e)
);
);
【讨论】:
或快捷方式 $(function()); @user874774 是的......但我认为 OP 是新手,所以他更容易用谷歌搜索它。 即使你需要将new XMLHttpRequest();
请求替换为$.ajax();
我认为jquery事件没有问题。我的第一个艰难是一样的,但我试图打印出读取的 new_mfg 变量:【参考方案2】:
使用这个简短的版本:
$(function()
$("#add_mfg").click(function(e)
// ...
);
);
【讨论】:
以上是关于使用 AJAX 发布请求将数据发送到 mysql 数据库的主要内容,如果未能解决你的问题,请参考以下文章
使用 Ajax POST 请求将图像和 JSON 数据发送到服务器?
如何将 JQuery AJAX 请求中的数据发送到 Node.js 服务器