新手 php连接数据库大概。简单过程浅析以及遇到的问题分析
原文作者:aircraft
原文地址: https://www.cnblogs.com/DOMLX/p/8116845.html
重点:PHP运行在服务器上的请记住!!!
1.在连接数据库与PHP之前首先要检查一下自己PHP文件夹里的php.ini配置文件里是否有
;extension=php_mysqli.dll
有的话改成extension=php_mysqli.dll 如果已经是的话就不用改了
extension=php_mysql.dll 至于这个存在不存在都可以了 在几年前这个就被extension=php_mysqli.dll 给替代了 用了加强版的mysqli。
如果是用APACHE 或者XAMPP 的话 就去里面找到一个PHP 的文件夹其他一样,最后 在执行的时候 记住 打开数据库!!!
进入正题:第一步:
创建与MySQL数据库的连接
* mysqli_connect(host,username,passwd,dbname,port)
* host - MySQL数据库所在服务器的IP地址
* username - 登录MySQL数据库的用户名
* passwd - 登录MySQL数据库的密码
* dbname - 指定登录的数据库名称
* port - MySQL数据库的端口号
*
* 该方法的返回值 - 数据库连接对象
$conn = mysqli_connect('127.0.0.1','root','123456','testa','3306');
我写的是这样的 127.0.0.1其实就是代表默认自己本机的服务器IP地址 也可以写localhost 一样的意思 不过在LINUX 上的话可能会出错 要修改一些配置才能写localhost
root 自己数据库的用户名
123465 这是我的密码 你们可以写自己的 没有密码的第一次登录数据库 这里 可以为空 ‘ ’,不过要保留位置。
testa 这是我的数据库名字 MYSQL 登录进去后 我们可以创建很多个数据库 每个数据库都有自己名字 你们自己创建。
3306 这是我的数据库端口号 这个端口号 可以在自己数据库文件夹 的配置文件xxx.ini 里面找到 和修改 一般常用默认为3306.
第二步:
在自己数据库里面创建一个表 什么类型 多少个字段 之类的 自己把握
然后定义SQL语句 -字符串类型
$sql = "INSERT INTO myuser VALUES('1','JANE','12345')";
这里我是往 myuser 这个我创建好的表里插入一个数据 我表里面 只有 三个 一个ID NAME pwd
第三步:
发送SQL语句到MySQL数据库
* mysqli_query(link,query)
* *link - 表示MySQL数据库的连接对象
* *query - 表示发送的SQL语句
*
$bool = mysqli_query($conn,$sql); //var_dump($bool);
执行完可以自己打印 var_dump($bool); 验证一下
该方法的返回值
* 如果执行成功
* INSERT|UPDATE|DELETE - true
* SELECT - mysqli_result对象
* 如果执行失败 - false
第二步我用的是插入一条数据 如果这里用的是SELECT 查询语句的话 通过mysqli_query()方法,返回mysqli_result结果集对象
*我们就可以解析mysqli_result结果集对象
最后一步:
mysql_close("$conn");
关闭与MySQL数据库的连接
mysqli_close(连接对象)
大概代码就是这样
<?php $conn = mysqli_connet('127.0.0.1','root','123456','testa','3306'); $sql = "INSERT INTO myuser VAULES('1','JANE',‘12345’)"; $result = mysqli_query($conn,$sql); mysql_close($conn);
?>
如果出现错误 请检查 自己的配置 或者标点符号 英文符号
上面这些是 过程化的连接数据库 .
在看面向对象的连接数据库
<?php
// 使用面向对象风格连接MySQL
/*
* 1. 创建mysqli或mysql对象
* $mysqli = new mysqli(host,username,passwd,dbname,port);
* * 相当于与MySQL数据库建立连接
*/
$mysqli = new mysqli('127.0.0.1','root','123456','testa','3306');
/*
* 2. 定义SQL语句
* 默认情况下的编码格式为ISO8859-1
* * 如何解决中文乱码问题
* mysqli_query("SET NAMES UTF8");
*/ $sql = "INSERT INTO myuser VALUES(NULL,'JANE','12345',55,'j@qq.com','beijing')"; //$mysqli->query("SET NAMES UTF8");
/*
* 3. 调用mysqli对象的query()方法
* $mysqli->query($sql)
* * 该方法返回执行结果
*/
$result = $mysqli->query($sql);
$mysqli->close();
?>
大家好我是飞机,是一个想成为全栈工程师的男人。
若有兴趣交流分享技术,可关注本人公众号,里面会不定期的分享各种编程教程,和共享源码,诸如研究分享关于c/c++,python,前端,后端,opencv,halcon,opengl,机器学习深度学习之类有关于基础编程,图像处理和机器视觉开发的知识
新手 php连接数据库大概。简单过程浅析以及遇到的问题分析的更多相关文章
- Android UI 绘制过程浅析(五)自定义View
前言 这已经是Android UI 绘制过程浅析系列文章的第五篇了,不出意外的话也是最后一篇.再次声明一下,这一系列文章,是我在拜读了csdn大牛郭霖的博客文章<带你一步步深入了解View> ...
- Linux入门——开机启动过程浅析
Linux开机启动过程浅析 Introduction 开机启动过程分为以下6个步骤,分别是BIOS, MBR, GRUB, Kernel, Init, RunLevel, RunDefinition ...
- Android应用程序安装过程浅析
我们知道在android中.安装应用是由PackageManager来管理的,可是我们发现PackageManager是一个抽象类.他的installPackage方法也没有详细的实现. 那在安装过程 ...
- Linux下简单C语言小程序的反汇编分析
韩洋原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 写在开始,本文为因为参加MOO ...
- 20135202闫佳歆--week2 一个简单的时间片轮转多道程序内核代码及分析
一个简单的时间片轮转多道程序内核代码及分析 所用代码为课程配套git库中下载得到的. 一.进程的启动 /*出自mymain.c*/ /* start process 0 by task[0] */ p ...
- (转)浅析epoll – epoll例子以及分析
原文地址:http://www.cppfans.org/1419.html 浅析epoll – epoll例子以及分析 上篇我们讲到epoll的函数和性能.这一篇用用这些个函数,给出一个最简单的epo ...
- 用pytorch1.0搭建简单的神经网络:进行多分类分析
用pytorch1.0搭建简单的神经网络:进行多分类分析 import torch import torch.nn.functional as F # 包含激励函数 import matplotlib ...
- 🈲Eclipse通过jdbc连接数据库制作简单登陆界面【新手必看】
一.前言: 做网站开发,要求有多种搭配方式,前台技术可以使用PHP.ASP.JSP.ASP.NET.CGI等任何一种: 需要用到的基础语言用的最多的就是HTML/CSS.JS.JAVA.XML这些了, ...
- 【结果很简单,过程很艰辛】记阿里云Ons消息队列服务.NET接口填坑过程
Maybe 这个问题很简单,因为解决方法是非常简单,但填坑过程会把人逼疯,在阿里云ONS工作人员.同事和朋友的协助下,经过一天的调试和瞎捣鼓,终于解决了这个坑,把问题记下来,也许更多人在碰到类似问题的 ...
随机推荐
- android android各种应用的许可
android各种应用的许可 在Android的设计中,资源的访问或者网络连接,要得到这些服务都需要声明其访问权限,否则将无法正常工作.在Android中这样的权限有很多种,这里将各类访问权限一一罗列 ...
- loj #2509. 「AHOI / HNOI2018」排列
#2509. 「AHOI / HNOI2018」排列 题目描述 给定 nnn 个整数 a1,a2,…,an(0≤ai≤n),以及 nnn 个整数 w1,w2,…,wn.称 a1,a2,…,an 的 ...
- centos7用docker安装mysql5.7.24后配置主从
1)使用docker安装完成mysql5.7.24,我规划的是3台: 192.168.0.170(Master) 192.168.0.169(Slave) 192.168.0.168(Slave) 2 ...
- 9.tab栏切换
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 航天独角兽Spacex
2018年2月7日下午3时45分,猎鹰重型火箭在位于卡纳维拉尔角的肯尼迪航天中心LC-39A平台顺利升空.火箭直升云霄,按照既定轨道持续升空,位于美国弗罗里达州卡纳维拉尔角的航天发射中心硝烟四起,非常 ...
- 带权并查集 - How Many Answers Are Wrong
思路: 带权并查集+向量偏移 #include <iostream> using namespace std; int n, m; ]; ]; // 到根节点的距离 ; void init ...
- ansible基本模块-server
ansible XXX -m service -a "name=XXX state=started enabled=yes"
- springcloud微服务总结五 服务熔断
一:雪崩效应 如下图所示:A作为服务提供者,B为A的服务消费者,C和D是B的服务消费者.A不可用引起了B的不可用,并将不可用像滚雪球一样放大到C和D时,导致整个系统瘫痪,雪崩效应就形成了. 雪崩过程: ...
- Java 实现手机发送短信验证码
Java 实现手机发送短信验证码 采用引入第三方工具的方式,网上查了半天,发现简单的实现方式便是注册一个中国网建的账号,新建账号的时候会附带赠几条免费短信,彩信 ,之后想要在使用就得花钱了.简单的操作 ...
- windows xp 环境下 Oracle8i 双击安装文件无反应的解决办法
今天调试一份比较老的程序,数据库用的是Oracle8i,在本地xp系统上搞了半天,双击安装文件就是没反应! 在网上整理了一下解决办法: 1.将ORACLE软件拷贝到硬盘. (比如我拷贝到:F:\Ora ...