이 기사의 내용은 PHP 기본 7: 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 기본 7: PHP 작업 데이터베이스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!