PHP链接数据库有几种方式
创新互联建站专注于涟源企业网站建设,成都响应式网站建设,商城网站建设。涟源网站建设公司,为涟源等地区提供建站服务。全流程按需制作网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
mysqli:
?php
$servername = "localhost";
$username = "username";
$password = "password";
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn-connect_error) {
die("连接失败: " . $conn-connect_error);
}
echo "连接成功";
?
也可以使用PDO进行链接,前提是你必须在php.ini中开启PDO:
?php
$servername = "localhost";
$username = "username";
$password = "password";
try {
$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
echo "连接成功";
}
catch(PDOException $e)
{
echo $e-getMessage();
}
?
建议使用PDO,功能更加强大,兼容各种数据库
关于这个问题,差不多就是这个样子的了,你如果不明白,可以自己去后盾瞅瞅,我这些都是在后盾上学的,有空可以去看一下,就算不喜欢也没关系啊,何乐而不为呢?
先配置数据库------连接数据库--------选择数据库--------填写检索表-------输出检索内容
第一种解决方法:
一、配置一下数据库:
define("DB_HOST","localhost");//数据库地址,一般为localhost
define("DB_USER","root");//数据库用户名
define("DB_PSW","");//数据库密码
define("DB_DB","databasename");//需要操作的数据库
二、连接数据库:
$conn = mysql_connect(DB_HOST,DB_USER,DB_PSW) or die
三、选择数据库:
mysql_select_db(DB_DB,$conn) or die
四、检索表:(填写tablename)
$result = mysql_query("select * from tablename") or die
五、输出检索的内容:
while ($row = mysql_fetch_row($result)){foreach($row as $data){ echo $data.' ';} echo 'br。
mysql_connect("localhost","root","") or die("登陆数据库失败");
mysql_select_db("iPad") or die("连接数据库失败");
mysql_query("set names utf8");
$sql = "ALTER TABLE `表名` ADD `字段名` 数据类型";
mysql_query($sql);
字段(必填):就是自己起个字段名(列名),例如id,name等这样的字符串.(注意:字段名不能相同).
类型(必选):这系统提供了很多。一般常用的也没几个
整型int,字符串型varchar,和char,还有浮点型double,文本text,时间timestamp.
长度值(建意给定长度):也就是给上面的类型中限定一个长度。比如varchar(30),int(6),在长度里直接写整型的数值就行了.(时间类型不需要提供长度)。
整理(如果建库已经选好则不用选了。否则必选):(这个是数据表的字符集)这里基本上就两个常用.(utf8_general_ci和gb2312_chinese_in)。
属性:一般不选。(1二进制。2无符号整型,3无符号整型,不够位数则补0,4在更新数据时,更新当前时间戳[基本上用于timestamp])
空:也就是这个字段的值是否可以为空.
auto_increment:自增长.一般主键会用且为整型时。
html
head
title浏览表中记录/title
/head
body
center
?php
$db_host=localhost; //MYSQL服务器名
$db_user=root; //MYSQL用户名
$db_pass=""; //MYSQL用户对应密码
$db_name="test"; //要操作的数据库
//使用mysql_connect()函数对服务器进行连接,如果出错返回相应信息
$link=mysql_connect($db_host,$db_user,$db_pass)or die("不能连接到服务器".mysql_error());
mysql_select_db($db_name,$link); //选择相应的数据库,这里选择test库
$sql="select * from test1"; //先执行SQL语句显示所有记录以与插入后相比较
$result=mysql_query($sql,$link); //使用mysql_query()发送SQL请求
echo "当前表中的记录有:";
echo "table border=1"; //使用表格格式化数据
echo "trtdID/tdtd姓名/tdtd邮箱/tdtd电话/tdtd地址/td/tr";
while($row=mysql_fetch_array($result)) //遍历SQL语句执行结果把值赋给数组
{
echo "tr";
echo "td".$row[id]."/td"; //显示ID
echo "td".$row[name]." /td"; //显示姓名
echo "td".$row[mail]." /td"; //显示邮箱
echo "td".$row[phone]." /td"; //显示电话
echo "td".$row[address]." /td"; //显示地址
echo "/tr";
}
echo "/table";
?
/center
/body
/html
贴出自己写的一个数据库类吧。
class.php
?php
class Db_Base
{
var $db_host;
var $db_name;
var $db_user;
var $password;
var $linkID;
var $sql;
var $result;
//构造函数,其中dbname,dbuser,dbpsd填自己的数据名,用户名,密码
function __construct()
{
$this-linkID = 0;
$this-sql = "";
$this-db_name="dbname";
$this-db_user="dbuser";
$this-password="dbpsd";
$this-db_host="localhost";
//调用数据库链接函数
$this-Db_Connect();
}
function Db_Base()
{
$this-__construct();
}
//链接数据库函数
function Db_Connect()
{
$this-linkID=@mysql_connect($this-db_host,$this-db_user,$this-password);
if(!$this-linkID)
{
DisplayError("连接失败");exit();
}
$this-Db_Select();
return true;
}
//选择数据库函数
function Db_Select()
{
$select=mysql_select_db($this-db_name);
if(!$select)
{
DisplayError("选择数据库失败");exit();
}
}
//sql语句操作
function Db_Query($sql)
{
if($sql) $this-sql=$sql;
if(!($this-result=mysql_query($this-sql,$this-linkID)))
{
DisplayError("SQL无效");
return 0;
}
else
{
return $this-result;
}
}
//sql语句的结果用数组返回
function Db_Fetch_Array()
{
return mysql_fetch_array($this-result);
}
//select语句 影响的行数
function Db_Num_Rows()
{
return mysql_num_rows($this-result);
}
//INSERT、UPDATE 、DELETE 的影响行数
function Db_Affected_Rows()
{
return mysql_affected_rows();
}
//清除记录
function Db_Free_Result()
{
if(!is_array($this-result)) return "";
foreach($this-result as $kk = $vv)
{
if($vv) @mysql_free_result($vv);
}
}
?
其中DisplayError 为外部定义函数
应用的话,如下操作
example.php
?php
require_once(class.php);
$news=new Db_Base();//构建对象
$sql="select * from tableA limit 0,100";//初始化sql语句
$news-Db_Query($sql);//向数据库插入sql语句
while($re=$news-Db_Fetch_Array())//循环输出sql结果集
{
echo $re[keyA];
echo $re[keyB];//keyA,keyB为你数据表的键
}
echo $news-Db_Num_Rows();//输出本次sql语句影响的行数,假若sql语句是update,delete,insert的,则用 Db_Affected_Rows() 函数
$news-Db_Free_Result();//清空查询结果
?
好吧,百度的这个表单输入框真烂,不能调格式,代码格式可能很乱,就麻烦楼主慢慢看吧。若有问题再发消息给我百度号。