10.30 开课一个月零二十六天 (PHP数据库修改)
1.先做一个修改页面

<body>
<!--这个页面需要让用户看到一些数据,所以不是一个纯php页面,页面效果和增加页面的效果非常相似,直接把增加页面的代码复制过来-->

<?php //先嵌入php代码查询数据库
$code = $_GET["c"];//取到点击修改时传过来的c的值
$db = new MySQLi("localhost","root","666","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","666","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 开课一个月零二十六天 (PHP数据库修改)的更多相关文章
- 10.23 开课一个月零十九天 (PHP数组)
<?php $s = "he8llo5wor6ld"; $s = preg_replace("/\d/","#",$s); //按照正 ...
- 10.14 (上午)开课一个月零十天 (PHP环境搭建)
一.修改APACHE的监听端口 2 1.在界面中选apache,弹出隐藏菜单选项,打开配置文件httpd.conf; 2.找到Listen 80 和 ServerName localhost:80; ...
- 10.21 (上午) 开课一个月零十七天 (PHP基础语法)
<?php $a = 6; echo $a; //注释语法 /* 多行注释 */ //输出语法 echo "hello"; echo "world",&q ...
- 大数据笔记(二十)——NoSQL数据库之MemCached
一.为什么要把数据存入内存? 1.原因:快2.常见的内存数据库 (*)MemCached:看成Redis的前身,严格来说Memcached的不能叫数据库,原因:不支持持久化 (*)Redis:内存数据 ...
- 二十九:数据库之SQLAlchemy连接数据库
手写SQL复用性不高,SQL越复杂越容易出bug,而且容易引起SQL注入,所以现在Ibanez使用orm框架将数据库映射为数据模型,这是使用SQLAlchemy 准备工作,安装SQLAlchemy和P ...
- Linux学习之CentOS(二十)--CentOS6.4下修改MySQL编码方法
但是当我们在试图对数据库中的数据进行备份或者将sql文件导入到我们的数据库时可能就会碰到编码的问题,在windows下安装mysql时我们可以在安装的时候就选择好整个数据库的编码方式(通常设置成utf ...
- 第三百二十六天 how can I 坚持
今天元宵节啊,晚上去蓝色港湾看了看灯光节,快冻死了,人倒是挺多. 其他没啥了. 还有晚上吃了几个元宵. 好像冻感冒了,有点头晕. 睡觉.
- 第二百二十六天 how can I 坚持
今天弟弟生日,只是简单的说了句生日快乐,幸亏看了下日历,要不又忘了. 在家待了一天. 明天还想去爬山,八大处太远了,该去哪呢. 不想在家待着. 日复一日,啊,年复一年啊.想想好可怕,人生,太快.该如何 ...
- 第六百二十六天 how cna I 坚持
年代数竟然算错了,哎,好笨啊.2000年得有100代人了,好傻啊. 1到100,哎. 早上好像想通了呢,哎.又不打算去拉萨了. 到底..哎.睡觉.
随机推荐
- leveldb源码分析--Key结构
[注]本文参考了sparkliang的专栏的Leveldb源码分析--3并进行了一定的重组和排版 经过上一篇文章的分析我们队leveldb的插入流程有了一定的认识,而该文设计最多的又是Batch的概念 ...
- C/C++内存分区
C/C++编译的程序占用的内存分区 1.栈区(stack)— 由编译器自动分配释放 ,存放函数的参数名,局部变量的名等.其操作方式类似于数据结构中的栈. 2.堆区(heap)— 由程序员分配释放, 若 ...
- 泛微e-cology和Oracle无法启动的解决方案
最近公司的泛微OA无法访问,Oracle数据库也无法正常启动,尝试了好多方法,终于解决了,先说说基本情况,希望能给碰到同样问题的朋友带来一点帮助. 服务器操作系统:Window s Server 20 ...
- IIS6与IIS7中的w3wp工作进程
在IIS6中,每一个网站都有对应的应用程序池,在应用程序池有运行着网站的Application,在默认情况下,所有的网站的应用程序都会分配到默认的应用程序池当中, 当然,我们可以新建一个应用程序池 ...
- Python Frame
http://farmdev.com/src/secrets/framehack/index.html sys._getframe([depth]) Return a frame object fro ...
- sql server 使用链接服务器连接Oracle,openquery查询数据
对接问题描述:不知道正式库oracle数据库账户密码,对方愿意在对方的客户端上输入账号和密码,但不告诉我们 解决方案:使用一台sql server作为中间服务器,可以通过转存数据到sql serv ...
- jQuery 和 YUI (Yahoo User Interface) 各自的优缺点有哪些?具体的使用场景是怎样的?
张经纬,前端工程师 知乎用户.赵勇杰.知乎用户 等人赞同 其实jQuery和YUI的侧重点是不一样的. jQuery专注于DOM的操作,他通过继承的方式给传入的对象增加了新的方法,从而使我们可以通过链 ...
- BZOJ4259:残缺的字符串(FFT)
Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时,这两个串已经老化了,每个串都有不同 ...
- 1491. [NOI2007]社交网络【最短路计数】
Description 在社交网络(socialnetwork)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题. 在一个社交圈子里有n个人,人与人之间有不同程度的关系.我们将这 ...
- Kubernetes 初探
一.容器: 1. 容器是运行一个或一组进程的方法,使得这些进程和主机上其他进程相隔离 2. 容器类似于虚拟机,但不同于虚拟机 容器 ...