php基础七之php操作数据库
这篇文章介绍的内容是关于php基础七之php操作数据库,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
<!-- 第十三章php操作数据库 --> <?php // $sql = "insert into money(username,age) values('bao3', 25)"; // $con = mysqli_connect("localhost","root","root"); // if (!$con) { // die('Could not connect:'.mysql_error()); // } // echo '连接成功!'; // mysqli_select_db($con, 'mytest'); // $result = mysqli_query($con, $sql); // var_dump($result); // mysqli_close($con) ?> <form action="" method="post"> 用户名:<input type="text" name="username" /><br /> 密码:<input type="password" name="password" /><br /> 重复密码:<input type="password" name="repassword" /><br /> <input type="submit" value="提交" /> </form> <?php if (trim(@$_POST['password']) != trim(@$_POST['repassword'])) { exit('两次密码不一致,请返回上一页'); } @$username = trim($_POST['username']); @$password = md5(trim($_POST['password'])); @$time = date('ymd',time()); $ip = $_SERVER['REMOTE_ADDR']; $conn = mysqli_connect('localhost', 'root', 'root'); if (mysqli_error($conn)) { echo mysqli_error($conn); exit; } mysqli_select_db($conn, 'book'); mysqli_set_charset($conn, 'utf-8'); mysqli_set_charset($conn, 'gb2312'); $sql = "insert into user(username,password,createtime,createip) values('".$username."','".$password."','".$time."','".$ip."')"; $result = mysqli_query($conn, $sql); if ($result) { echo '成功'; }else { echo '失败'; } echo '当前用户插入的ID为'.mysqli_insert_id($conn); mysqli_close($conn); ?> <!-- 做一个列表显示 --> <?php $conn = mysqli_connect('localhost', 'root', 'root', 'book'); if (mysqli_errno($conn)) { mysqli_error($conn); exit; } mysqli_set_charset($conn, 'utf8'); mysqli_set_charset($conn, 'gb2312'); $sql = "select id,username,createtime,createip from user order by id desc"; $result = mysqli_query($conn, $sql); if ($result && mysqli_num_rows($result)) { echo '<table width="800" border="1">'; while ($row = mysqli_fetch_assoc($result)){ echo '<tr>'; echo '<td>'.$row['username'].'</td>'; echo '<td>'.@date('Y-m-d H:i:s', $row['createtime']).'</td>'; echo '<td>'.long2ip($row['createip']).'</td>'; echo '<td><a href="edit.php?id='.$row['id'].'">编辑用户</a></td>'; echo '<td><a href="delete.php?id='.$row['id'].'">删除用户</a><td/>'; echo '</tr>'; } echo '</table>'; }else { echo '没有数据'; } mysqli_close($conn); ?> <!-- 把用户做个分页 --> <?php // 做一个配置文件config.php //数据库服务器 define('DB_HOST', 'localhost'); //数据库用户名 define('DB_USER', 'root'); //数据库密码 define('DB_PWD', 'secret'); //库名 define('DB_NAME', 'book'); //字符集 define('DB_CHARSET', 'utf8'); ?> <?php // connection.php include 'config.php'; $conn = mysqli_connect('DB_HOST', 'DB_USER', 'DB_PWD', 'DB_NAME'); if (mysqli_error($conn)) { mysqli_error($conn); exit; } mysqli_set_charset($conn, DB_CHARSET); ?> <?php include 'connection.php'; $count_sql = 'select count(id) as c from user'; $result = mysqli_query($conn, $count_sql); $data = mysqli_fetch_assoc($result); $count = $data['c']; $page = isset($_GET['page']) ? (int)$_GET['page'] : 1; // if (isset($_GET['page'])) { // $page = (int) $_GET['page']; // }else { // $page = 1; // } $num = 5; $total = ceil($count / $num); if ($page <= 1) { $page = 1; } if ($page >= $total) { $page = $total; } $offset = ($page - 1) * $num; $sql = "select id,username,createtime,createip from user order by id desc id desc limit $offset,$num"; $result = mysqli_query($conn, $sql); if ($result && mysqli_num_fields($result)) { echo '<table width="800" border="1">' ; while ($row = mysqli_fetch_assoc($result)){ echo '<tr>'; echo '<td>'.$row['username'].'</td>'; echo '<td>'.date('Y-m-d H:i:s',$row['createtime']).'</td>'; echo '<td>'.long2ip($row['createip']).'</td>'; echo '<td><a herf="edit.php?id='.$row['id'].'">编辑用户</a></td>'; echo '<td><a herf="delete.php?id='.$row['id'].'"></a></td>'; echo '</tr>'; } echo '<tr> <td colspan="5"> <a herf="page.php?page=1">首页</a> <a href="page.php?page='.($page - 1).'">上一页</a> <a herf="page.php?page='.($page + 1).'">下一页</a> <a herf="page.php?page='.$total.'">页尾</a> 当前是第'.$page.'页 共'.$total.'页 </td> </tr>'; echo '</table>'; }else { echo '没有数据'; } mysqli_close($conn); ?> <!-- 批量和指定删除用户 --> <?php include 'connection.php'; if (is_array($_POST['id'])) { $id = join(',', $_POST['id']); }elseif (is_numeric($_GET['id'])){ $id = (int) $_GET['id']; }else { echo '数据不合法'; exit; } $sql = "delete from user where id in($id)"; $result = mysqli_query($conn, $sql); if ($result) { echo '删除成功'; }else { echo '删除失败'; } ?> <!-- 修改用户信息 --> <?php //edit.php include 'connection.php'; if (is_numeric($_GET['id'])) { $id = (int) $_GET['id']; } $sql = "select id,username from user where id=".$id; $result = mysqli_query($conn, $sql); $data = mysqli_fetch_assoc($result); ?> <?php //update.php include 'connection.php'; $id = (int) $_POST['id']; if (trim($_POST['password'])) { $password = md5(trim($_POST['password'])); $sql = "update user set password='".$password."' where id = $id"; }else { echo '修改成功'; } $result = mysqli_query($conn, $sql); if ($result) { echo '修改成功'; } ?> <form action="update.php" method="post"> 用户名:<input type="text" name="username" value="<?php echo $data['username'];?>" readonly/><br /> 密码:<input type="password" name="password" /><br /> <input type="hidden" value="<?php echo $data['id'];?>" name="id" /> <input type="submit" value="提交" /> </form> <!-- 数据显示乱码终极解决办法 --> <?php // 解决乱码问题的核心思想 ,就是:一定要多个不同的文件系统中一定要统一编码。 // 9个要点分别是: // 1.html编码与MySQL编码一致 // 2.PHP编码与MySQL编码一致 // 3.若有header头发送字符集,请与数据库一样 // 4.<meta http-equiv="Content-Type"content="text/html;charset=utf-8"> // 要和页面文字编码一致 // 5.数据库建库的字符集要统一 // 6.表的字符集要统一 // 7.列的字符集要统一(表设了列就默认写表的) // 8.连接,校验的字符集要统一 // 9.结果集的字符集要统一 ?>
相关推荐:
以上是php基础七之php操作数据库的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

MySQL是一个开源的关系型数据库管理系统。1)创建数据库和表:使用CREATEDATABASE和CREATETABLE命令。2)基本操作:INSERT、UPDATE、DELETE和SELECT。3)高级操作:JOIN、子查询和事务处理。4)调试技巧:检查语法、数据类型和权限。5)优化建议:使用索引、避免SELECT*和使用事务。
