10月30日上午MySQL数据库的修改(从网页上实现对数据库的更改)
从网页页面上对数据库进行更改,连接着之前做的增加、删除、查询。
1.先做一个修改页面
<body>
<!--这个页面需要让用户看到一些数据,所以不是一个纯php页面,页面效果和增加页面的效果非常相似,直接把增加页面的代码复制过来-->
<?php //先嵌入php代码查询数据库
$code = $_GET["c"];//取到点击修改时传过来的c的值
$db = new MySQLi("localhost","root","123","text1");//直接把下面的造连接对象拿到上面,一个页面造一个就可以。
//写sql语句,下面有$sql了,这里就写$info。
$sinfo = "select * from info where code='{$code}'";//根据主键值查的,只能查到一条数据。
$rinfo = $db->query($sinfo);
$ainfo = $rinfo->fetch_row();//取到数组 ?>
<form action="xiugaichuli.php" method="post"><!--表单提交到xiugaichuli.php页面。-->
<div><input type="hidden" name="code" value="<?php echo $ainfo[0]; ?>" /></div><!--代号的默认的value的值显示为要更改的那条数据的代号的值,要输出才可以,不输出就为空。主键一般是不允许修改的,可以给它加上属性readonly="readonly"。不能用disabled=disabled,因为设定这个属性后表单无法提交。如果主键值是自增长列或者其它没有意义的列,可以直接隐藏,直接type=hidden,虽然隐藏掉了,但是还可以提交-->
<div>姓名:<input type="text" name="name" value="<?php echo $ainfo[1]; ?>" /></div><!--原理同代号-->
<!--性别和民族无法直接给定值,需要根据值来选定哪一个--> <!--性别是布尔型数据,要么0要么1.php里面的代码的作用是取出$info里面的代码,判断性别是true还是flase,是true的话就输出属性checked="checked",是flase就输出空-->
<div>性别:
<input type="radio" name="sex" value="1" <?php echo $ainfo[2]?"checked = 'checked'":"" ?> />男
<input type="radio" name="sex" value="0" <?php echo $ainfo[2]?"":"checked = 'checked'" ?> />女
</div> <!--民族是下拉列表,下拉列表选中是用属性selected=selected,下拉选项是用foreach遍历出来的,在输出之前可以判断要修改的人的代号是不是等于要输出的这一项的代号-->
<div>民族:
<select name="nation">
<?php
//造连接对象 $sql = "select * from nation";
$result = $db->query($sql);
$attr = $result->fetch_all(); foreach($attr as $v)//判断要修改的人的代号是不是等于要输出的这一项的代号
{
if($v[0]==$ainfo[3])
{
echo "<option selected='selected' value='$v[0]'>{$v[1]}</option>";//相等就输出一个selected='selected'的选项
}
else
{
echo "<option value='$v[0]'>{$v[1]}</option>";//不相等就输出一个正常的选项
}
}
?>
</select>
</div>
<div>生日:<input type="text" name="birthday" value="<?php echo $ainfo[4]; ?>" /></div><!--原理同代号--> <div><input type="submit" value="修改" /></div> </form>
</body>
2.xiugaichuli.php页面
<?php
$code = $_POST["code"];//取出提交的5个值
$name = $_POST["name"];
$sex = $_POST["sex"];
$nation = $_POST["nation"];
$birthday = $_POST["birthday"];
//造连接对象
$db = new MySQLi("localhost","root","123","text1"); $sql = "update info set name='{$name}',sex={$sex},nation='{$nation}',birthday='{$birthday}' where code='{$code}'";//修改的时候无论修改了几个,全部都要修改成现在输入的。 $db->query($sql); header("location:main.php");
10月30日上午MySQL数据库的修改(从网页上实现对数据库的更改)的更多相关文章
- 10月21日上午MySQL数据库学习内容复习
1.创建数据库create database 数据库名称删除数据库drop database 数据库名称 2.创建表create table 表名(列名 类型(长度) 自增长 主键 非空,)自增长:a ...
- 10月16日上午MySQL数据库基础操作(创建、删除)
以前用的是鼠标在界面上手动创建,这样创建会比较麻烦,而且还会经常出问题.在其它电脑上要用的话还需要重复操作.所以要使用程序代码操作,能通过代码的就不用手动操作. 在数据库界面选择要用的数据库,双击打开 ...
- 10月16日上午MySQL数据库作业设计表解析
作业设计表:多张表存储学生成绩及各种信息 需要从表里面体现: 关于学生的:代号 姓名 性别 年龄 班级 关于课程的:代号 名称 关于老师的:代号 姓名 关于成绩的:例如:闫超--网页--90 要能查看 ...
- 2016年10月30日 星期日 --出埃及记 Exodus 19:15
2016年10月30日 星期日 --出埃及记 Exodus 19:15 Then he said to the people, "Prepare yourselves for the thi ...
- 10 月 30 日新款 Mac mini 有望与新款 iPad Pro 一起发布
苹果最新款的 Mac mini 是在 2014 年 10 月推出的版本,到现在已经过了 4 年.分析师郭明錤和彭博社的 Mark Gurman 都表示苹果会在今年晚些时候发布新款 Mac mini. ...
- 10 月 30 日 北京 LiveVideoStack 阿里云视频云专场限量赠票 100 张
10 月 30 日 | 北京 LiveVideoStack 将携手阿里云共邀 4 位技术大咖,一同探讨从上云到创新,视频云的新技术与新场景.阿里云视频云依托阿里云服务数百万开发者的卓越服务能力与实践, ...
- 10月28日下午MySQL数据库的增加、删除、查询(匹配数据库登录和可以增、删、查的显示数据库内容的页面))
一.匹配数据库登录 步骤: 1.做一个普通的登录界面,注意提交方式为post. <!--登录界面--> <form action="chuli.php" meth ...
- 2014年10月30日-----SQL的基础知识
数据库的概念 结构化查询语言:structured query language 简称:SQL 数据库管理系统:database management system 简称:DBMS 数据库管理员:da ...
- 10月16日下午MySQL数据库CRUD操作(增加、删除、修改、查询)
1.MySQL注释语法--,# 2.2.后缀是.sql的文件是数据库查询文件. 3.保存查询. 关闭查询时会弹出提示是否保存,保存的是这段文字,不是表格(只要是执行成功了表格已经建立了).保存以后下次 ...
随机推荐
- 如何区分/dev/input/event
方法是把每一个/dev/input/event打开.通过ioctl函数来读取设备name,每一个设备name是固定的,可以根据name区分event.我这是查找触摸事件为例:代码如下: static ...
- linux mail利用外部邮箱地址发邮件
mail命令发送邮件需要sendmail或postfix服务 三种常用格式发信 mail -s "标题" xxx@xxx.xxx #第一种方法,你可以把当前shell当成编辑器来用 ...
- android 学习中的一些问题记录 主要是概念问题
一些问题记录 应用程序 res 目录常见的目录有哪些,分别放置什么类型的资源? animator/ 和anim/ 放的都是定义动画的XML文件,两个地方的动画类型不同. color/ XML文件:定义 ...
- js实现九九乘法表
<script type="text/javascript"> var sum=0; var wite; for (var i = 1; i < 10; i++) ...
- app端微信支付(二) - 生成预付单
前一篇文章的时序图中说了,app端调用微信支付必须先由后台调用微信后台生成预付单,再构建参数给手机端,而数据的构建要以xml形式,那么看看代码具体实现吧,代码已经精简过了,自己的业务已经除去,精简的 ...
- spring的@Transactional
在service类前加上@Transactional,声明这个service所有方法需要事务管理.每一个业务方法开始时都会打开一个事务.Spring默认情况下会对运行期例外(RunTimeExcept ...
- Oracle体系中各个组件的含义
首先看张图 下面来解释下这个图. 对于一个数据库系统来说,假设这个系统没有运行,我们所能看到的和这个数据库相关的无非就是几个基于操作系统的物理文件,这是从静态的角度来看,如果从动态的角度来看呢,也就是 ...
- 使用Memberane Moniter监控HTTP & SOAP requests
Memberane Moniter 使用方法见左侧Documentation 此工具可以监控到每一次发生在指定端口的http请求或者soap请求,如图所示. 但是个人认为仍然有几个问题: 1.不能真正 ...
- 【原】Learning Spark (Python版) 学习笔记(二)----键值对、数据读取与保存、共享特性
本来应该上周更新的,结果碰上五一,懒癌发作,就推迟了 = =.以后还是要按时完成任务.废话不多说,第四章-第六章主要讲了三个内容:键值对.数据读取与保存与Spark的两个共享特性(累加器和广播变量). ...
- NOSQL数据模型和CAP原理
NOSQL数据模型和CAP原理 http://blog.sina.com.cn/s/blog_7800d9210100t33v.html 我本来一直觉得NoSQL其实很容易理解的,我本身也已经对NoS ...