By its very nature, W3-mSQL is highly specialized for use with the mSQL database server. If you are using MySQL, or if your needs are not covered by W3-mSQL, there are other HTML preprocessors available that offer database support.
PHP, which stands for "PHP: Hypertext Preprocessor," is an application very similar to W3-mSQL in spirit. They are both CGI programs that interpret HTML before sending a final page to the browser. They both have their own built-in scripting language. Moreover, they both have tightly integrated database capabilities. However, PHP extends beyond the range of W3-mSQL by offering compatibility with several database servers, including both MySQL and mSQL.
PHP's scripting language is also more extensive, covering more possible applications than W3-mSQL. In short, you should use PHP unless you are definitely wedded to mSQL as a database server, in which case some of W3-mSQL's optimizations may suit you.
If you use PHP, the HTML example shown earlier which retrieve information from a shark database would now look as follows:
<HTML>
<HEAD><TITLE>Shark Search Result</title></head>
<BODY>
<H1>Here are the sharks that match your search...</h1>
<p>
<?
/* We now start to build the query. When finished, a typical query
* will look something like this:
* SELECT * FROM SHARK WHERE SPECIES='Isurus Paucus' AND AGE=2
*/
$query = "select * from sharks where ";
if ($species || $age || $location) {
$query += " where ";
}
if ($species) { $query += "species = '$species'"; }
if ($age) {
if ($species) { $query += " and "; }
$query += "age = $age";
}
if ($location) {
if ($species || $age) { $query += " and "; }
$query += "location = '$location'";
}
$result = msql("sharks",$query);
if (result == -1) {
echo("Error : $phperrmsg\n");
exit(1);
}
$numresults = msql_numrows($result);
>
<UL>
<!
if (! $numresults );
>
<H2>No results matched</h2>
<!
else {
while ($i < $numresults) {
$id[$i] = msql_result($result,$i,"id");
$species[$i] = msql_result($result,$i,"species");
$age[$i] = msql_result($result,$i,"age");
$loc[$i] = msql_result($result,$i,"location");
echo("<LI>");
printf("<IMG src=\"graphics/shark%s.gif\" ALIGN=LEFT>", $id[$i]);
echo("<B>Species:</b> $species[$i]<br>");
if ($age[$i] == 1) { $age = "Young"; }
else if ($age[$i] == 2) { $age = "Adult"; }
else if {$age[$i] == 3) { $age = "Old"; }
echo("<B>Age:</b> $age<br>");
echo("<B>Location</b> $location[$i]<br>");
}
}
>
</ul>
<A href="search.html">search again</a>
</body></html>
Copyright © 2001 O'Reilly & Associates. All rights reserved.
| This HTML Help has been published using the chm2web software. |