PHP 不使用 ajax 将超过 91 行的表单数据插入数据库

2024-02-17

我试图向数据库插入超过 150 行,但发布请求仅发生 91 行,并且控制台日志显示内部服务器错误

插入91行后出现错误

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行 '' 附近使用的正确语法

我的 HTML 表格

<form id="mySpan4" style="display: block;">
<table class="fixed_headers"><tbody>

<!-- SKIPPED TO OCC 90 Showing only 90 to 94 -->

        </tr><tr>
        <td>PRASAD  D R <input type="hidden" name="student[90]" value="PRASAD  D R"><input type="hidden" name="Reg[90]" value="13KQC31170"><input type="hidden" name="schoolid[90]" value="FT001"><input type="hidden" name="section[90]" value="A"><input type="hidden" name="standard[90]" value="III BCOM"><input type="hidden" name="Subject[90]" value="COM-42"><input type="hidden" name="date1[90]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[90]" value="STUDENT"><input type="hidden" name="Userid[90]" value="admin"><input type="hidden" name="date_user_submitted[90]" value="2016-01-07  03:51:45 pm"></td>



        <td><input id="radio01[90]" name="present[90]" type="radio" value="Present"><label for="radio01[90]"><span></span></label></td>
        <td><input id="radio02[90]" name="present[90]" type="radio" value="Absent"><label for="radio02[90]"><span></span></label></td>
        <td><input id="radio03[90]" name="present[90]" type="radio" value="Leave"><label for="radio03[90]"><span></span></label></td>
        </tr><tr>
        <td>PRASAD K T <input type="hidden" name="student[91]" value="PRASAD K T"><input type="hidden" name="Reg[91]" value="13KQC31171"><input type="hidden" name="schoolid[91]" value="FT001"><input type="hidden" name="section[91]" value="A"><input type="hidden" name="standard[91]" value="III BCOM"><input type="hidden" name="Subject[91]" value="COM-42"><input type="hidden" name="date1[91]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[91]" value="STUDENT"><input type="hidden" name="Userid[91]" value="admin"><input type="hidden" name="date_user_submitted[91]" value="2016-01-07  03:51:45 pm"></td>



        <td><input id="radio01[91]" name="present[91]" type="radio" value="Present"><label for="radio01[91]"><span></span></label></td>
        <td><input id="radio02[91]" name="present[91]" type="radio" value="Absent"><label for="radio02[91]"><span></span></label></td>
        <td><input id="radio03[91]" name="present[91]" type="radio" value="Leave"><label for="radio03[91]"><span></span></label></td>
        </tr><tr>
        <td>PRASANNA B <input type="hidden" name="student[92]" value="PRASANNA B"><input type="hidden" name="Reg[92]" value="13KQC31172"><input type="hidden" name="schoolid[92]" value="FT001"><input type="hidden" name="section[92]" value="A"><input type="hidden" name="standard[92]" value="III BCOM"><input type="hidden" name="Subject[92]" value="COM-42"><input type="hidden" name="date1[92]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[92]" value="STUDENT"><input type="hidden" name="Userid[92]" value="admin"><input type="hidden" name="date_user_submitted[92]" value="2016-01-07  03:51:45 pm"></td>



        <td><input id="radio01[92]" name="present[92]" type="radio" value="Present"><label for="radio01[92]"><span></span></label></td>
        <td><input id="radio02[92]" name="present[92]" type="radio" value="Absent"><label for="radio02[92]"><span></span></label></td>
        <td><input id="radio03[92]" name="present[92]" type="radio" value="Leave"><label for="radio03[92]"><span></span></label></td>
        </tr><tr>
        <td>PRASANNAKUMAR K <input type="hidden" name="student[93]" value="PRASANNAKUMAR K"><input type="hidden" name="Reg[93]" value="13KQC31173"><input type="hidden" name="schoolid[93]" value="FT001"><input type="hidden" name="section[93]" value="A"><input type="hidden" name="standard[93]" value="III BCOM"><input type="hidden" name="Subject[93]" value="COM-42"><input type="hidden" name="date1[93]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[93]" value="STUDENT"><input type="hidden" name="Userid[93]" value="admin"><input type="hidden" name="date_user_submitted[93]" value="2016-01-07  03:51:45 pm"></td>



        <td><input id="radio01[93]" name="present[93]" type="radio" value="Present"><label for="radio01[93]"><span></span></label></td>
        <td><input id="radio02[93]" name="present[93]" type="radio" value="Absent"><label for="radio02[93]"><span></span></label></td>
        <td><input id="radio03[93]" name="present[93]" type="radio" value="Leave"><label for="radio03[93]"><span></span></label></td>
        </tr><tr>
        <td>PREETHI C R <input type="hidden" name="student[94]" value="PREETHI C R"><input type="hidden" name="Reg[94]" value="13KQC31175"><input type="hidden" name="schoolid[94]" value="FT001"><input type="hidden" name="section[94]" value="A"><input type="hidden" name="standard[94]" value="III BCOM"><input type="hidden" name="Subject[94]" value="COM-42"><input type="hidden" name="date1[94]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[94]" value="STUDENT"><input type="hidden" name="Userid[94]" value="admin"><input type="hidden" name="date_user_submitted[94]" value="2016-01-07  03:51:45 pm"></td>



        <td><input id="radio01[94]" name="present[94]" type="radio" value="Present"><label for="radio01[94]"><span></span></label></td>
        <td><input id="radio02[94]" name="present[94]" type="radio" value="Absent"><label for="radio02[94]"><span></span></label></td>
        <td><input id="radio03[94]" name="present[94]" type="radio" value="Leave"><label for="radio03[94]"><span></span></label></td>
        </tr><tr>
        <td>RADHA H N <input type="hidden" name="student[95]" value="RADHA H N"><input type="hidden" name="Reg[95]" value="13KQC31179"><input type="hidden" name="schoolid[95]" value="FT001"><input type="hidden" name="section[95]" value="A"><input type="hidden" name="standard[95]" value="III BCOM"><input type="hidden" name="Subject[95]" value="COM-42"><input type="hidden" name="date1[95]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[95]" value="STUDENT"><input type="hidden" name="Userid[95]" value="admin"><input type="hidden" name="date_user_submitted[95]" value="2016-01-07  03:51:45 pm"></td>

JS

$(document).ready(function() {
                $('#mySpan4').submit(function(e) {
                    $.ajax({
                        type: 'post',
                        url: 'http://localhost/demo_TeacherApp/attendence_submit.php',   // you should not use absolute addresses, with http:// . only relative paths
                        data: $('#mySpan4').serialize(),
                        success: function(data) {
                            // log $sql string
                            //<!-- $('#log').html(data); -->
                        }
                    });
                    // prevents the form from really submitting through the normal way
                    e.preventDefault();
                    return false;
                })
            });

PHP

<?php
    $servername = "localhost";
    $username = "root";
    $password = "xxxx";

    $dbname = "xxxxx";
    $conn = new mysqli($servername, $username, $password, $dbname);
    // ** insert data in to data base ** //
    $sql = "INSERT INTO attendance_master (StudentFirstName,AttendanceStatus,StudentRegID,SchoolID,Section,Standard,Subjects,AttendanceDate,UserType,Attendence_taken_by,Attendence_taken_date) VALUES ";
    // **hear the data or is calculated using student as a string the number of student names are passed the same number of data is inserted in to data base ** //
    foreach($_POST['Reg']  as $i=>$student) {

        // ** so the data is inserted in to data base   ** //
        $sql .= sprintf("%s ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')"
        , ($i==0 ? '' : ',')  
        // **  data from Ajax   ** //
        , mysqli_real_escape_string($conn, trim($_POST['student'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['present'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['Reg'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['schoolid'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['section'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['standard'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['Subject'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['date1'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['UserType'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['Userid'][$i]))
        , mysqli_real_escape_string($conn, trim($_POST['date_user_submitted'][$i]))

        );
    }
    // ** on success full function   ** //
    if ($conn->query($sql)) {
        echo $sql;// **can do any thing to recognise if the data is inserted if this gives the out put then the data is shorly inserted in to data base  ** //
    }

?>

我注意到在您的 HTML 中,您的索引从出现次数 92 跳转到出现次数 146。

还有隐藏字段PRASANNA B出现次数为 92,但单选按钮出现次数为 145。

看起来当您创建此表单时,您的索引策略出了问题!这可能可以解释为什么在将第 92 行加载到数据库时一切都开始出错

</tr><tr>
<td>PRASANNA B <input type="hidden" name="student[92]" value="PRASANNA B"><input type="hidden" name="Reg[92]" value="13KQC31172"><input type="hidden" name="schoolid[92]" value="FT001"><input type="hidden" name="section[92]" value="A"><input type="hidden" name="standard[92]" value="III BCOM"><input type="hidden" name="Subject[92]" value="COM-38"><input type="hidden" name="date1[92]" value="16-01-07 00:00:00"><input type="hidden" name="UserType[92]" value="STUDENT"><input type="hidden" name="Userid[92]" value="admin"><input type="hidden" name="date_user_submitted[92]" value="2016-01-07  03:37:22 pm"></td>

<td><input id="radio01[145]" name="present[145]" type="radio" value="Present"><label for="radio01[145]"><span></span></label></td>
<td><input id="radio02[145]" name="present[145]" type="radio" value="Absent"><label for="radio02[145]"><span></span></label></td>
<td><input id="radio03[145]" name="present[145]" type="radio" value="Leave"><label for="radio03[145]"><span></span></label></td>
</tr><tr>

好吧,现在我们已经反驳了这个想法!让我们从头开始吧。

PHP 有几个可能会被超出的参数,即

  • 帖子最大大小这意味着脚本并未接收到所有后数组

  • 最大输入变量这限制了数量<input>脚本将接受的变量

因为你至少有1950我知道的输入变量可能是第一个要检查的变量。所以看看你的php.ini文件这两个参数并让我知道它们是什么。

所以从你的评论来看这好像是max_input_vars = 1000对于这个脚本来说还不够,它至少有1950变量。这肯定可以解释您收到的错误!我相信 1000 是默认值,这就是它以评论形式出现的原因。

所以修改一下php.ini和做max_input_vars = 2500,只是为了安全起见,没有;当然评论。

别忘了更改后重新启动 Apachephp.ini

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 不使用 ajax 将超过 91 行的表单数据插入数据库 的相关文章

  • React Native 中 fontAwesome 图标的圆形轮廓

    我想使用 fontAwesome 图标 使其位于圆圈的中间 我想将它用作一个图标项 我读到我们可以将它与圆形图标一起使用并将其放置在其中 但我无法使其工作 import IconFA from react native vector ico
  • 如何将值从孩子的孩子传递给父母?

    我有一个父组件 有一个子组件 它也有一个子组件 Parent Child One child of parent Child Two child of child 当在子二中定义一个值时 我使用回调将该值传递给子一 但我也想将相同的值传递回
  • 我可以在 Laravel 5.2 中创建一个继承自 User 的新类吗?

    我对 Laravel 还很陌生 使用的是迄今为止的最新版本 5 2 因此我遇到了以下困境 我知道 Laravel 附带了一个User开箱即用的类 但我想开发一个系统 在其中我可以有另外两种类型的用户 称为Researcher and Adm
  • Symfony 5.4 Security Bundle,注册后无法登录

    我在 5 4 版本上构建空的新项目 我使用这些命令来构建项目 composer create project symfony skeleton 5 4 testapp54 cd testapp54 composer require weba
  • 在 foreach 循环中使用函数会缓存结果,还是每次都调用该函数?

    在下面的代码中 function a echo a return array 1 2 3 4 foreach a as t echo t 我们可以看到 a 仅被调用一次 并且返回值似乎被缓存了 但后来我看到这场辩论 参见对该问题的评论 ht
  • React setState回调返回值

    我是 React 新手 我希望实现这种流程 set the state execute a function f an async one which returns a promise set the state again return
  • jPlayer 无法在 Firefox 中播放 mp3

    我正在集成 jplayer 来播放由使用 jQuery 的单击事件触发的精选 mp3 文件 用于实现此目的的代码是 play link click function jquery jplayer 1 jPlayer destroy srcF
  • 如何创建显示/隐藏 Docusaurus 项目中所有详细标签状态的按钮?

    根据讨论here https stackoverflow com questions 58579048 how to add or remove the open attribute from all details tags in a r
  • 如何使用 ReactJS 使表中的列可以以两种方式排序

    我正在 ReactJS 中构建一个简单的应用程序 它通过调用某个 API 来使用 JSON 数组 然后我将数组的结果填充到表中 我现在想让表的列可排序 我理想的情况是同时进行升序和降序排序 一旦我单击标题 当它按升序排序时 它应该按降序排序
  • JavaScript 中的安全数据

    我必须为 Web 测试创建生成器 使用 HTML 和 JavaScript 测试必须离线和在线进行 正确答案和分数评估必须是生成的测试的一部分 最终用户的分数仅发送到服务器 无法在服务器上进行评估 并且服务器对问题一无所知 它只保存最终分数
  • Woocommerce 中的 Ajaxify 标头购物车项目计数

    我正在为 WordPress 创建一个自定义 woocommerce 集成主题 我在顶部有一个 blob 显示购物车中的商品总数 我想使用 Jquery 更新此 blob 无需重新加载页面 我能够通过获取购物车中的当前数量来增加商品数量bl
  • 使用外部按钮选择下一个/上一个单选按钮

    我正在制作一种幻灯片形式 当用户单击下一张图像时 还必须选择单选按钮 我的滑动功能可以正常工作 下一个按钮 也可以工作 但我有点坚持使用 上一个 按钮 不明白为什么它不起作用 fiddle http jsfiddle net V4tdx 这
  • 如何从 Visual Studio Code API 打开浏览器

    我只是在探索一种从用于开发扩展的 Visual Studio Code API 打开默认浏览器的方法 以下是我的代码 var disposable vscode commands registerCommand extension brow
  • 使用 NodeJS 创建 YouTube 播放列表

    我正在尝试使用 NodeJS 服务器创建 YouTube 播放列表 我已按照 Oauth 的 NodeJS 快速入门说明进行操作 如以下链接所示 https github com youtube api samples blob maste
  • 测验程序的 MySql 数据库设计

    我目前正在开发一个项目 主要是创建一个测验应用程序 它将能够进行包含 10 到 20 个问题的多项选择题或简答题的测验 它需要能够根据正确答案检查用户的答案 然后对用户的答案进行评分 稍后 我可能会实现一个后端功能来在线创建测验 但现在我将
  • 阻止 PM2 上不同时运行的请求

    在我的 Express 应用程序中 我在应用程序中定义了 2 个端点 一种用于 is sever up 检查 另一种用于模拟阻塞操作 app use status req res gt res sendStatus 200 app use
  • 数组长度未定义[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我试图按如
  • 如何在控制台中隐藏日志消息的来源?

    当将消息输出到控制台时 还会显示源代码 在 Chrome 开发者工具中 它位于右侧 console log Foo Source Foo test js 1 Output 但是 在某些网站上 会显示消息without正在显示的源 例如Fac
  • 如何使用node.js获取屏幕分辨率

    我需要使用 node js 获取屏幕分辨率 但以下代码不起作用 var w screen width var h screen height 这也行不通 var w window screen width var h window scre
  • 了解客户端文件的对象 URL 以及如何释放内存

    我在用createObjectURL获取本地图像文件的引用 URL 当我完成文件 图像后 我打电话revokeObjectURL释放该内存 一切对我来说都很好 但我只是想确保我释放了我能释放的所有内存 我检查后出现了我的担忧chrome b

随机推荐

  • 如何以编程方式 (C#) 从 POP3 邮件中获取附件?

    是否有任何 C API 可以完成此任务 有什么建议么 我用过 n 软件 http www nsoftware com ipworks 过去取得了成功 不是免费的 但是嘿 如果它不起作用 你就可以责怪别人 换句话说 你得到公司的技术支持 他们
  • 配置Google App Engine应用程序以进行跨域

    您能否建议我们如何配置托管在 Google App Engine 上的 Python 应用程序以接受从浏览器完成的 AJAX 选项 GET POST PUT 和 DELETE 此类调用的具体细节是 XmlHTTPRequest 首先向服务器
  • 如何在 subscribe Angular 4 中返回值

    我是角度观察的新手 我有一个问题 我想在订阅方法中返回一个值 我有 以下方法 getFirebaseData idForm string observable
  • 如何将图像保存到SD卡上按钮单击android [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在 1 XML 中使用 Image
  • Laravel 属于ToMany 具有多列的数据透视表

    目前 我在数据库中有两个表和一个数据透视表 当我需要进行 belongsToMany 查找时 可以将它们连接起来 基本示例是一个数据库表是 teams 另一个数据库表是 members 我可以在团队和成员模型上使用belongsToMany
  • 扩展 WPF 按钮以将数据存储在新属性中

    我想扩展一个 WPF 按钮来存储一些额外的数据 类似于当前的 Tag 属性 附加属性是前进的方向吗 我想要存储的数据将是一个 URL 链接字符串 例如我希望能够执行以下操作
  • Azure 数据工厂复杂 JSON 源(嵌套数组)到 Azure Sql 数据库?

    我有一个 JSON 源文档 将定期上传到 Azure blob 存储 客户希望使用 Azure 数据工厂将此输入写入 Azure Sql 数据库 然而 JSON 很复杂 有许多嵌套数组 到目前为止我还没有找到一种方法来扁平化文档 也许这不受
  • 无 Cookie 属性 web.config

    目前我在 web config 中使用它
  • 如何在 ASP.NET Core 中下载文件?

    在 MVC 中 我们使用以下代码来下载文件 在ASP NET core中 如何实现这一点 HttpResponse response HttpContext Current Response System Net WebClient net
  • 如何将dialogflow与网站集成?

    我使用 Dialogflow chat bot 创建了意图 实体等 现在 我正在尝试将dialogflow与我的网站 html 集成 我按照dialogflow官方网站上记录的说明进行操作 但我仍然很困惑 之后启用网络演示选项 如何编辑附加
  • 具有默认参数的函数的 Elixir 类型规范

    如何为接受一个具有默认值的参数的函数编写类型规范 像下面这样 def foo bar 10 do bar end 会是这样吗 spec foo integer integer 或者会是什么 谢谢 Yes 我想补充一点 如果您的问题是具有默认
  • 这段代码给了我一个错误: Error in if (is.na(s)) { : the condition has length > 1

    请帮助解决我执行以下命令时遇到的错误 stargazer as data frame st sect hh earnings st sect hh earnings sector f Rural c 1 3 4 type html titl
  • Cmake:使用 conan pybind11 包

    我无法理解如何使用 pybind11 conan 包 我可以使用其他一些 但 pybind11 给我带来了困难 我的出发点是这样的 柯南文件 txt requires pybind11 2 7 1 generators cmake 主要 c
  • WebAPI OData $Skip 自定义 IQueryable 双重应用

    我已经实现了一个通过 WebAPI OData 端点公开的自定义 IQueryable 控制器的 Get 的结构相当标准 EnableQuery AllowedQueryOptions AllowedQueryOptions Count A
  • Chrome 扩展:SendMessage 问题

    我正在尝试根据 xhr 调用的输出更改页面的内容 我从 content js 发送一条消息 在后台 js 文件中进行 xrh 调用 然后将输出传递给 content js 这会更改页面的内容 From my content js文件我正在执
  • 冻结wpf数据网格中的列

    我有一些表格数据 其中有很多字段 当我的 WPF 应用程序调整大小时 其中很多字段都会被切断 不过 我希望始终看到前 6 列 因为它们很重要 我怎样才能以网格格式实现这一点 我正在使用 WPFToolkit DataGrid 但可以说服我更
  • 仅在发布配置中启用 ARC lite 的应用程序在第二代 iPod 上崩溃

    我有一个启用了 ARC lite 的应用程序 启用了 ARC 无需将弱引用归零 Apple LLVM 4 0 部署目标设置为 iOS 4 0 它已在 iOS 4 0 至 5 1 1 上进行了测试 当我使用调试构建并通过 Xcode 安装时
  • SQL Server 2014 备份到 2012

    有没有工具可以将 SQL Server 2014 数据库转换为 2012 I tried 生成脚本但是生成的包含数据的脚本太大 SQL Server Management Studio没有执行它 我需要同时拥有架构和数据 To my kno
  • Apple 推送通知服务是否存在隐私问题?

    我一直在广泛阅读 APNS 的内容 并且很好奇是否有人熟悉 Apple 在服务器端日志记录方面的立场 为了允许推送通知 每个设备 例如 iPhone 与服务建立经过认可的加密 IP 连接 并通过此持久连接接收通知 Source https
  • PHP 不使用 ajax 将超过 91 行的表单数据插入数据库

    我试图向数据库插入超过 150 行 但发布请求仅发生 91 行 并且控制台日志显示内部服务器错误 插入91行后出现错误 您的 SQL 语法有错误 检查与您的 MySQL 服务器版本相对应的手册 了解在第 1 行 附近使用的正确语法 我的 H