php 与mysql 数据库
新手上路,php刚学,数据库刚学,花了两天终于读到数据库的数据了。
一路上的坎坷我在这里吐槽吐槽:
<?php
$mysql_server_name='localhost'; //改成自己的mysql数据库服务器 $mysql_username='root'; //改成自己的mysql数据库用户名 $mysql_password='root';
$mysql_database='cai'; //改成自己的mysql数据库名 $con = mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
if (!$con)
{
die("数据库服务器连接失败");
}
else{
echo '数据库连接成功';
}
//@mysqli_select_db("blnms", $con);
/* 选择mysql服务器里的一个数据库,假设你的数据库名为 a*/
mysqli_select_db($con,$mysql_database); //打开数据库
$sql = "SELECT * from usertext";
/* 定义变量sql, "SELECT * FROM qq" 是SQL指令,表示选取表qq中的数据 */
$result = mysqli_query($con,$sql); //执行SQL语句,获得结果集 if (!$result) {
printf("Error: %s\n", mysqli_error($result));
exit();
}
while($row = mysqli_fetch_array($result))
{
$id = $row['id'];
$user = $row['user'];
$passsord = $row['passsord']; echo "<div style=\"height:24px; line-height:24px; font-weight:bold;\">"; //排版代码
echo $id;
echo $user;
echo $passsord;
echo "</div>"; //排版代码
}
?>
上面是全部代码。本地服务器root 密码 root 本地数据库 cai(数据库名字)。
之前在网上找了很多用php连接数据库的案例,不过没有一个在我这里是可以实现的。
其中有个很大原因是 mysql 函数在php中被删除了,就是用php写代码时已经不能用mysql这个函数了
https://zhidao.baidu.com/question/362455686449631572.html
这个链接解释了这个。以后都要用mysqli来代替mysql。 用法上会有点出入,怎么用还是得去百度查找,
$mysql_server_name='localhost'; //改成自己的mysql数据库服务器 $mysql_username='root'; //改成自己的mysql数据库用户名 $mysql_password='root'; //改成自己的mysql数据库密码
$mysql_database='cai'; //改成自己的mysql数据库名
$con = mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
//连接数据库 mysqli_connect(‘服务器名字’,‘数据库用户名’,‘数据库密码’,‘数据库名字’)
这里的话要改也只有 数据库的名字是自己创建的,其他的话一般都是这样不变的,如果要改也是可以的,这里过多介绍。
连接之后,还是需要看看有没有连接成功对吧,下面就是 php 写的一个判断语句
if (!$con)
{
echo("数据库服务器连接失败");
}
else{
echo '数据库连接成功';
}
成功连接之后,就要开始读取数据库的数据了,
首先要打开数据库, 然后是一句sql 语句
mysqli_select_db($con,$mysql_database); //打开数据库
$sql = "SELECT * from usertext"; //select*from 是选择数据表 usertext是数据表的名字
这里是获取结果
$result = mysqli_query($con,$sql); //执行SQL语句,获得结果集
mysqli_query 查询数据库的数据,两个参数必须的,一个是连接数据库,另一个是sql 语句 ,这里也就是($con,$sql)。
这个结果返回的一个布尔类型,true 或者是false 。
接下来又是我遇到的一个大坑,很多网上都是
while($row = mysql_fetch_array($result))
{
echo "<div style=\"height:24px; line-height:24px; font-weight:bold;\">"; //排版代码
echo $row['Topic'] . "<br/>";
echo "</div>"; //排版代码
}
这样,突然就出现一个 $row['Topic'] ,哪来的呢,不知道,有什么用呢不知道,
不过在这里应该能猜到这个是用来放数据库里的数据 然后在 echo出来,对,这想法肯定没错,但是这功能实现不了啊
我这里是这样处理的
while($row = mysqli_fetch_array($result))
{
$id = $row['id'];
$user = $row['user'];
$passsord = $row['passsord']; echo "<div style=\"height:24px; line-height:24px; font-weight:bold;\">"; //排版代码
echo $id;
echo $user;
echo $passsord;
echo "</div>"; //排版代码
}
先是用一个变量把数据库里的数据保存下来,在是将这些数据用echo 输出。
$id = $row['id'];
$user = $row['user'];
$passsord = $row['passsord'];
$row['id'];中的id是数据表中 id的字段名
$row['user'];中的user是数据表中 user的字段名
$row['passsord'];中的passsord是数据表中 passsord的字段名 接下来是插入数据到数据库,这里的数据呢我直接不用变量,用常量表示了
$sql = "insert into usertext(id,user,passsord) values ('6','两节课','66')";
$a =mysqli_query($con,$sql);//借SQL语句插入数据
if($a){
echo '插入成功';
}
else{
echo '插入失败';
}
$sql = "insert into usertext(id,user,passsord) values ('6','两节课','66')";
sql的语法 insert into 是插入的意思,usertext是数据表的表名,括号中的参数是数据表中的个个字段名,与后面的values值 一一对应,
做项目的时候呢就可以直接把values值括号里的换成从前台传过来的变量就ok了。
实话说,这个我感觉是很简单的,但是在网上根本找不到完整的,我自己琢磨出来也是东拼西凑看来得,有用的用上,没有用的直接丢掉,换下一个有价值的。
php 与mysql 数据库的更多相关文章
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- 当忘记mysql数据库密码时如何进行修改
因为长时间没有使用数据库了,或者把密码改完之后就忘了数据库密码,不能正常进入数据库,也无法修改密码,有一个简单的常用修改密码方式: 1.首先找到和打开mysql.exe和mysqld.exe所在的文件 ...
- MySQL数据库和InnoDB存储引擎文件
参数文件 当MySQL示例启动时,数据库会先去读一个配置参数文件,用来寻找数据库的各种文件所在位置以及指定某些初始化参数,这些参数通常定义了某种内存结构有多大等.在默认情况下,MySQL实例会按照一定 ...
- 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库
说起Oracle数据库,以前没用过Oracle不知道,但是这1年用Oracle后,发现真的是想狂吐槽,特别是那个.NET驱动和链接字符串,特别奇葩.总归是和其他数据库不一样,标新立异,不知道为何.另外 ...
- CentOS下mysql数据库常用命令总结
mysql数据库使用总结 本文主要记录一些mysql日常使用的命令,供以后查询. 1.更改root密码 mysqladmin -uroot password 'yourpassword' 2.远程登陆 ...
- [原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率
使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch( ...
- mysql数据库主从同步
环境: Mater: CentOS7.1 5.5.52-MariaDB 192.168.108.133 Slave: CentOS7.1 5.5.52-MariaDB 192.168. ...
- PDO连接mysql数据库
1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接 ...
- mysql数据库开发常见问题及优化
mysql 数据库是被广泛应用的关系型数据库,其体积小.支持多处理器.开源并免费的特性使其在 Internet 中小型网站中的使用率尤其高.在使用 mysql 的过程中不规范的 SQL 编写.非最优的 ...
- 如何在删除ibdata1和ib_logfile的情况下恢复MySQL数据库
昨天,有个朋友对公司内部使用的一个MySQL实例开启binlog,但是在启动的过程中失败了(他也没提,为何会失败),在启动失败后,他删除了ibdata1和ib_logfile,后来,能正常启动了,但所 ...
随机推荐
- mongodb 复杂查询之 本表 join
mongdb 的数据介绍: 系统有多个用户,contractId 代表用户Id,其中 serialno 也是一种 id,代表该客户登录系统的编号,该 contractId 每次登录系统都会产生不同 ...
- Ubuntu18.04提示wifi无法连接
[时间:2018-07] [状态:Open] [关键词:Ubuntu 18.04,wifi,apt-get,mount] 0 现象描述及背景 最近需要一个Ubuntu的系统作为开发环境,随机下载了v1 ...
- 【Unity】项目工程源码
Unity开发者俱乐部 http://blog.csdn.net/dingxiaowei2013/article/details/50605208 游戏蛮牛 9秒社团 6m5m raywenderli ...
- FastDFS特性及问题思考
FastDFS是国人开发的一款分布式文件系统,目前社区比较活跃.系统中存在三种节点:Client.Tracker.Storage,在底层存储上通过逻辑的分组概念,使得通过在同组内配置多个Storage ...
- shell脚本自动登录服务器
#!/bin/sh function trapper(){ trap 'exit 1' EXIT QUIT; } serverArr=( guard-boot-001,10.1.17.12 guard ...
- SudaMod-81.0 / crDroidAndroid-8.1(android-8.1.0_r20)红米3 2018年5月3日更新
一.写在前面 我只是个人爱好,本ROM未集成任何第三方推广软件,我只是喜欢把好的资源分享出来,若可以,我们一起学习,一起进步. 请不要问我怎么刷机! 请不要问我玩游戏卡不卡(有钱你就换好点的手机)! ...
- centos图形界面,vncserver
yum -y groupinstall "Server with GUI" RHEL7 安装图形界面1. 以root角色运行以下命令来安装TigerVNC server yum i ...
- mtr命令详解诊断网络路由
首先安装mtr# yum -y install mtr 一般在windows 来判断网络连通性用ping 和tracert, ping的话可以来判断丢包率,tracert可以用来跟踪路由, 在 ...
- Direct3D 11 Tutorial 6:Lighting_Direct3D 11 教程6:灯光
概述 在之前的教程中,世界看起来很无聊,因为所有对象都以相同的方式点亮. 本教程将介绍简单照明的概念及其应用方法. 使用的技术将是朗伯照明. 本教程的结果将修改前面的示例以包含光源. 该光源将附在轨道 ...
- gcc编译c语言程序
编译:当前源代码编译成二进制目标文件(.obj文件) 链接(link):将生成的.obj文件与库文件.lib等文件链接,生成可执行文件(.exe文件). 一个现代编译器的主要工作流程如下: 源程序 ...