一个简单的自动发送邮件系统(三)

  一个简单的自动发送邮件系统(三)

  这里介绍php和mysql结合起来实用。如何从mysql数据库中提取数据。

  好,我们已经成功的完成了我们的要求,很多的数据已经存在了数据库中,现在的问题是,如何查询这些数据,得到有用的结果呢?

  在下面的程序中,我们将选择"apple"的用户输出。

  --------------------------------------------------------

  <?

  /* 声明一些必须的变量*/

  $hostname = "yourhostname";

  $username = "yourusername";

  $password = "yourpassword";

  $userstable = "information";  /* 使用MySQL建立的数据表存取信息  */

  $dbName = "yourdbname";

  /* 与数据库连接*/

  MYSQL_CONNECT($hostname, $username, $password) OR DIE("Unable to connect to database");

  @mysql_select_db( "$dbName") or die( "Unable to select database");

  /* 选择所有“apple”用户*/

  $query = "SELECT * FROM $userstable WHERE (preference LIKE 'Apples') ";

  $result = MYSQL_QUERY($query);

  /* 统计有多少这样的用户*/

  $number = MYSQL_NUMROWS($result);

  /* 输出结果*/

  $i = 0;

  IF ($number == 0) :

  PRINT "<CENTER><P>Nobody in the database prefers Apples!</CENTER>";

  ELSEIF ($number > 0) :

  PRINT "<CENTER><P>Users preferring Apples: $number<BR><BR>";

  WHILE ($i < $number):

  $name = mysql_result($result,$i,"name");

  $email = mysql_result($result,$i,"email");

  PRINT "Visitor $name likes Apples.<BR>";

  PRINT "Email address: $email.";

  PRINT "<BR><BR>";

  $i++;

  ENDWHILE;

  PRINT "</CENTER>";

  ENDIF;

  ?>

  --------------------------------------------------------

  将他存为apples.php3

  解释说明:一些新用到的函数:

  1、$number = MYSQL_NUMROWS($result);

  语法:int mysql_num_rows(string result);

  ·result   从函数mysql_query中返回的数组记录。

  ·返回存在$result中的行数。

  2、$name = MYSQL_RESULT($result,$i,"name");

  语法: int mysql_result(int result, int i, column);

  这个函数将分离记录,将每一条赋值给变量。

  ·$result是指中的数组结果。

  ·$i是指数据的行。

  ·column是指mysql数据表中列的名字。也可以使用变量。

  因此使用一个简单的while循环,我们就能很容易的将数据输出给浏览器。