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'":"" ?> />男
&nbsp;<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数据库修改)的更多相关文章

  1. 10.23 开课一个月零十九天 (PHP数组)

    <?php $s = "he8llo5wor6ld"; $s = preg_replace("/\d/","#",$s); //按照正 ...

  2. 10.14 (上午)开课一个月零十天 (PHP环境搭建)

    一.修改APACHE的监听端口 2 1.在界面中选apache,弹出隐藏菜单选项,打开配置文件httpd.conf; 2.找到Listen 80 和 ServerName localhost:80; ...

  3. 10.21 (上午) 开课一个月零十七天 (PHP基础语法)

    <?php $a = 6; echo $a; //注释语法 /* 多行注释 */ //输出语法 echo "hello"; echo "world",&q ...

  4. 大数据笔记(二十)——NoSQL数据库之MemCached

    一.为什么要把数据存入内存? 1.原因:快2.常见的内存数据库 (*)MemCached:看成Redis的前身,严格来说Memcached的不能叫数据库,原因:不支持持久化 (*)Redis:内存数据 ...

  5. 二十九:数据库之SQLAlchemy连接数据库

    手写SQL复用性不高,SQL越复杂越容易出bug,而且容易引起SQL注入,所以现在Ibanez使用orm框架将数据库映射为数据模型,这是使用SQLAlchemy 准备工作,安装SQLAlchemy和P ...

  6. Linux学习之CentOS(二十)--CentOS6.4下修改MySQL编码方法

    但是当我们在试图对数据库中的数据进行备份或者将sql文件导入到我们的数据库时可能就会碰到编码的问题,在windows下安装mysql时我们可以在安装的时候就选择好整个数据库的编码方式(通常设置成utf ...

  7. 第三百二十六天 how can I 坚持

    今天元宵节啊,晚上去蓝色港湾看了看灯光节,快冻死了,人倒是挺多. 其他没啥了. 还有晚上吃了几个元宵. 好像冻感冒了,有点头晕. 睡觉.

  8. 第二百二十六天 how can I 坚持

    今天弟弟生日,只是简单的说了句生日快乐,幸亏看了下日历,要不又忘了. 在家待了一天. 明天还想去爬山,八大处太远了,该去哪呢. 不想在家待着. 日复一日,啊,年复一年啊.想想好可怕,人生,太快.该如何 ...

  9. 第六百二十六天 how cna I 坚持

    年代数竟然算错了,哎,好笨啊.2000年得有100代人了,好傻啊. 1到100,哎. 早上好像想通了呢,哎.又不打算去拉萨了. 到底..哎.睡觉.

随机推荐

  1. linux/OSX中“DD”命令制作ISO镜像操作系统安装U盘

    linux或者OS X系统中,使用“dd”命令可以直接在终端命令行模式下,制作ISO镜像的系统安装盘. 一.linux系统以centOS7为例. sudo dd if=镜像路径 of=USB设备路径 ...

  2. ext button 属性

    var buttonName = new Ext.Button({               id:"buttonName",               text:" ...

  3. 教你使用Paw解析http请求

    教你使用Paw解析http请求 软件下载地址: 链接: http://pan.baidu.com/s/1gdzmjq7 密码: 3mpb 这款应用的图片像极了百度,哈哈. 支持的请求方式: 完整的显示 ...

  4. sonarQube常见问题及分析

    阻断1.Close this"FileInputStream" in a "finally" clause.在finally中关闭FileInputStream ...

  5. word 排版用到双直线、波浪线、虚线 、直线、隔行线等技巧

    在办公或毕业设计时,有时排版需要插入双直线.波浪线.虚线 .直线.隔行线等而烦恼, 今天小白与大家分享技巧如下: 感谢您的阅读,如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮.本文欢迎各位转载,但 ...

  6. Hadoop HBase概念学习系列之优秀行键设计(十六)

    我们通过行键访问HBase.尽管使用扫描过滤器可以一次性指明大量的键,但是HBase仅仅能够根据行键识别出一行. 优秀的行键设计可以保证良好的HBase性能. 1.行键存在于HBase中的每一个单元格 ...

  7. 超强IIS站点工具一键设置PHP,支持多个PHP同时运行

    PHPWAMP8.8.8.8IN支持三大主流Web服务器:iis.apache.nginx NGINX站点管理.IIS站点管理.Apache站点管理均支持php多版本同时运行,无限自定义mysql.p ...

  8. 用 Visual Studio Code 调试运行在 homestead 环境中的 laravel 程序

    由于之前做 .net 开发比较熟悉 visualstudio,所以自 visualstudio code 发布后就一直在不同场合使用 vscode ,比如前端.node等等.最近在做 laravel ...

  9. Hibernate学习笔记一之注解

    1.@Entiy  实体类注解 2.@Table  映射表 (name=“”)表名 3.@Coulmn @Column( name="columnName";            ...

  10. 【原创】Apache ab出现 apr_pollset_poll: The timeout specified has expired 错误

    使用如下参数可避免 -s timeout Seconds to max. wait for each response Default is 30 seconds -k Use HTTP KeepAl ...