PHP与MySQL的亲密接触
此篇文章前,你应该先做好一些准备工作
1.建好一个mysql数据库,记住servername,username,password 三者缺一不可。
2.在数据库创建create一些表【入门级的可以选择phpmyadmin,这个wamp里面自带,不需要编程,使用非常简单】
接下来是一些PHP与Mysql的基本操作:
举个栗子
<?php
header("Content-Type:text/html;charset=utf-8"); //不写这个 容易出现乱码
$link=mysql_connect('127.0.0.1:3306','root','1q1q1q1q'); //连接数据库 mysql_connect('servername','username','password');
if (!$link){
die('连接失败 ' . mysql_error());
}
mysql_query("set names 'utf8'"); //数据库输出编码
/*创建一个新的数据库
if (!$link){
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE my_db",$link)){
echo "Database created";
}
else{
echo "Error creating database: " . mysql_error();
}
*/
// 在my_db 数据库建立Persons表
mysql_select_db("my_db", $link);
$sql = "CREATE TABLE Persons
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$link);
//设置Persons表的属性
$sql = "CREATE TABLE Persons
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$link);
/*添加了3个新记录
mysql_select_db("my_db", $link);
mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin', '35')");
mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Ben', 'Quagmire', '33')");
mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Alice', 'Li', '21')");
*/
//where 操作 从 "Persons" 表中选取所有 FirstName='Peter' 的行
$result = mysql_query("SELECT * FROM Persons WHERE FirstName='Peter'");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "\n";
}
//选取 "Persons" 表中的存储的所有数据,并根据 "Age" 列对结果从小到大进行排序
$result = mysql_query("SELECT * FROM Persons ORDER BY age");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'];
echo " " . $row['LastName'];
echo " " . $row['Age'];
echo "\n";
}
//更新Persons表的数据
mysql_query("UPDATE Persons SET Age = '36'
WHERE FirstName = 'Peter' AND LastName = 'Griffin'");
//删除 "Persons" 表中所有 LastName='Griffin'
//mysql_query("DELETE FROM Persons WHERE LastName='Griffin'");
//mysql_query("DELETE FROM Persons where LastName='Quagmire");
mysql_select_db("phtest"); // 打开具体的数据库--我的数据库名字为phtest
mysql_query("INSERT INTO role (idrole, namerole, textrole) VALUES ('7', 'ANYLIST','FENXISHI')");//role表namerole插入一条数据
$result = mysql_query("SELECT * FROM role");//查找role表的所有数据存在result里
while($row = mysql_fetch_array($result)){ //按列输出表中数据
echo $row['idrole'] ." ".$row['namerole']." " . $row['textrole'];
echo "\n";
}
mysql_close($link); //关闭MySQL连接
echo mysql_error(); //输出错误
?>
解释例子里的一些代码和注意事项:
1)$link=mysql_connect('127.0.0.1:3306','root','password'); //连接数据库
给数据一个变量名,因为可以存很多不同的数据库,变量名可以对应是哪个具体数据库,关闭连接时也会更好地对应
2)mysql_query("INSERT INTO role (idrole, namerole, textrole) VALUES ('7', 'ANYLIST','FENXISHI')"); //向role表Role_Code插入一条数据
这个插入数据这条在注册/录入信息时常用到,用代码的时候注意‘’和“”。之前因为这个东西搞得很头疼。
3)这个是最基本的一些操作,如果需要深入的学习数据库相关知识,(查询位置/排序等)请找一些相关书籍来看。