### PHP4 与 MySQL 交互使用

在这里，我们要详细的讲一下PHP与MySQL的连接、添加和查询.

我们以一个调查程序为例:

1、 从向MySQL数据库建立一个连接开始。

首先，我们应该在MySQL中建立一个数据库中建立一个infostar表：

按照 测试MySQL 的步骤，见到“ mysql> ”提示符后人工建立我们需要的表:

mysql>CREATE DATABASE mydb

mysql>USE mydb

mysql>CREATE TABLE infostar(
->name VARCHAR(25),
->email VARCHAR(25),
->choice VARCHAR(10));

好了，表建好了。下面先建立与用户见面表单(纯 HTML 文件)

diaocha.htm

<HTML>
<HEAD>
<TITLE> New Document </TITLE>
</HEAD>

<BODY BGCOLOR="#CCCCCC">
<center>
<h1>您喜欢吃什么水果</h1>
<form method="post" action="diaocha.php">
<table border>
<tr><td>姓名:
<td>
<input type="text" name="name" size="20" maxlength="20" value="">
<tr><td>Email:
<td>
<input type="text" name="email" size="20" maxlength="20" value="">
<tr><td>请您选择:
<td>
<input type="radio" name="choice" value="apple">苹果
<input type="radio" name="choice" value="orange">橙子
<input type="radio" name="choice" value="pear">梨子
<br>
<input type="radio" name="choice" value="coconut">椰子
<input type="radio" name="choice" value="watermelon">西瓜
<input type="radio" name="choice" value="banana">香蕉
</table>
<p>
<input type="submit" name="submit_button" value="确定">
<input type="reset" name="reset_button" value="重置">
</form>
</BODY>
</HTML>

其格式如下:

您喜欢吃什么水果 窗体顶端

姓名: |
Email: |
请您选择: | 苹果 橙子 梨子 椰子 西瓜 香蕉

窗体底端

下面来建立PHP程序,接收并处理diaocha.htm表单传来的信息

diaocha.php

<?php
/* 定义一些相关变量,供下面的mysql_connect()函数用 */
$hostname="localhost";
$username="root";
$password="";
$dbname="mydb";

/* 用来储存站点主管的email地址*/
$adminaddress="webmaster@youweb.com";

/* 这是我们刚建立的表,用来储存用户数据*/
$userstable="infostar" ;

/* 下面建立连接 */
mysql_connect($hostname,$username,$password) or die ("Unable to connect database");

/* 下面选择数据库mydb,在函数前加上(@)符号将会抑制错误信息的显示.*/
@mysql_select_db("$dbname")or die("Unable ro select database");

print"<center>";
print"您好:$name.";
print"<br><br>";
print"您的Email是:$email<br><br>";
print"谢谢您的参与<br><br>";

/* 把信息插入到表infostar中 */
/* 因为前面用mysql_select_db函数选取了数据库表.所以,下面就不需在输入表名 */
$query="INSERT INTO $userstable VALUES('$name','$email','$choice')";
$result=mysql_query($query);

print"您的信息我们已经保存到数据库中.";

/* 关闭数据库连接 */
mysql_close();
?>

注意: 编程时如果像上面一样:一开始就定义字符串变量,修改的时候就容易了.

我们已经把信息存入数据库中,那么怎样才能浏览这些数据呢?
下面,我们尝试把所有喜欢吃苹果的朋友列出来,建立apple.php文件

apple.php

<?php
/* 定义一些相关变量,供下面的mysql_connect()函数用 */
$hostname="localhost";
$username="root";
$password="";
$dbname="mydb";
$userstable="infostar" ;

/* 下面建立连接,并选择数据库*/
mysql_connect($hostname,$username,$password) or die ("Unable to connect database");
@mysql_select_db("$dbname")or die("Unable ro select database");

/* 选择所有喜欢苹果的用户 */
$query="SELECT * FROM $userstable WHERE choice='apple'";
$result=mysql_query($query);

/* 计算有多少这样的用户 */
$number=mysql_num_rows($result);

/* 将结果显示出来 */
$i=0;
IF ($number==0){
print"<center><p>没有人喜欢苹果</center> ";}
ELSE{
print"<center><p>喜欢吃苹果的用户有:$number <br><br>";
WHILE ($i<$number):
$name=mysql_result($result,$i,"name");
$email=mysql_result($result,$i,"email");
print"$name 喜欢吃苹果<br>";
print"邮件地址: $email<br><br>";
$i++;
endwhile;
print"</center>";
}
?>

在浏览器中调用apple.php,看看出现了什么.