本文最后更新于:2021年11月9日 下午
PHP与数据库
一、环境准备 (如果有环境请直接跳过,阅读下面的操作)
在Linux中进行PHP和数据库的环境搭建(适用于CentOS-7.0版本或以上),以下操作全部是在root 用户中操作,普通用户中记得命令前加入sudo
进行提权后进行操作。
1、安装数据库 yum install -y mariadb-server systemctl restart mariadb systemctl enable mariadb
2、配置数据库 可以用这个手动设置密码,防止空密码登录
1 2 3 4 MariaDB [(none)]> use mysql; MariaDB [mysql]> UPDATE user SET password=password('newpassword' ) WHERE user='root' ; MariaDB [mysql]> flush privileges; MariaDB [mysql]> exit ;
如果觉得上面的有点麻烦,就用下面的这个方法,下面的方法不行就用上面的这个
1 mysql_secure_insatallation
第一步,程序询问你的数据库root密码,但是我们是初次配置,root密码并不存在,这里直接安一下回车就行
1 Enter current password for root (enter for none): 【这里直接回车】
第二步,程序询问是否需要设置root密码
1 2 3 Set root password? [Y/n] y【这里输入“y”】 New password: 【这里输入“数据库密码”】 Re-enter new password: 【这里输入“数据库密码”】
第三步,程序询问是否删除匿名用户(这里不删除的话会有安全问题)
1 Remove anonymous users? [Y/n] y【这里输入“y”】
第四步,程序询问是否禁用远程登陆root的权限
1 Disallow root login remotely? [Y/n] n【这里输入“n”】
第五步,程序询问是否移除“test”数据库
1 Remove test database and access to it? [Y/n] y【这里输入“y”】
最后,程序询问是否立即reload数据库并使配置生效
1 Reload privilege tables now? [Y/n] y【这里输入“y”】
看到Thanks for using MariaDB!
即配置完毕,可正常使用。
3、安装PHP及插件 1 yum install -y php php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
4、启动php(httpd)服务 1 2 systemctl restart httpd systemctl enable httpd
5、进入网页根目录
二、数据库的连接 连接数据库(仅面向对象连接) 实现代码:
1 2 3 4 5 6 7 8 9 10 11 12 <?php $servername ="localhost" ;$username ="username" ; $password ="password" ; $conn =new mysqli ($servername ,$username ,$password );if ($conn ->connect_error){ die ("连接失败:" .$conn ->connect_error); }else { echo "连接成功" ; }$conn ->close ();
运行结果:
三、对数据库的操作 创建数据库 实现代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php $servername ="localhost" ;$username ="username" ;$password ="password" ;$conn =new mysqli ($servername ,$username ,$password );if ($conn ->connect_error){ die ("连接失败:" .$conn ->connect_error); }else { echo "连接成功" ; }$sql ="create database mydb" ; if ($conn ->query ($sql )===TRUE ){ echo "<br>数据库创建成功" ; }else { echo "<br>创建失败:" .$conn ->error; }
运行前检查:
运行结果:
运行后验证:
创建表单 实现代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ; $conn =new mysqli ($hostname ,$username ,$password ,$database ); if ($conn ->connect_error) { die ("数据库连接失败:" .$conn ->connect_error); } echo "数据库连接成功" ;$sql1 ="CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP)" ;if ($conn ->query ($sql1 )===TRUE ){ echo "<br>创建表成功!" ; }else { echo "<br>创建表错误:" .$conn ->error; }$conn ->close ();
运行前检查:
运行结果:
运行后检验:
插入数据 代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ;$conn = mysqli_connect ($servername , $username , $password , $dbname );if (!$conn ) { die ("数据库连接成功: " . mysqli_connect_error ()); }else { echo "数据库连接成功!" ; }$sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('erhetest', 'grouptest', 'erhetest@group.com');" ;if (mysqli_multi_query ($conn , $sql )) { echo "<br>新记录插入成功" ; } else { echo "<br>新记录插入失败: " . $sql . "<br>" . mysqli_error ($conn ); }mysqli_close ($conn );
运行前检查:
运行结果:
运行后检验:
一次性插入多条数据 代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ;$conn = mysqli_connect ($servername , $username , $password , $dbname );if (!$conn ) { die ("数据库连接失败: " . mysqli_connect_error ()); }else { echo "数据库连接成功!" ; }$sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('erhe', 'group', 'erhe@group.com');" ;$sql .= "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('erhe2', 'group2', 'erhe2@group2.com');" ;$sql .= "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('welcome', 'to', 'welcome@erhe.group')" ;if (mysqli_multi_query ($conn , $sql )) { echo "<br>新记录插入成功" ; } else { echo "<br>新记录插入失败: " . $sql . "<br>" . mysqli_error ($conn ); }mysqli_close ($conn );
运行前检查:
运行结果:
运行后检验:
读取查询数据 实现代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ; $conn =new mysqli ($hostname ,$username ,$password ,$database ); if ($conn ->connect_error) { die ("数据库连接失败:" .$conn ->connect_error); } echo "数据库连接成功" ;$sql = "SELECT id, firstname, lastname,email FROM MyGuests" ;$result = $conn ->query ($sql );if ($result ->num_rows > 0 ) { while ($row = $result ->fetch_assoc ()) { foreach ($row as $keyname =>$keyvalue ) { echo $keyname ."=>" .$keyvalue ; echo "<br>" ; } } } else { echo "0 结果" ; }$conn ->close ();
运行前检查:
运行结果:
修改数据 代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ; $conn =new mysqli ($hostname ,$username ,$password ,$database ); if ($conn ->connect_error) { die ("连接数据库失败:" .$conn ->connect_error); } echo "连接数据库成功" ;$sql ="UPDATE MyGuests SET email='shuaishuai@163.com' WHERE id=1" ;if ($conn ->query ($sql ) === TRUE ) { echo "<br>修改成功" ; } else { echo "<br>修改成功:" . $sql . "<br>" . $conn ->error; }$conn ->close ();
运行前检查:
运行结果:
运行后检验:
删除数据 代码实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <?php $hostname ="localhost" ;$username ="username" ;$password ="password" ;$database ="mydb" ; $conn =new mysqli ($hostname ,$username ,$password ,$database ); if ($conn ->connect_error) { die ("连接数据库失败:" .$conn ->connect_error); } echo "连接数据库成功" ;$sql ="DELETE FROM MyGuests WHERE id='1'" ;if ($conn ->query ($sql ) === TRUE ) { echo "<br>删除成功" ; } else { echo "<br>删除失败:" . $sql . "<br>" . $conn ->error; }$conn ->close ();
运行前检查:
运行结果:
运行后检验:
📣特别声明 此文章全部都是依靠自己的学习理解来写的原创文章,难免可能会出现有错误的地方,
如果大家以后阅读的时候发现有问题,那就麻烦到下方评论区来进行错误指出,使错误尽快做出改正,
在此,感谢大家的阅读与支持!🤝💦🎉
🍻支持一下 觉得我写的好的话可以支持一下我哦~持续关注我,会更新其他好玩且实用的项目。
👋如果我能帮助到你,那就请我喝杯🧋呗~👇👇👇