文档库 最新最全的文档下载
当前位置:文档库 › 用PHP连接MySQL

用PHP连接MySQL

用PHP连接MySQL
用PHP连接MySQL

用PHP连接MySQL

在我们从我们的MySQL数据库中获取我们的Web页面所包含的内容之前,我们首先必须知道如何建立与MySQL的连接。在第二章中,我们使用了一个叫mysql的程序来做这样的连接。PHP不需要这样的一个程序,对连接MySQL的支持是语言内置的。下面的这个函数用来建立这样的连接:

-

mysql_connect(

, , );

在这里,

是MySQL服务软件在其上运行的计算机的IP地址或主机名(如果这与运行Web服务软件的计算机是同一台,你可以使用"localhost"),就是你在第二章中用来连接到MySQL服务器的用户名及口令。

-

你可能还记得PHP中的函数在被调用时往往会返回(输出)一个值。请不要担心我们没有提醒你,我们在最初接触一个函数时都会为你详细详细它。绝大多数的函数在被调用后,都会返回一个可以在存储在变量中的值以备下次使用。例如我们上面介绍的mysql_connect函数,会返回一个数字来标识已经建立的连接。因为我们会要使用这个连接,所以我们必须保存这个值。下面是一个关于如何连接我们的MySQL数据库的一个实例:

$dbcnx = mysql_connect("localhost", "root", "mypasswd");

需要说明的是,对于你的MySQL服务器,上面这个函数中的三个参数的值可能是不同的。你应该注意到在这儿我们的mysql_connect 返回了一个值(我们称之为一个连接标识),这个值被我们存储在变量$dbcnx中。

因为MySQL是一个完全分布式的软件,我们必须考虑到这些可能性:服务不可用、网络堵塞或者是我们的用户名及口令不匹配。在这些情况下,mysql_connect函数不能返回一个连接标识(因为连接未被建立)。这时,会返回一个逻辑假。这使得我们可以用一个if语句来处理连接的情况:$dbcnx = @mysql_connect("localhost", "root", "mypasswd");

if (!$dbcnx) {

echo( "

Unable to connect to the " .

"database server at this time.

" );

exit();

}

-

在上面的代码段中出现了三个新的东西,首先,我们在mysql_connect函数前加了一个@符号。包括mysql_connect在内的许多函数会在失败后显示难看的错误信息。在函数名前加一个@符号可以告诉这个函数当执行失败时,允许我们显示我们自己友好的出错信息。

其次,在我们的if语句的条件中,$dbcnx变量前面加了一个惊叹号。这个惊叹号是PHP中的“否运算符”。也就是说将逻辑真变为逻辑假,将逻辑假变为逻辑真。这样,如果这个连接是失败的,mysql_connect会返回一个逻辑假,!$dbcnx将等于逻辑真,这样我们的if语句将被执行。相反,如果这个连接是成功的,存储在$dbcnx 中的连接标识将等于逻辑真(在PHP中,任何非零的数字都被认为是逻辑真),所以!$dbcnx会等于逻辑假,if语句将不会被执行。

最后一个是exit函数,这是我们遇到的第一个没有参数的函数。这个函数的全部作用就是导致PHP停止对本页的阅读。如果数据库连接失败这是一个很好的响应,因为绝大多数情况下,如果不能连接到数据库,这一页不会显示任何有用的信息。

和我们在第二章做过的一样,连接被建立后下一步就是选择工作的数据库。我们将要在第二

章中所建立的笑话数据库中工作。这个数据库被命名为jokes。在PHP中用来选择数据库的另外一个函数:

mysql_select_db("jokes", $dbcnx);

请注意我们在这儿使用了$dbcnx变量来指出了这个函数所使用的连接标识。这个参数实际上是可省略的。当省略这个参数时,函数会自动使用最后开启的那一个连接。这个函数成功后返回逻辑真,失败后返回逻辑假。为了谨慎起见,我们也用了一个if语句来处理错误:if (! @mysql_select_db("jokes") ) {

echo( "

Unable to locate the joke " .

"database at this time.

" );

exit();

}

-

当建立了连接并选择了数据库之后,我们可以开始使用存储在数据库中的数据了。

-

在PHP中执行SQL查询

在第二章中,我们使用一个叫mysql的程序来连接到MySQL数据库服务器,在这个程序中,我们可以输入SQL查询(命令)并立即显示查询结果。在PHP中,有着类似的机制:mysql_query函数。

mysql_query(, );

在这儿,是一个包含将执行的SQL命令的字符串。和mysql_select_db一样,连接标识这个参数也是可选的。

这个函数的返回决定于发出的查询的类型。对于绝大多数的SQL命令来说,mysql_query返回逻辑真或逻辑假来标明执行是否成功。请参看下面这个例子,这是用来建立我们在第二章中建立的Jokes数据表的:

$sql = "CREATE TABLE Jokes ( " .

"ID INT NOT NULL AUTO_INCREMENT PRIMARY KEY, " .

"JokeText TEXT, " .

"JokeDate DATE NOT NULL " .

")";

if ( mysql_query($sql) ) {

echo("

Jokes table successfully created!

");

} else {

echo("

Error creating Jokes table: " .

mysql_error() . "

");

}

-

这儿使用的mysql_error将以字符串的形式返回MySQL服务器最后发出的错误信息。

对于DELETE、INSERT以及UPDATE(用来修改存储的数据),MySQL可以知道有多少数据行被这个查询影响。参看下面的SQL命令,这个命令我们曾在第二章中用来设置所有包含单词“chicken”的笑话的日期:

$sql = "UPDATE Jokes SET JokeDate='1990-04-01' " .

"WHERE JokeText LIKE '%chicken%'";

当我们执行这个查询时,我们可以使用mysql_affected_rows函数来显示这个修改所影响的数据行的数目:

if ( mysql_query($sql) ) {

echo("

Update affected " .

mysql_affected_rows() . " rows.

");

} else {

echo("

Error performing update: " .

mysql_error() . "

");

}

-

SELECT命令会有一些不同,因为它会得到许多信息,而PHP必须提供方法来处理这些信息。

处理SELECT结果集

对于绝大多数的SQL查询来说,mysql_query函数仅仅返回逻辑真或逻辑假。而对于SELECT 查询来说,仅仅这样显然是不够的。你应该还记得SELECT查询是用来显示数据库中存储的数据的。除了指出查询成功还是失败之外,PHP还必须得到查询的结果。作为一个结果,当我们执行一个SELECT查询的时候,mysql_query会返回一个标识“结果集”的数字,这将包含了这个查询返回的所有行的列表。如果查询失败,函数仍然是返回一个逻辑假。$result = mysql_query("SELECT JokeText FROM Jokes");

if (!$result) {

echo("

Error performing query: " .

mysql_error() . "

");

exit();

}

-

假定在执行查询时没有遇到错误,上面的代码会定位一个有关存储在笑话库中所有笑话的正文的结果集,这个定位被存储在变量$result中。因为数据库中的笑话的数目是没有限制的,这个结果集可能非常庞大。

我们之前曾经提到过while循环对于处理大量的数据来说是一个非常有用的控制语句,这是我们逐个处理结果集中数据行的代码的基本格式:

while ( $row = mysql_fetch_array($result) ) {

// process the row...

}

-

在这个while循环中的条件可能看上去与我们曾经使用过的有所不同,所以我们有必要在这里解释它的工作机理。你可以先把这个条件看成一个独立的语句:

$row = mysql_fetch_array($result);

mysql_fetch_array函数以一个参数(对于这个例子来说是存储在$result变量中)接受到一个结果集,并以一个数据的形式返回结果集中的下一行。如果你还不熟悉数组的概念,不要担心,我们会在下面详细讨论它。如果在这个结果集中不再有其它数据行时,mysql_fetch_array 返回逻辑假。

现在,我们上面的语句定义了一个值到$row变量中,与此同时,整个语句也获得了同样的值。这就是我们在while循环的条件中使用这个语句的原因,因为while循环会一直执行循环直到条件等于逻辑假,结果集有几行,这个循环就会执行几次,每一次$row都会得到一个下一行的值,现在剩下的就是如何在循环中从$row变量中获得相应的值了。

结果集中的行被描述成一个数组。数组是一个特殊类型的变量,这个变量可以包含多个值,

如果你把一个变量看成是值的容器,你可以把数组看成是有间隔的容器,在每一个间隔中可以存储一个单独的值。对于我们的数据行来说,这个间隔是以数据表的列名命名的。如果$row是我们结果集中的一行,那么$row["JokeText"]就是这一行中JokeText列的值。所以如果我们想要显示我们的数据库中所在笑话的正文,while循环应该是这样的:

while ( $row = mysql_fetch_array($result) ) {

echo("

" . $row["JokeText"] . "

");

}

-

最后,作为一个总结,这是一段完整的PHP的Web页面的代码,它用来连接我们的数据库,取出数据库中所有笑话的正文,并将其在HTML中显示出来:

Our List of Jokes

</HEAD>

$dbcnx = @mysql_connect("localhost",

"root", "mypasswd");

if (!$dbcnx) {

echo( "

Unable to connect to the " .

"database server at this time.

" );

exit();

}

// Select the jokes database

if (! @mysql_select_db("jokes") ) {

echo( "

Unable to locate the joke " .

"database at this time.

" );

exit();

}

?>

Here are all the jokes in our database:

// Request the text of all the jokes

$result = mysql_query(

"SELECT JokeText FROM Jokes");

if (!$result) {

echo("

Error performing query: " .

mysql_error() . "

");

exit();

}

// Display the text of each joke in a paragraph

while ( $row = mysql_fetch_array($result) ) {

echo("

" . $row["JokeText"] . "

");

}

?>

-

向数据库中插入数据

在这一节里,我们会看到我们会如何综合利用这些工具来让我们站点的访问者向数据库中添加他们自己的笑话。如果你喜欢挑战,你可以试试在向下看之前想想大致上应该怎么做。在这一节里只有很少新的东西。对于我们学过的东西来说,这只是一个简单的应用。

-

如果我们想要让访问者能够输入新的笑话,我们首先需要一个表单,这儿是这个表单的代码:

Type your joke here:


-

正如我们上面看到的那样,这个表单在提交时会载入同一个页面(因为我们在表单的ACTION属性中使用了$PHP_SELF变量),但是在再次载入时请求中包含了两个变量,首先是$joketext,这是在text域中输入的笑话的正文,另一个是$submitjoke,这个变量的值将始终是"SUBMIT",这用来标志笑话已被提交。

要将已提交的笑话添加到数据库中,我们需要用mysql_query来运行一个INSERT查询,这个查询中将包含已经提交的$joketext变量的值:

if ("SUBMIT" == $submitjoke) {

$sql = "INSERT INTO Jokes SET " .

"JokeText='$joketext', " .

"JokeDate=CURDATE()";

if (mysql_query($sql)) {

echo("

Your joke has been added.

");

} else {

echo("

Error adding submitted joke: " .

mysql_error() . "

");

}

}

-

在全部的内容中只有SQL代码中出现了一个新的东西。在这里我们使用了一个MySQL函数CURDATE()来将新插入数据库的笑话的JokeDate列的值置为当前日期。事实上,MySQL 有很多这样的函数,但是我们只会在使用到他们时才会介绍他们,要得到一个完整的函数的说明,你可以参看MySQL参考手册。

-

现在我们已经有了允许用户输入一个笑话并将其加入到我们的数据库中的程序代码。现在剩下的就是将其加入到我们已做好的笑话显示页面。因为绝大多数的用户只会想要看看笑话,所以我们不想对我们的页面做大的更改,除非用户表示想要添加一个新的笑话。因为这个原

因,我们的应用程序应该是一个多功能的页面。下面是程序的代码:

...

// If the user wants to add a joke

if (isset($addjoke)):

?>

Type your joke here:


else:

// Connect to the database server

$dbcnx = @mysql_connect("localhost",

"root", "mypasswd");

if (!$dbcnx) {

echo( "

Unable to connect to the " .

"database server at this time.

" );

exit();

}

// Select the jokes database

if (! @mysql_select_db("jokes") ) {

echo( "

Unable to locate the joke " .

"database at this time.

" );

exit();

}

// If a joke has been submitted,

// add it to the database.

if ("SUBMIT" == $submitjoke) {

$sql = "INSERT INTO Jokes SET " .

"JokeText='$joketext', " .

"JokeDate=CURDATE()";

if (mysql_query($sql)) {

echo("

Your joke has been added.

");

} else {

echo("

Error adding submitted joke: " .

mysql_error() . "

");

}

}

echo("

Here are all the jokes " .

"in our database:

");

// Request the text of all the jokes

$result = mysql_query(

"SELECT JokeText FROM Jokes");

if (!$result) {

echo("

Error performing query: " .

mysql_error() . "

");

exit();

}

// Display the text of each joke in a paragraph

while ( $row = mysql_fetch_array($result) ) {

echo("

" . $row["JokeText"] . "

");

}

// When clicked, this link will load this page

// with the joke submission form displayed.

echo("

" .

"Add a Joke!

");

endif;

?>

-

现在我们有了一个单独的文件,这个文件包含不太多的PHP代码,通过这个文件,我们可以显示我们的MySQL数据库中的笑话并能向我们的MySQL数据库中添加笑话

本文来自CSDN博客,转载请标明出处:https://www.wendangku.net/doc/709470964.html,/jacklam200/archive/2008/08/01/2753994.aspx

PHP+AJAX教程(5)-AJAX MySQL数据库实例

PHP+AJAX教程(5):AJAX MySQL数据库实例 AJAX 可用来与数据库进行交互式通信。 AJAX 数据库实例 在下面的AJAX 实例中,我们将演示网页如何使用AJAX 技术从MySQL 数据库中读取信息。 在下拉列表中选择一个名字(测试说明:该实例功能未实现) 在此列出用户信息。 此列由四个元素组成: MySQL 数据库 简单的HTML 表单 JavaScript PHP 页面 数据库 将在本例中使用的数据库看起来类似这样: id FirstName LastName Age Hometown Job 1 Peter Griffin 41 Quahog Brewery 2 Lois Griffin 40 Newport Piano Teacher 3 Joseph Swanson 39 Quahog Police Officer 4 Glenn Quagmire 41

Quahog Pilot HTML 表单 上面的例子包含了一个简单的HTML 表单,以及指向JavaScript 的链接: <html><head><script src="selectuser.js"></script></head><body><form> Select a User:<select name="users" onchange="showUser(this.value)"><option value="1">Peter Griffin</option><option value="2">Lois Griffin</option><option value="3">Glenn Quagmire</option><option value="4">Joseph Swanson</option></select></form><p><div id="txtHint"><b>User info will be listed here.</b></div></p></body></html> 例子解释- HTML 表单 正如您看到的,它仅仅是一个简单的HTML 表单,其中带有名为"users" 的下拉列表,okooo澳客网这个列表包含了姓名,以及与数据库的"id" 对应的选项值。 表单下面的段落包含了名为"txtHint" 的div。这个div 用作从web 服务器检索到的信息的占位符。 当用户选择数据时,执行名为"showUser()" 的函数。该函数的执行由"onchange" 事件触发。 换句话说:每当用户改变下拉列表中的值,就会调用showUser() 函数。 JavaScript 这是存储在"selectuser.js" 文件中的JavaScript 代码: var xmlHttpfunction showUser(str){ xmlHttp=GetXmlHttpObject()if (xmlHttp==null){alert ("Browser does not support HTTP Request")return}var url="getuser.php"url=url+"?q="+strurl=url+"&sid="+Mat h.random()xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true)xmlHttp.send(null)}function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ document.getElementById("txtHint").i nnerHTML=xmlHttp.responseText } }function GetXmlHttpObject(){var xmlHttp=null;try{// Firefox, Opera 8.0+, SafarixmlHttp=new XMLHttpRequest();}catch (e){//Internet Explorertry { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }}return xmlHttp;} 例子解释: stateChanged() 和GetXmlHttpObject 函数与PHP AJAX 请求那一节中的相同,您可以参阅其中的相关解释。 showUser() 函数 假如下拉列表中的项目被选择,函数执行: 调用GetXmlHttpObject 函数来创建XMLHTTP 对象定义发送到服务器的URL(文件名)向URL 添加带有下拉列表内容的参数(q) 添加一个随机数,以防服务器使用缓存的文件当触发事件时调用stateChanged 通过给定的URL 打开XMLHTTP 对象向服务器发送HTTP

PHP程序mysql连接文件信息修改

PHP程序MySQL文件连接信息修改 注意事项:所有路径均相对于程序的安装目录,修改信息的时候切记不要删除两边的引号 1.shopex4.8 配置文件路径: \config\config.php 配置信息 define('DB_USER', 'MYSQL登录用户'); define('DB_PASSWORD', 'MYSQL密码'); define('DB_NAME', '数据库名'); define('DB_HOST', '服务器地址'); 2.shopex4.7 配置文件路径 \include\mall_config.php 配置信息 $dbHost = "服务器地址"; $dbName = "数据库名"; $dbUser = "MYSQL登录用户名"; $dbPass = "数据库密码"; 3.discuz 配置文件路径 \config.inc.php 配置信息 $dbhost = '服务器地址'; // 数据库服务器 $dbuser = '数据库名'; // 数据库用户名 $dbpw = '数据库密码'; // 数据库密码 $dbname = '数据库名'; // 数据库名 4. phpwind 配置文件路径 \data\sql_config.php 配置文件信息 define('DB_USER', '数据库用户'); define('DB_PASSWORD', '数据库密码'); define('DB_NAME', '数据库名'); define('DB_HOST', '数据库地址'); 5.PHPCMS 配置文件路径 \config.inc.php 配置文件信息 $CONFIG['dbhost'] = '数据库主机'; $CONFIG['dbuser'] = '数据库用户名';

实验八 PHP与Mysql数据库交互实验

实验八 PHP与Mysql数据库交互实验 一、实验目的 1.掌握PHP连接MySql数据库的方法; 2.掌握PHP操作MySql数据库的方法; 3.理解PHP操作MySql数据库的流程。 二、实验方法 通过实验,学生可以做到: 1.使用PHP连接MySql数据库。 2.使用PHP对MySql数据库进行插入、删除、查询操作。 3.制作简单的动态交互网页。 三、实验过程 (一)创建数据库和数据表 1.利用phpMyAdmin在图形界面下创建数据库和数据表 在地址栏输入http://localhost:8080/phpmyadmin/,在弹出的窗口的用户栏内输入“root”,密码栏内输入安装时预留的密码,显示如下页面则表明登录成功。 在左侧选择数据库“test”(如果没有,则创建之),并向其中添加“学生信息”表(studentInfo),表中添加字段“姓名、年龄、性别、住址、专业”等。 如果操作正确,显示下图则表明数据表创建成功,下面可以向表中添加数据。 2.向表中添加内容 选择要进行操作的数据表(studentInfo),然后单击“插入”即可进行数据的插入操作。

此处插入数据的操作不是很方便,是逐字段进行的。 测试数据请学生自行编写,至少插入十条不同的数据,以便后续使用。 (二)使用PHP 操作MySql 数据库 1.PHP 连接Mysql 数据库服务器 在网站根目录下新建文件conn.php ,用于连接Mysql 数据库。如果连接成功,给出“已经成功连接MySQL 数据库”的信息,否则,给出“不能连接到MySQL 数据库”的信息。示例代码如下: 在浏览器地址栏输入:http://localhost :端口号/conn.php ,回车,显示如图2所示,则表明PHP 与MySQL 能够协同工作了。 2.PHP 选择要使用的数据库 建立数据库链接后,需要使用mysql_select_db()函数,来指定一个数据库,本例为刚刚创建的test 数据库。下面演示mysql_select_db()函数的使用方法,示例代码如下。

php页面连接数据库与跳转

PHP连接MYSQL数据库代码 -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- PHP连接ACCESS数据库代码方法 -------------------------------------------------------------------------------- Open($connstr); $rs = new com("ADODB.RecordSet"); $rs->Open("select * from szd_t",$conn,1,1); while(! $rs->eof) { $f = $rs->Fields(1); echo $f->value; $rs->MoveNext(); } ?> --------------------------------------------------------------------------------

PHP+MySQL教程

PHP+MySQL 教程 教程(1):MYSQL 简介
WebjxCom 提示:MySQL 是一种数据库。数据库定义了存储信息的结构。
是最流行的开源数据库服务器。 MySQL 是最流行的开源数据库服务器。
什么是 MySQL? ?
MySQL 是一种数据库。数据库定义了存储信息的结构。 在数据库中,存在着一些表。类似 HTML 表格,数据库表含有行、列以及单元。 在分类存储信息时,数据库非常有用。一个公司的数据库可能拥有这些表: "Employees", "Products", "Customers" 以及 "Orders"。
数据库表
数据库通常包含一个或多个表。每个表都一个名称(比如 "Customers" 或 "Orders")。每个表包含带有数据的记录(行)。 下面是一个名为 "Persons" 的表的例子:
LastName FirstName Hansen Ola Address City
Timoteivn 10 Sandnes Borgvn 23 Storgt 20 Sandnes Stavanger
Svendson Tove Pettersen Kari
上面的表含有三个记录(每个记录是一个人)和四个列(LastName, FirstName, Address 以及 City)。
查询
查询是一种询问或请求。 通过 MySQL,我们可以向数据库查询具体的信息,并得到返回的记录集。 请看下面的查询:

SELECT LastName FROM Persons 上面的查询选取了 Persons 表中 LastName 列的所有数据,并返回类似这样的 记录集:
LastName Hansen Svendson Pettersen
下载 MySQL 数据库
如果您的 PHP 服务器没有 MySQL 数据库,可以在此下载 MySQL: https://www.wendangku.net/doc/709470964.html,/downloads/index.html
Facts About MySQL Database
关于 MySQL 的一点很棒的特性是,可以对它进行缩减,来支持嵌入的数据库应 用程序。也许正因如此,许多人认为 MySQL 仅仅能处理中小型的系统。 事实上,对于那些支持巨大数据和访问量的网站,MySQL 是事实上的标准数据库 (比如 Friendster, Yahoo, Google)。这个地址提供了使用 MySQL 的公司的 概览:https://www.wendangku.net/doc/709470964.html,/customers/。
PHP+MySQL 教程 连接 MYSQL 数据库 教程(2):连接
WebjxCom 提示:免费的 MySQL 数据库通常是通过 PHP 来使用的。在您能够访问并 处理数据库中的数据之前,您必须创建到达数据库的连接。
来使用的。 免费的 MySQL 数据库通常是通过 PHP 来使用的。
连接到一个 MySQL 数据库
在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。 在 PHP 中,这个任务通过 mysql_connect() 函数完成。

PHP连接数据库mysql基本语法

PHP连接数据库MySQL-查询 1.按照查询行数进行遍历 首先,在MySQL里建立好数据库,包括数据库的名称,主机名,和密码这三块 这里,我采用的事Navicat for MySQL 的数据库访问工具, 然后在PHP编辑程序里加入测试代码 这里测试数据库是否安装完成的 当测试的返回值为ok 时,下面就可以进行数据库连接了 我们在数据库中首先建立好一个测试的数据里test1,然后在下面建立一张表,StudentInfo,在表里面我们添加四个字段,分别是id name hobby 和tel 并为四个字段赋值 接下来

我们之前记录了数据库的名称,主机名,和密码我们将这三个当做字符串进行保存, 然后采用PHP的连接语句 mysql_connect($hostname,$user,$password) 选择之前的三个参数 用or die 的目的是为了即使连接错误系统不会继续执行而是返回错误 连接数据库成功连接表就好了也就是我们事先创建的表test1 连接表成功之后,我们将使用代码访问表中的数据 使用数据库语言进行查询语句,这里表名一定要用引号(是数字键1前面的那个)括起来否则会出错 2.按照数据库表名称进行控制查询 唯一的区别就在一个采用的mysql_fetch_assoc另外一个采用的是 mysql_fetch_row,前者的搜索显示里面存放的是表中的ID名称,而后者则是采用直接的行号来判断。

这里就是怎样将查询到的数据放在表中,并将表打印出来 效果如上 最后,切记,使用完数据库操作以后,一定要把数据库关闭,并释放资源 这样,一次数据库的操作就完成了。

PHP连接数据库实验

实验项目:数据库技术及其应用 实验类型:设计 实验课时:4 实验目的:研究数据库技术及其应用 实验方案: 1 下载安装配置PHP集成安装包 安装最新的Visual C++运行库。从 https://www.wendangku.net/doc/709470964.html,/phpstudy/phpStudy2017.zip 下载phpStudy2017。解压缩后安装。选择最新的PHP版本。设置web服务器根文件夹。修改MySQL 用户名和密码。 2 研究通过mysqli访问数据库 创建一个php文件,内容如下。分析页面的输出。

php无法连接mysql问题解决方法总结

php无法连接mysql问题解决方法总结 本文章总结了在php开发中可能会常常碰到的一些php连接不了mysql数据库的一些问题总结与解决方法分享,有需要的朋友可参考一下。 问题一 今天给本本装上mysql和php,一切安装都很正常(php@IIS7.5-fastCGI)。但用phpmyadmin连接测试时却出现“#2002无法连接”的错误,用其它程序也是同样问题。 检查了下,php的mysql扩展正确安装,mysql服务正常启动--那就奇了怪了。又用navicat连接,居然连上了。。看来是php和mysql间的通讯出了问题。 百度了一下,问题被揪出来了: mysql_connect()函数数据库服务器(server)参数当前设置为localhost,但当其更改为127.0.0.1后又可以正常访问。 系统hosts文件未提供127.0.0.1到localhost的解析。 解决方法(以win7系统为例):找到C:\Windows\System32\drivers\etc \hosts文件,默认为只读,你需要复制一份到其他路径如桌面,打开文件(打开方式:记事本),在文件末尾添加: 127.0.0.1 localhost 如果已存在去掉其前面的“#”。 问题二 php脚本可以正常运行,如phpinfo()。 只要一出现“mysql_connect”函数,就没反应,也不报错。 如 $conn = mysql_connect("127.0.0.1","root","xxxx") or die("MYSQL数据库连接失败:".mysql_error()); apache日志目录error.log中出现 PHP Warning: PHP Startup: Unable to load dynamic library 'c:\\php \\ext\\php_mysql.dll' 解决办法 将“libmysql.dll”复制到apache的bin目录下。然后重启,观察error.log,如果错误消失,那恭喜了。

php数据库操作封装类+示例

PHP数据库操作类

PHP数据库操作类 db_host = $db_host; $this->db_user = $db_user; $this->db_pwd = $db_pwd; $this->db_database = $db_database; $this->conn = $conn; $this->coding = $coding; $this->connect(); } /*数据库连接*/

最详细的PHP操作MYSQL数据库入门教程

最详细的PHP操作MYSQL数据库入门教程 作者:聂庆鹏 (本资料仅供个人学习参考之用,请勿用作其他用途)PHP是一门Web编程语言,而MySQL是一款网络数据库系统。这二者是目前Web开发中最黄金的组合之一。那么PHP是如何操作MySQL数据库的呢?从根本上来说,PHP 是通过预先写好的一些列函数来与MySQL数据库进行通信,向数据库发送指令、接收返回数据等都是通过函数来完成。图9-1给出了一个普通PHP程序与MySQL进行通信的基本原理示意图。 图9-1 PHP程序与MySQL数据库通信原理示意图 上图展示了PHP程序连接到MySQL数据库服务器的原理。可以看出,PHP通过调用自身的专门用来处理MySQL数据库连接的函数,来实现与MySQL通信。而且,PHP并不是直接操作数据库中的数据,而是把要执行的操作以SQL语句的形式发送给MySQL服务器,由MySQL服务器执行这些指令,并将结果返回给PHP程序。MySQL数据库服务器可以比作一个数据“管家”。其他程序需要这些数据时,只需要向“管家”提出请求,“管家”就会根据要求进行相关的操作或返回相应的数据。 明白了PHP操作MySQL的流程,我们就很容易掌握PHP操作MySQL的相关函数。因为以上几乎每一个步骤,都有相应的函数与之对应。开发PHP数据库程序时,只需要按照流程调用相关函数,数据库操作便可轻松实现。 ·PHP操作MySQL常用函数 PHP开发者为我们提供了大量函数,使我们可以方便的使用PHP连接到MySQL数据库,并对数据进行操作。学习PHP+MYSQL数据库编程,首先要了解这些函数,明确具体的步骤,然后才能进入实质性开发阶段。 PHP中可以用来操作MYSQL数据库的函数见表9-1: 这些函数中,最常用的有mysql_connect()、mysql_select_db()、mysql_query()、mysql_fetch_array()、mysql_num_rows()、mysql_close()等。下面我们就着重介绍这几个函数的使用。 表9-1 PHP的MYSQL函数一览

PHP用户登录注册连接MYSQL

用户登录注册 文件说明: Con.php:数据库文件 Index.html:首页文件 Login.Index:登录界面 Post_index.php:首页注册处理数据 Login.php:登录处理数据 list.php:数据返回 user.sql:数据库文件 Con.php代码: Index.html代码: 注册验证





用户注册
  • 用户名:
  • 密 码:
  •   |  mysqli=null; exit; } $this->fields=$this->getField(); } //============获取表结构:所有字段名==============// function getField(){ $result=$this->mysqli->query("desc {$this->tabName}"); //执行SQL语句(desc) $fields=array(); while($row=$result->fetch_assoc()){ //将表中的字段放到$fields中,其中主键用关联式存放,其他字段用索引式存放 if($row["Key"]=="PRI"){ //存放主键字段 $fields["pri"]=$row["Field"]; }else{ //存放普通字段 $fields[]=$row["Field"]; } } return $fields; } //==============向数据库中插入数据===============// function insert($post=null){ if(is_null($post)){ //判断传来的参数是否为空,若为空则用$_POST赋值$post=$_POST; } $fields=""; //INSERT语句中的所有字段名 $zwf=""; //INSERT语句中的占位符 $values=array(); //要吃插入的数据 $type=""; //绑定变量bind_param方法中第一个参数:变量类型 foreach($post as $key => $val){ //遍历$post if(in_array($key,$this->fields)){ //判断数组中的键值是否在数组$this->fields中,为真时执行 $fields.=$key.","; //拼装字段名 $zwf.="?,"; //拼装占位符

    PHP连接调用数据库的方法

    实例详细讲解PHP连接调用数据库的方法 MySQL访问函数都需要有相应的权限才能运行。常用的相关函数介绍如下: (1)integer mysql_connect(主机,用户名,口令); 此函数开始一个对指定主机上的MySQL数据库的连接。若该数据库位于一个不同地端口,则在主机名后加上冒号和端口号。所有参数均为可选的,缺省情况下分别对应为本地主机、用户正在执行的脚本名和空。主机可以是IP地址或域名。 在脚本执行结束时,连接被自动关闭,也可以用mysql_close提前关闭。 (2)boolean mysql_create_db(数据库名); 创建一个数据库。注意必须用一个带有创建数据库许可权的帐号打开连接。 (3)boolean mysql_select_db(数据库名,连接号); 选择缺省数据库。 (4)integer mysql_query(SQL语句,连接号); 对指定数据库进行查询。如果SQL语句是select,则返回一个结果号,否则返回的值可以不理会。如果失败,返回false.。 (5)array mysql_fetch_array(结果号); 取出下一行,返回一个数组。可以用数字下标访问(第一个字段是下标0),也可以用字符串下标访问(即使用各字段名)。如已取了最后一行,返回false.。 (6)mysql_fetch_row(结果号); 返回一个矩阵代表结果集中一行的所有域。每次调用都会产生下一行,直到没有行剩下时返回false.每个域值都由一个从零开始的偏移量索引。这是从查询中获取结果的最快方法。 (7)integer mysql_num_rows(结果号); 返回结果集中行的数目 (8)integer mysql_num_fields(结果号); 返回结果集中域的数目。 (9)integer mysql_list_dbs(); 向服务器查询数据库列表。它返回一个结果指针,该指针可用于mysql_fetch_row函数及类似函数。 (10)mysql_list_tables(数据库名); 获取一个指向指定数据库的表单列表的结果指针。该结果指针可用于任何从结果集中获取行的函数。 (11)mysql_close(连接号); 关闭对数据库的连接。连接必须是由mysql_connect打开的。该函数的使用不是严格必需的,因为在脚本结束时,所有非永久链路都会被自动关闭。 (12)mysql_pconnect(主机,用户名,口令); 与mysql_connect完全相似,但建立一个"永久连接",该连接一经建立永不关闭,即使使用mysql_close函数或程序执行完毕也不关闭。下一次试图建立永久连接时,系统如发现已存在一个永久连接,则直接返回该连接号而不重新创建。 下面是一个调用MYSQL数据库并分页显示的例子。 <? $pagesize = 5;//每页显示5条记录 $host="localhost"; $user="user"; $password="psw"; $dbname="book";//所查询的库表名; //连接MySQL数据库 mysql_connect("$host","$user","$password")or die("无法连接MySQL数据库服务器!"); $db = mysql_select_db("$dbname")or die("无法连接数据库!"); $sql = "select count(*)as total from pagetest";//生成查询记录数的SQL语句 $rst = mysql_query($sql)or die("无法执行SQL语句:$sql !");//查询记录数 $row = mysql_fetch_array($rst)or die("没有更多的记录!");/取出一条记录 $rowcount = $row["total"];//取出记录数 mysql_free_result($rst)or die("无法释放result资源!");//释放result资源 $pagecount = bcdiv($rowcount+$pagesize-1,$pagesize,0);//算出总共有几页 if(!isset($pageno)){ $pageno = 1;//在没有设置pageno时,缺省为显示第1页 } if($pageno<1){ $pageno = 1;//若pageno比1小,则把它设置为1 } if($pageno>$pagecount){ $pageno = $pagecount;//若pageno比总共的页数大,则把它设置为最后一页 } if($pageno>0){ $href = eregi_replace("%2f","/",urlencode($PHP_SELF));//把$PHP_SELF转换为可以在URL上使用的字符串,这样的话就可以处理中文目录或中文文件名 if($pageno>1){//显示上一页的裢接 echo "上一页 ";

    PHP访问MySQL数据库数据方法步骤及例子(增、删、改、查)

    PHP访问MySQL数据库操作方法步骤(增、删、改、查):1、检查并过滤来自用户的数据(与网站安全有关): 过滤操作是通过对$_POST['searchterm']变量定义简短名称变量的值应用trim()函数来实现的。$searchterm = trim($_POST['searchterm']) 2、建立一个到适当数据库的链接: $conn = mysql_connect($db_server, $db_user, $db_pwd); 其中$db_server为MySQL服务器,例如$db_server = "localhost"; $db_user为用户名,例如$db_user = "root"; $db_pwd为密码,可以为空。 3、选择数据库: $my_db = mysql_select_db($db_name,$conn); 其中$db_name为数据库的名称; $conn为上一步骤获得的资源。 4、执行查询语句,并做不同的操作: $result = mysql_query($sql, $conn); 其中$sql指的是不同的操作,例如: $sql = "select * from user where username='Jack' ";指的是查询表格user当中usename为Jack的信息。查询完后一般会继续执行后一步的查询结果返回到数组操作。 $sql = "DELETE FROM user WHERE id = 1";指的是查询表格user当中id=1的信息,并将其删除。 $sql = "INSERT INTO user (id,name) values ('1', 'bbb')";指的是给user表添加一行,id=1,name=bbb。 $sql = "UPDATE user SET name = 'aaa' where name = 'bbb'";指的是将name 为bbb的改为name=aaa。 5、获取查询结果到数组: $userInfo = mysql_fetch_assoc($result);将上一步查询出来的结果赋给数组$userInfo

    PHP+MySQL实现数据库查询

    PHP+MYSQL进行数据库查询 一、基本代码 mysql_connect():用来建立和MYSQL数据库连接的,共有5个参数,通常情况下只用前3个参数。3个参数分别是MySQL服务器地址、用户名和密码。 mysql_select_db():用来指定要操作的数据库。如果要操作的数据库还没有创建,则要先创建数据库,接着再创建数据库中的表。 mysql_query():查询指令的专用函数,所有的SQL语句都通过它执行,并返回结果集。 mysql_fetch_row():从结果集中取一行作为枚举数据,从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。 mysql_fetch_array():从结果集中取得一行作为关联数组,或数字数组,或二者兼有,除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。 mysql_fetch_object():从结果集中取得一行作为对象,并将字段名字做为属性。 mysql_fetch_assoc():从结果集中取得一行作为关联数组,也就是说这个函数不能像mysql_fetch_row那样用索引来取值,只能用字段名字来取。 mysql_num_rows():获取由select语句查询到的结果集中行的数目 二、示例 ".$row["id"]."".$row["username"]."".$row["password"] .""; /*显示数据结果*/ } ?> 三、实例 PHP页面querytest.php

  • 相关文档
    相关文档 最新文档