使用 Laravel 控制器处理来自 AJAX GET 请求的数据并更新数据库

使用 laravel 控制器处理来自 ajax get 请求的数据并更新数据库

本文介绍了如何在 Laravel 控制器中使用 AJAX GET 请求接收的数据更新数据库。通过 Paystack 支付成功后,使用 AJAX 将支付参考信息发送到 Laravel 后端,并在控制器中验证支付状态,最终更新用户表中的捐赠总额。本文将详细讲解实现步骤,并提供关键代码示例和注意事项。

前端:使用 AJAX 发送支付参考信息

前端代码主要负责发起 Paystack 支付,并在支付成功后通过 AJAX GET 请求将支付参考信息发送到 Laravel 后端。以下是相关代码片段:

  


const paymentForm = document.getElementById('paymentForm');paymentForm.addEventListener("submit", payWithPaystack, false);function payWithPaystack(e) { e.preventDefault(); let handler = PaystackPop.setup({ key: 'pk_test_058624cb23f26e6f1a75325ec7cdc84ead42b999', // Replace with your public key email: document.getElementById("email-address").value, amount: document.getElementById("amount").value * 100, ref: ''+Math.floor((Math.random() * 1000000000) + 1), // generates a pseudo-unique reference. Please replace with a reference you generated. Or remove the line entirely so our API will generate one for you // label: "Optional string that replaces customer email" onClose: function(){ alert('Window closed.'); }, callback: function(response){ let reference = response.reference; // verify pay $.ajax({ type: "GET", url: "{{URL::to('verify-payment')}}/"+reference, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, success: function(response){ console.log(response); } }); } }); handler.openIframe();}

关键点:

Paystack 集成: 使用 Paystack 提供的 JavaScript 库 js.paystack.co/v1/inline.js 实现支付流程。AJAX 请求: 在支付成功回调函数 callback 中,使用 $.ajax 发送 GET 请求到 Laravel 后端路由 verify-payment/{reference}。CSRF Token: 为了安全起见,需要在 AJAX 请求的 header 中包含 CSRF token。可以通过 在 HTML 中定义,然后在 AJAX 请求中获取并添加。

后端:Laravel 控制器处理 AJAX 请求并更新数据库

Laravel 控制器负责接收 AJAX 请求,验证支付状态,并更新数据库。以下是控制器代码示例:

 'Bearer ' . $sec,        ])->get("https://api.paystack.co/transaction/verify/$reference");        $newData = $response->json();        if ($newData['status'] == true) {            $amount = $newData['data']['amount'] / 100;            $u_input['donation_sum'] = $amount; // 使用单引号            Auth::User()->update($u_input);            return "paid";        } else {            return "something went wrong";        }    }}

关键点:

路由定义: 在 routes/web.php 中定义 GET 路由:

Route::get('verify-payment/{reference}', [UsersController::class, 'verify_pay'])->name('verify-payment');

Paystack API 验证: 使用 curl 或 Http Facade (推荐) 向 Paystack API 发送请求,验证支付参考信息 $reference。

数据处理: 从 API 响应中提取支付金额,并将其存储在 $u_input 数组中。

数据库更新: 使用 Auth::User()->update($u_input) 更新当前用户的 donation_sum 字段。 这里需要确保用户已经登录,并且 Auth::User() 返回的是当前登录用户模型实例。

错误处理: 增加错误处理机制,例如记录日志或返回更详细的错误信息。

注意事项:

安全性: 务必保护好你的 Paystack Secret Key,不要将其暴露在前端代码中。错误处理: 在控制器中添加更完善的错误处理机制,例如捕获 API 请求失败的情况。数据验证: 在更新数据库之前,对接收到的数据进行验证,确保数据的有效性和安全性。例如,验证 $amount 是否为数字。CSRF 保护: 确保你的 AJAX 请求包含了 CSRF token,以防止跨站请求伪造攻击。更新方式: 确保使用正确的数组访问方式。 PHP 中访问数组元素通常使用单引号 ‘ 而不是双引号 “, 尤其是在数组键是字符串时。使用 Laravel Http Facade: 推荐使用 Laravel 提供的 Http Facade 来发送 HTTP 请求,它更加简洁易用。

总结:

通过以上步骤,你可以在 Laravel 控制器中安全地处理来自 AJAX GET 请求的数据,并更新数据库。 记住要关注安全性、错误处理和数据验证,以确保你的应用能够可靠地运行。

以上就是使用 Laravel 控制器处理来自 AJAX GET 请求的数据并更新数据库的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1291861.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月11日 07:48:56
下一篇 2025年12月11日 07:49:05

相关推荐

  • IOSG:可以「闭眼买」的山寨季为什么已成为历史?

    过去两年,市场始终被一个问题所牵引:山寨季是否还会归来? 相较于比特币的强势表现与日益加深的机构化趋势,绝大多数山寨币的表现黯淡无光。当前,多数现存山寨币的市值相较上一轮周期已缩水超95%,即便是曾备受瞩目的新项目也难逃泥沼。以太坊同样经历了长期的情绪低谷,直到近期在“币股模式”等新型交易结构的推动…

    2025年12月11日 好文分享
    000
  • 什么是替代币季节?为什么对加密货币投资者重要?

    什么是替代币季节? 山寨币季节,简称“山寨季”,指的是加密市场中比特币以外的代币集体大幅上涨的周期。在此阶段,以太坊(ETH)、Solana(SOL)、Meme币及各类DeFi、NFT项目代币的表现显著超越比特币(BTC),价格涨幅更为迅猛。这一现象通常伴随着比特币主导地位的下降,意味着资金正从BT…

    2025年12月11日
    000
  • 2025年新手小白适合买什么虚拟货币?新手适合购买的加密货币推荐

    2025年新手应优先考虑比特币和以太坊等主流币,结合Chainlink、Uniswap等DeFi项目及Polkadot、Solana等新兴公链进行分散投资,并采用硬件钱苞存储与长期持有策略以控制风险。 主流加密货币交易平台官网入口 1、币安Binance: 2、欧易OKX: 3、火币HTX: 4、大…

    2025年12月11日
    000
  • 区块链浏览器是什么?如何查询交易记录?

    区块链浏览器是访问区块链信息的一个窗口,它扮演着区块链世界搜索引擎的角色。每一条在区块链上发生的数据变动,例如转账、合约调用等,都会被公开记录。区块链浏览器将这些复杂、原始的链上数据解析、索引并以一种人类可读的格式呈现出来。 2025主流数字货币交易所: 1、欧易OKX 注册入口: APP下载: 2…

    2025年12月11日
    000
  • Falcon Finance(FF)币是什么?Falcon Finance项目概述与代币领取指南

    Falcon Finance 是什么 Falcon Finance 正在打造首个通用抵押品基础设施,旨在重塑链上流动性格局。用户可将 BTC、ETH、SOL、稳定币(如 USDT、USDC、USD1)、部分主流山寨币,乃至代币化的现实世界资产(RWA),例如政府债券,作为抵押物,来铸造其合成美元稳定…

    2025年12月11日
    000
  • 虚拟币预售怎么领取 虚拟币预售领取网站汇总

    参与新兴数字项目的预售是许多爱好者的选择,但如何安全、顺利地领取这些预售的虚拟币资产却是一个关键环节。本文将详细介绍领取预售虚拟币的通用步骤,并汇总常见的领取平台类型,帮助您清晰地了解整个流程。 预售虚拟币正规领取平台推荐 官方APP下载链接 1、币安Binance: 2、欧易OKX: 3、火币HT…

    2025年12月11日
    000
  • Solidus Ai Tech(AITECH)币是什么?怎么样?AITECH工作原理和代币经济学概述

    Solidus AI 是什么 Solidus AI 定位为“Web3 原生 AI/HPC 基础设施”:其核心是在欧洲建设占地 8000 平方英尺的环保高性能计算(HPC)数据中心,面向开发者与企业用户,提供计算资源租赁、人工智能工具及授权服务,并以 AITECH 代币作为生态内的结算与激励媒介。项目…

    2025年12月11日
    000
  • 币安每日一词是什么?怎么玩?有什么奖励?常见问题解析

    币安每日一词是什么? 你是否玩过风靡全球的猜字游戏Wordle?币安交易所基于此灵感,推出了专为加密爱好者设计的小游戏——币安每日一词「WOTD(Word of The Day)」。这个游戏的题目全部围绕区块链、数字货币等币圈热门主题展开,在娱乐的同时还能学习行业知识,堪称寓教于乐的典范。 参与币安…

    2025年12月11日 好文分享
    000
  • 国际虚拟币市值排行榜2025 国际虚拟币市值前十名盘点

    随着数字资产领域的持续发展,市场格局也在不断演变。本文旨在基于当前技术趋势、生态系统发展和市场采纳度,对2025年国际虚拟币市值排名前十的潜力项目进行前瞻性分析,为关注者提供一个清晰的参考图景。 国际虚拟币主流平台推荐 1、币安Binance: 2、欧易OKX: 3、火币HTX: 4、大门Gate.…

    2025年12月11日 好文分享
    000
  • MYX Finance (MYX)币2025-2030年价格预测 :何时能突破20美元?

    MYX Finance 是什么?技术驱动的 DeFi 协议 ‍ MYX Finance 是一个去中心化衍生品交易平台,于 2024 年 2 月正式上线,目前已部署在 BNB Chain、Arbitrum 和 Linea 等超过 20 条主流公链上。其核心创新在于独特的匹配池机制(MPM): 零滑点交…

    2025年12月11日
    000
  • 香港稳定币如何购买 香港稳定币购买使用方法

    本文旨在为对香港稳定币感兴趣的用户提供一份清晰的购买与使用指南,帮助您了解其基本概念、获取渠道和主要应用场景,从而安全、合规地参与相关活动。 稳定币全球安全交易平台推荐 1、币安binance: 2、欧易OKX: 3、火币HTX: 4、大门Gate.io: 一、了解香港稳定币 1、香港稳定币是一种与…

    2025年12月11日
    000
  • 什么是跨链技术?如何实现资产跨链转移?

    在当前的数字化环境中,不同的区块链系统如同独立的数字岛屿,各自拥有独特的共识机制、底层架构和资产类型。例如,比特币网络保障着BTC的流转,而以太坊网络则承载着大量的智能合约和多样化的代币。这些网络在默认情况下是相互隔离的,一个网络中的资产和信息无法被另一个网络直接识别或使用,这便形成了所谓的“价值孤…

    2025年12月11日
    000
  • 去中心化金融DeFi是什么?全面了解DeFi的核心概念、生态和应用场景

    去中心化金融(Decentralized Finance),简称DeFi,是指构建在开放的区块链网络(主要是以太坊)上的一系列金融应用和服务的生态系统。它旨在通过运用智能合约和去中心化技术,重新创建一个透明、无需许可、可组合的开放式金融体系。 2025主流数字货币交易所: 1、欧易OKX 注册入口:…

    2025年12月11日
    000
  • 币圈空投是什么?详解获取条件、参与方法和潜在风险

    在加密货币的世界里,空投(Airdrop)是一个频繁出现的词汇,它指的是一种项目方向早期用户和社区成员免费分发代币的行为。这种行为的目的通常是为了在项目启动初期吸引用户、建立社区共识、奖励早期支持者,以及实现代币的广泛分配,从而促进网络的去中心化。对于参与者而言,空投提供了一个低成本获取新兴加密资产…

    2025年12月11日
    000
  • NFT到底是什么?一文明白概念特点、技术原理和投资逻辑

    NFT,全称为非同质化代币(Non-Fungible Token),是一种记录在区块链上的独特数字资产。与比特币或以太币等同质化代币不同,每一个NFT都是独一无二的,拥有自己独特的标识信息。这种特性使得NFT可以用来代表对特定资产的所有权,这些资产可以是数字艺术品、音乐、游戏道具、收藏品,甚至是现实…

    2025年12月11日
    000
  • 以太坊生态发展:DApp、Layer2与ETH2.0

    以太坊,这个曾经仅仅是一个概念的区块链平台,如今已然发展成为一个庞大而充满活力的生态系统。它不仅是加密世界的基石,更是无数创新应用(dapp)的孵化器。从最初的简单代币发行,到如今涵盖去中心化金融(defi)、非同质化代币(nft)、元宇宙等多个领域的繁荣景象,以太坊的每一次迭代都牵动着全球区块链爱…

    好文分享 2025年12月11日
    000
  • NFT、AI代币与Layer-1生态在今日表现强劲,轮动特征明显

    NFT、AI代币及Layer-1生态今日表现强劲,市场呈现明显轮动特征,不同板块交替领涨。投资者可关注热点板块资金流入和短期价格波动,把握潜在投资机会。 市场板块表现分析 今日行情主要特点: 1. NFT板块:部分艺术品类和游戏类NFT交易量回升,市场关注度提升。 2. AI代币:受概念热度推动,多…

    2025年12月11日
    000
  • 加密货币市场分析:每日行情深度解读

    加密货币市场分析:每日行情深度解读 加密货币市场以其惊人的波动性和颠覆性的创新,持续吸引着全球投资者的目光。每日行情深度解读,不仅仅是对价格涨跌的简单汇报,更是对市场背后错综复杂因素的剖析。这包括了宏观经济指标的影响、地缘政治事件的冲击、技术创新带来的机遇、以及监管政策的演变。今天,我们将聚焦于比特…

    好文分享 2025年12月11日
    000
  • Web3.0:构建下一代互联网的基石

    web3.0,一个正在悄然改变我们数字生活面貌的革命性概念,它不仅仅是互联网的一次技术迭代,更是一种深刻的范式转变。想象一下,一个用户真正拥有数据、掌控身份、并参与协议治理的互联网,这正是web3.0的核心愿景。它将我们从中心化的巨头手中解放出来,将权力重新分配给个体用户和社区。这种去中心化、透明化…

    好文分享 2025年12月11日
    000
  • Web3基金融资,资本持续涌入

    web3基金融资的浪潮持续高涨,宛如一股不可阻挡的洪流,正以前所未有的速度涌入区块链和去中心化应用领域。这股资本的注入不仅仅是简单的财务投资,它更是对未来数字经济形态的深刻洞察与战略布局。从基础设施到应用层,从defi到nft,再到元宇宙,每一个web3的细分赛道都吸引着顶尖风投机构、家族办公室乃至…

    好文分享 2025年12月11日
    000

发表回复

登录后才能评论
关注微信