首页 后端开发 php教程 自选值插入数据库解决办法

自选值插入数据库解决办法

Jun 13, 2016 pm 01:42 PM
class insert post quot

自选值插入数据库
科目:有20个选项,自选5个。
班级:只能选一个。

然后自选的这个5个科目和班级会被写进数据库。就是要实现这么一个简单的功能,我虽然做出来了,但是觉得我做的不太合适。

我现在把科目和班级分成了两个表。相等于有两次insert,两次insert的id是AUTO_INCREMENT。所以理论上他们所对应的id也应该是能对上号的。但是显然这样很不合理。

其次,这样写的话实际上insert科目表的时候是把这20个都写进去了,只不过已选中的就把值写进去了,没选择的写进去的是空。然后在输出的都是也是把这20个全部输出,只不过有的是空所以最后只会看到有5个值输出,但是实际上却输出了20个,只不过另外15个是空罢了。

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php if(isset($_POST['submit'])){
    $subjects_sql = "insert into subjects (`subjects_01`,`subjects_02`,`subjects_03`,`subjects_04`,`subjects_05`,`subjects_06`,`subjects_07`,`subjects_08`,`subjects_09`,`subjects_10`,`subjects_11`,`subjects_12`,`subjects_13`,`subjects_14`,`subjects_15`,`subjects_16`,`subjects_17`,`subjects_18`,`subjects_19`,`subjects_20`) values('$_POST[subjects_01]','$_POST[subjects_02]','$_POST[subjects_03]','$_POST[subjects_04]','$_POST[subjects_05]','$_POST[subjects_06]','$_POST[subjects_07]','$_POST[subjects_08]','$_POST[subjects_09]','$_POST[subjects_10]','$_POST[subjects_11]','$_POST[subjects_12]','$_POST[subjects_13]','$_POST[subjects_14]','$_POST[subjects_15]','$_POST[subjects_16]','$_POST[subjects_17]','$_POST[subjects_18]','$_POST[subjects_19]','$_POST[subjects_20]')";
    $class_sql = "insert into class (`class_01`,`class_02`,`class_03`,`class_04`,`class_05`,`class_06`,`class_07`,`class_08`,`class_09`,`class_10`,`class_11`,`class_12`,`class_13`,`class_14`,`class_15`,`class_16`) values('$_POST[class_01]','$_POST[class_02]','$_POST[class_03]','$_POST[class_04]','$_POST[class_05]','$_POST[class_06]','$_POST[class_07]','$_POST[class_08]','$_POST[class_09]','$_POST[class_10]','$_POST[class_11]','$_POST[class_12]','$_POST[class_13]','$_POST[class_14]','$_POST[class_15]','$_POST[class_16]')";
    if(mysql_query($subjects_sql) and mysql_query($class_sql)){
          echo "<script>alert('提交成功');location.href='index.php';";
      }else{
          echo "<script>alert('提交失败');location.href='index.php';</script>";
      }
}
?>

登录后复制


------解决方案--------------------
不太明白你的需求 要是我 我会这样子做 建一个科目表
选择的话是保存科目表的id 以字符串的形式 如 1,2,3 选择的班级也保存同一个表
显示选择科目时 select * from 科目表 where id in(1,2,3)

------解决方案--------------------
三个表: 
科目表:
id
name

班级:
id
name

选修表:
id 
科目ID (存科目id eg:1,2,3)
班级ID (存班级id)

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Python中的class类和method方法的使用方法 Python中的class类和method方法的使用方法 Apr 21, 2023 pm 02:28 PM

类和方法的概念和实例类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。方法:类中定义的函数。类的构造方法__init__():类有一个名为init()的特殊方法(构造方法),该方法在类实例化时会自动调用。实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用self修饰的变量。实例化:创建一个类的实例,类的具体对象。继承:即一个派生类(derivedclass)继承基类(baseclass)的

浅析php中POST方法带参数跳转页面 浅析php中POST方法带参数跳转页面 Mar 23, 2023 am 09:15 AM

对于PHP开发者来说,使用POST带参数跳转页面是一项基本技能。POST是HTTP中一种发送数据的方法,它可以通过HTTP请求向服务器提交数据,跳转页面则是在服务器端进行页面的处理和跳转。在实际开发中,我们经常需要使用POST带参数来跳转页面,以达到一定的功能目的。

python中class是什么意思 python中class是什么意思 May 21, 2019 pm 05:10 PM

class是python中的一个关键字,用来定义一个类,定义类的方法:class后面加一个空格然后加类名;类名规则:首字母大写,如果多个单词用驼峰命名法,如【class Dog()】。

php怎么判断post有没有提交 php怎么判断post有没有提交 Mar 21, 2023 pm 07:12 PM

PHP是一种广泛使用的服务器端脚本语言,它可以用于创建交互式和动态的Web应用程序。在开发PHP应用时,我们通常需要通过表单将用户输入数据提交给服务器端处理。然而,有时候我们需要在PHP中判断是否有表单数据被提交,这篇文章将介绍如何进行这样的判断。

python requests post如何使用 python requests post如何使用 Apr 29, 2023 pm 04:52 PM

python模拟浏览器发送post请求importrequests格式request.postrequest.post(url,data,json,kwargs)#post请求格式request.get(url,params,kwargs)#对比get请求发送post请求传参分为表单(x-www-form-urlencoded)json(application/json)data参数支持字典格式和字符串格式,字典格式用json.dumps()方法把data转换为合法的json格式字符串次方法需要

使用jQuery替换元素的class名称 使用jQuery替换元素的class名称 Feb 24, 2024 pm 11:03 PM

jQuery是一种经典的JavaScript库,被广泛应用于网页开发中,它简化了在网页上处理事件、操作DOM元素和执行动画等操作。在使用jQuery时,经常会遇到需要替换元素的class名的情况,本文将介绍一些实用的方法,以及具体的代码示例。1.使用removeClass()和addClass()方法jQuery提供了removeClass()方法用于删除

java如何发起http请求调用post与get接口 java如何发起http请求调用post与get接口 May 16, 2023 pm 07:53 PM

一、java调用post接口1、使用URLConnection或者HttpURLConnectionjava自带的,无需下载其他jar包URLConnection方式调用,如果接口响应码被服务端修改则无法接收到返回报文,只能当响应码正确时才能接收到返回publicstaticStringsendPost(Stringurl,Stringparam){OutputStreamWriterout=null;BufferedReaderin=null;StringBuilderresult=newSt

NGINX反向代理对HTML页面的POST请求返回405怎么解决 NGINX反向代理对HTML页面的POST请求返回405怎么解决 May 22, 2023 pm 07:49 PM

实现如下:server{listen80;listen443ssl;server_namenirvana.test-a.gogen;ssl_certificate/etc/nginx/ssl/nirvana.test-a.gogen.crt;ssl_certificate_key/etc/nginx/ssl/nirvana.test-a.gogen.key;proxy_connect_timeout600;proxy_read_timeout600;proxy_send_timeout600;c

See all articles