php - AJAX php代码插入NULL而不是向数据库输入值
问题描述
我正在尝试将 2 个值可互换地插入到我的数据库中 - 我的 Select 元素name=toctquantsel
和我的 Input 元素name=toctquant
。当我的 Select 元素被隐藏时,我的 Input 的值将被插入到数据库中,反之亦然。我能够单独使用我的 php 代码来实现,但是在使用 AJAX 执行此操作时,我收到错误消息“ Uncaught mysqli_sql_exception: Column 'toctquant' cannot be null
”。同样,我在不使用 AJAX 时没有收到此错误。我该如何解决这个问题,以便我可以将我的值插入到数据库中,而不必将我的数据库列更改为 NULL?
解决方案
当您正常提交表单时,表单字段将放入$_POST['toctquantsel
] and
$_POST['toctquant']`。在您的 AJAX 调用中,您有
data: {selectValueBox: selectValue, inputValueBox: inputValue},
当您使用 AJAX 时,发送给 PHP 的参数名称来自data:
对象,而不是表单字段的名称。所以这些字段将在$_POST['selectValueBox']
和中$_POST['inputValueBox']
。要使您的 AJAX 代码与服务器上的相同 PHP 代码一起工作,您需要将其更改为:
data: {toctquantsel: selectValue, toctquant: inputValue},
推荐阅读
- angular - 如何从枚举类型中分配值
- javascript - Onmousedown javascript未触发
- algorithm - 我应该使用什么算法来解决“最短路径问题”?
- c# - 异常构造函数是否应该抛出异常?
- php - 如果模型中每个元素的条件,如何为 API 创建 xml 而不是手动创建 xml?
- c++ - 结构内联初始化的向量。支撑初始化列表
- ios - 当我打开不同的应用程序时,如何自动启动 MyApp?
- python - 尝试使用 Boto3 从 S3 下载特定类型的文件 - TypeError: expected string or bytes-like object
- android - 在协程中等待侦听器内的数据
- javascript - 如果 Observable 错误触发,完整事件不会触发吗?