php如何将数据存到数据库中,如何将数据从jQuery传递到php以保存到数据库中?

我已经阅读了有关jQuery.ajax方法的信息,并相信这应该是我所需要的-但到目前为止,它尚无法正常工作.

我用表“ users”创建了一个测试mysql数据库,在该表中添加了“ name”和“ location”行,然后确保可以使用命令行将数据保存到该数据库.然后,我制作了一个带有按钮的测试页,并将此副本添加到我的脚本文件中($.ajax部分直接来自jQuery api示例):

$('#button').click(function(){

saveData();

});

function saveData(){

$.ajax({

type: "POST",

url: "process.php",

data: { name: "John", location: "Boston" }

}).done(function( msg ) {

alert( "Data was saved: " + msg );

});

}

我确实收到了一条警告消息,“数据已保存”,但实际上没有任何内容保存到我的数据库中.我一定对process.php做错了,但不确定是什么.这是process.php中的代码(我为数据库,db_host,用户等设置了变量,这些未在此处显示):

// 1. Create a connection to the server.

$connection = mysql_connect($db_host, $db_user,$db_pwd);

// make sure a connection has been made

if (!$connection){

die("Database connection failed: " . mysql.error());

}

// 2. Select the database on the server

$db_select = mysql_select_db($database, $connection);

if (!$db_select){

die("Database selection failed: " . mysql.error());

}

// START FORM PROCESSING

if (isset($_POST['submit'])) { // Form has been submitted.

$name = trim(mysql_prep($_POST['name']));

$location = trim(mysql_prep($_POST['location']));

// INSERT THE DATA

$query = "INSERT INTO user ( name, location )

VALUES ( '{$name}','{$location}' )";

// Confirm if the query is successful.

$result = mysql_query($query, $connection);

}

解决方法:

其他人已经告知使用“成功”和“错误”,这确实是捕获成功/错误回调的更好方法.但是,实际上什么也不是什么都不插入的问题.除此之外,您的Ajax呼叫看起来还不错.

我看到的另一个问题是您只传递了以下参数:

data: { name: "John", location: "Boston" }

但是在您的PHP代码中,您确实要检查是否设置了一个提交按钮:

if (isset($_POST['submit']))

显然不是这样,因为发送的唯一内容是您在Ajax调用的’data’属性中传递的内容.而是使用:

if ( $_SERVER['REQUEST_METHOD'] == 'POST' )

标签:mysql,php,jquery

来源: https://codeday.me/bug/20191101/1982833.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现将数据添加到购物车效果,需要前端和后端的配合。 前端部分: 1. 在 HTML 页面添加购物车按钮,并为其绑定一个事件监听器; 2. 在事件监听器使用 AJAX 技术向后端发送请求,请求添加商品到购物车; 3. 显示添加成功或失败的信息。 一个简单的HTML页面代码示例: ```html <!DOCTYPE html> <html> <head> <title>商品列表</title> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script> $(document).ready(function() { $(".add-to-cart").click(function() { var id = $(this).data("id"); $.ajax({ url: "addToCart.php", method: "POST", data: {id: id}, success: function(response) { $(".message").html(response); } }); }); }); </script> </head> <body> <h1>商品列表</h1> <ul> <li>商品1 <button class="add-to-cart" data-id="1">加入购物车</button></li> <li>商品2 <button class="add-to-cart" data-id="2">加入购物车</button></li> <li>商品3 <button class="add-to-cart" data-id="3">加入购物车</button></li> </ul> <div class="message"></div> </body> </html> ``` 在这个示例,我们为每个商品添加了一个加入购物车的按钮,并为每个按钮设置了一个 `data-id` 属性,用来表示该商品的唯一标识符。当用户点击加入购物车按钮时,我们使用 AJAX 技术向后端发送请求,并将商品的唯一标识符作为参数传递给后端。 后端部分: 1. 接收前端发送的请求,获取商品的唯一标识符; 2. 根据商品的唯一标识符从数据库获取商品的信息; 3. 将商品的信息添加到购物车,并将购物车保存到 session ; 4. 返回添加成功或失败的信息给前端。 一个简单的PHP代码示例: ```php <?php session_start(); if ($_SERVER["REQUEST_METHOD"] == "POST") { $id = $_POST["id"]; // 根据商品的唯一标识符从数据库获取商品信息 $item = getItemById($id); if ($item) { // 将商品信息添加到购物车 if (!isset($_SESSION["cart"])) { $_SESSION["cart"] = array(); } array_push($_SESSION["cart"], $item); echo "商品已添加到购物车。"; } else { echo "商品不存在。"; } } ?> ``` 在这个示例,我们首先获取前端发送的请求的商品唯一标识符,并根据该标识符从数据库获取商品信息。如果商品存在,我们将其添加到购物车,并将购物车保存到 session 。最后,我们返回添加成功或失败的信息给前端。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值