我的网站上有群聊功能,人们可以通过选择HTML复选框添加朋友,因此可以在一个点添加多个.但是,当我的PHP脚本将数据插入MySQL数据库时,只会添加最后一个值.例如,如果用户选择了3个朋友,PHP会用逗号分隔他们的ID(因为它将...
我的网站上有群聊功能,人们可以通过选择HTML复选框添加朋友,因此可以在一个点添加多个.但是,当我的PHP脚本将数据插入MySQL数据库时,只会添加最后一个值.例如,如果用户选择了3个朋友,PHP会用逗号分隔他们的ID(因为它将作为数组存储在数据库中);所以它会显示为1,2,3.但是,当我插入MySQL时,只有“,3”正在提交.
用于从HTML复制数据的PHP代码复选框:
$invite = $_POST['invite'];
if(empty($invite))
{
//echo("You didn't select any friends.");
}
else
{
$N = count($invite);
//echo("You selected $N friends(s): ");
for($i=0; $i < $N; $i++)
{
$userinput = ("," . $invite[$i]);
}
}
MySQL查询:
$sql = "INSERT INTO group_chat (title, created_date, last_modified, created_by, user_array) VALUES ('$title', now(), now(), '$logOptions_id', '$logOptions_id$userinput')";
$logOptions_id包含当前用户的ID.
我之前已经回显了$userinput变量,它看起来应该是:,1,2,3(开头时的逗号与添加到MySQL时的当前用户ID分开.
解决方法:
您将使用此行覆盖循环中的值
$userinput = ("," . $invite[$i]);
把它改成这个
$userinput .= ("," . $invite[$i]);
请记住在附加变量$userinput之前将其初始化以避免未定义的变量警告.
沃梦达教程
本文标题为:PHP HTML复选框仅提交MySQL问题的最后一个值
基础教程推荐
猜你喜欢
- 【Oracle】【10】去除数据中的html标签 2023-10-26
- 解决swiper8轮播插件无法修改左右切换按钮样式问题 2023-08-29
- 完美实现CSS垂直居中的11种方法 2022-11-13
- Ajax实现文件下载 2022-12-15
- 前端(HTML)+后端(Django)+数据库(MySQL):用户注册及登录演示 2023-10-26
- 微信小程序宿主环境基础介绍 2022-10-22
- 使用Nginx 反向代理来避免 ajax 跨域请求的方法 2023-01-20
- 兼容各个浏览器的技巧 2022-10-16
- Ajax请求中async:false/true的作用分析 2022-12-15
- new Vue() vs createApp() 2023-10-08