下面的内容就是如何用 PHP3.0 和 MySQL 来构造数据库 Web 应用。
下面这些涉及到 MySQL 的功能,都必须在服务器上安装调试好 MySQL 之后才能够运行。如果你对 MySQL 还不是很熟,那么最好先看看有关的文章。
PHP 在数据库服务器和 Web 浏览器之间,扮演了一个中间人的角色,把一方的命令解释后传给另一方,而后在把取得的结果传回来。正是由于这种沟通的可能性,使得许多任务得以实现。比如网上调查,在线购物,个人化站点等等,无不借助于这种技术。
这种交互从向 MySQL 数据库建立一个连接开始,连接用下面的这个命令来实现:
语法 : int mysql_connect(string hostname, string username, string password);
* hostname - 数据库服务器所在的主机名
* username - 用来连接到 MySQL 数据库的用户名。
* Password - 用户相应的口令。
* 返回的整形值,也就是一个连接号。当连接号是正数的时候表示连接成功,而负数者表示连接失败。
同样的,所有的这些命令都必须置于“ ”之间。
再回到我们的用户信息的处理上来。在执行了下面几条命令后,将在 MySQL 数据库中建立起了一个 information 表:
mysql> CREATE TABLE information (
-> name VARCHAR (25),
-> email VARCHAR (25),
-> choice VARCHAR (8) );
现在,如果我们想向表中插入一些用户信息,我们可以修改刚才的 email.php3 脚本:
/* 这段脚本用来处理从 moreinfo.html 文件传过来的变量 */
/* 定义一些相关的变量 */
$hostname = "devshed";
$username = "myusername";
$password = "mypassword";
$dbName = "mydbname";
/* 用来储存用户数据的 MySQL 表 */
$userstable = "information";
/* 站点主管的 email 地址 */
$adminaddress = "administration@buy.com";
/* 建立与数据库的连接 */
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Unable to connect to database");
@mysql_select_db("$dbName") or die("Unable to select database");
PRINT "";
PRINT " 您好 , $name.";
PRINT "";
PRINT " 谢谢您的参与 ";
PRINT " 我们将向 $email 发出验证信息 ";
PRINT "";
/* 发送相关的邮件 */
mail("$email", "Your request for information",
"$name\nThank you for your interest!\n
We sell fresh corn daily over the Internet!
Place your order at http://www.buy.com,
and receive a free package of $preference!");
mail("$adminaddress",
"Visitor request for info.",
"$name requested for information.\n
The email address is $email. \n The visitor prefers $preference.");
/* 把信息插入到表中 */
$query = "INSERT INTO $userstable VALUES('$name','$email', '$preference')";
$result = MYSQL_QUERY($query);
PRINT " 您的信息已经被插入到我们的数据库中了,我们将能给您带来更好的服务。 ";
/* 关闭数据库连接 */
MYSQL_CLOSE();
?>