РНР
По самой своей природе W3-mSQL узко специализирована для использования с СУБД mSQL. Если вы используете MySQL или же W3-mSQL не покрывает всех ваших потребностей, то есть другие препроцессоры HTML, предлагающие поддержку баз данных.
РНР, что означает «PHP: Hypertext Preprocessor» (препроцессор гипертекста), является приложением, очень близким по духу W3-mSQL. Оба приложения являются CGI-программами, интерпретирующими HTML перед отправкой броузеру окончательной страницы. Оба имеют встроенный язык сценариев. Более того, в обе программы тесно интегрированы возможности работы с базами данных. Однако РНР идет дальше W3-mSQL, предлагая совместимость с несколькими серверами баз данных, включая MySQL и mSQL.
Язык сценариев РНР более богат и может использоваться в большем числе приложений, чем W3-mSQL. Короче, предпочтительнее использовать РНР, если только вы не привязаны к использованию mSQL в качестве сервера баз данных. В последнем случае более удобной для вас будет некоторая оптимизация, имеющаяся в W3-mSQL.
С использованием РНР пример с базой данных по акулам может выглядеть так:
<НТМL>
<НЕАD><TITLЕ>Результат поиска акул </title></head>
<BODY>
<Н1> Вот акулы, удовлетворяющие условиям поиска...</ht>
<Р> <?
/* Начинаем построение запроса. В результате типичный запрос
* может выглядеть так:
* SELECT * FROM SHARK WHERE SPECIES='Isurus Paucus' AND AGE=2 */
$query = "select * from sharks where ";
if ($species || $age || Slocation) {
$query += " where "; }
if ($species) { $query += "species = '$species'";
}
if ($age) {
if ($species) { $query += " and "; }
$query += "age = Sage";
}
if ($location) {
if ($species || $age) { Squery += " and "; } $query += "location = '$location'";
}
$result = msql("sharks",Squery);
if (result == -1) {
echo("Error : $phperrmsg\n");
exit(1); }
Snumresults = msql_numrows($result);
>
<UL>
<!
if (! $numresults ); >
<Н2> Результатов не найдено </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[$i]<br>");
if ($age[$i] == 1) { $age = "Молодые"; }
else if ($age[$i] == 2) { $age = "Взрослые"; }
else if {$age[$i] == 3) { $age = "Старые"; }
echo("<B>Age:</b> $age<br>");
echo("<B>Paйoн</b> $location[$i]<br>");
}
}
}
</ul>
<A HREF="search.html">Hoый поиск </а>
</body></html>