Который день бьюсь, никак не могу найти, где напортачил. Вроде все просто:
база данных на MySQL 5.0.45. В ней есть таблица makers с полями makers_id INT auto_increment not null - первичный ключ, и makers_name VARCHAR. Мне нужно из этой таблицы (в смысле из полей makers_name) сделать выпадающий список. Для начала пишу страницу авторизации:
<html>
<head>
<title></title>
</head>
<body>
<?php
$conn= mysql_connect("localhost", $userl, $userp);
if($conn) {
print <<<HERE
<div align="center"><h1><font color="red" face="Comic Sans MS">
You connected!
</font></h1></div>
<br><br>
<div align="center">
<a href="showlist1.php">
<font size="+2" color="#0000FF">Checking</font>
</a>
</div>
HERE;
mysql_select_db("Classificator", $conn);
}
else {
print "<h1>Connection failed!</h1>";
}
?>
</body>
</html>
Далее, если подключение удалось, то переходим на страницу "Проверка" (или showlist1.php):
<html>
<head>
<title></title>
<?php
include "ClLib.php";
?>
</head>
<body>
<h1><div align="center"><font size="+2" color="#FF0045" face="Comic Sans MS">Makers list/font></div></h1>
<br><br><br><br>
<?php
//connection to BD
$conn = mysql_connect($serverName, 'myserver', '4321');
mysql_select_db("Classificator", $conn);
//create query
$sql = "SELECT * FROM makers";
$result = mysql_query($sql);
if ($result) {
print <<<HERE
<select name="selman" id="selman">
HERE;
print printlist($result);
print <<<HERE
</select>
HERE;
} else { print "Query Error"; }
?>
</body>
</html>
В библиотеке ClLib.php функция printlist($result) выглядит так:
function printlist($result) {
while ($names = mysql_fetch_assoc($result)) {
$output .= " <option value=.$names['maker_name']>";
$output .= ".$names['maker_name'].</option>\n";
}
return $output;
}
При попытке войти на страницу "Проверка" браузер выдает сообщение: "Ошибка при загрузке
http://develop.ru/Classificator/showlist1.php:
Внутренняя ошибка сервера
myserver.ru"
Это выдает Konqueror, Firefox вообще выдает пустую страницу, а в консоли ошибок пустота.
А в логе апача написано вот что:
[Mon Sep 29 14:33:44 2008] [error] [client 169.254.37.2] PHP Parse error: syntax error, unexpected T_SL in /var/www/develop/Classificator/showlist1.php on line 34, referer: http://develop.ru/Classificator/enter.php
строка 34 (вместе с последующими) выглядит так:
print <<<HERE
<select name="selman" id="selman">
printlist($result)
</select>
HERE;
и я не могу понять, где же тут ошибка? У меня есть отладчик для php, но он под винду. Может еще подскажете, чем можно отлаживать код?