一个简单的php代码,为啥一开始用 不对?结尾?>处有错误?

phoenixyzt 2011-11-21 12:21:41
<?php
require_once 'login.php';
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if(!$db_server) die("Unable to connect to MySQL: " .mysql_error());

mysql_select_db($db_database, $db_server)
or die("Unable to select database: " . mysql_error());

if (isset($_POST['author']) &&
isset($_POST['title']) &&
isset($_POST['category']) &&
isset($_POST['year']) &&
isset($_POST['isbn']))
{
$author = get_post('author');
$title = get_post('title');
$category = get_post('category');
$year = get_post('year');
$isbn = get_post('isbn');
if (isset($_POST['delete']) && $isbn != "")
{
$query = "DELETE FROM classics WHERE isbn='$isbn'";
if (!mysql_query($query, $db_server))
echo "DELETE failed: $query<br />" .
mysql_error() . "<br /><br />";
}
else
{
$query = "INSERT INTO classics VALUES" .
"('$author', '$title', '$category', '$year', '$isbn')";
if (!mysql_query($query, $db_server))
echo "INSERT failed: $query<br />" .
mysql_error() . "<br /><br />";
}
}
echo <<<_END
<form action="sqltest.php" method="post"><pre>
Author <input type="text" name="author" />
Title <input type="text" name="title" />
Category <input type="text" name="category" />
Year <input type="text" name="year" />
ISBN <input type="text" name="isbn" />
<input type="submit" value="ADD RECORD" />
</pre></form>
_END;
$query = "SELECT * FROM classics";
$result = mysql_query($query);

if (!$result) die ("Database access failed: " . mysql_error());
$rows = mysql_num_rows($result);
for ($j = 0 ; $j < $rows ; ++$j)
{
$row = mysql_fetch_row($result);
echo <<<_END
<pre>
Author $row[0]
Title $row[1]
Category $row[2]
Year $row[3]
ISBN $row[4]
</pre>
<form action="sqltest.php" method="post">
<input type="hidden" name="delete" value="yes" />
<input type="hidden" name="isbn" value="$row[4]" />
<input type="submit" value="DELETE RECORD" /></form>
_END;
}
mysql_close($db_server);
function get_post($var)
{
return mysql_real_escape_string($_POST[$var]);
}
?>


就是结尾最后一行左边有个小红叉,说是:unexpected eof

为啥?对的啊?
...全文
71 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ohmygirl 2011-11-21
  • 打赏
  • 举报
回复
host文件中把localhost解析为127.0.0.1:8080应该就可以了吧。
phoenixyzt 2011-11-21
  • 打赏
  • 举报
回复
还有问题,我在使用easyphp 访问本地时 网址是: http://127.0.0.1:8080/sqltest.php

这样是可以访问的。

但是我用eclipse 运行时网址是 http://localhost/sqltest.php/login.php

然后显示不能访问。
我该如何修改我的eclipse设置吗?

谢谢
phoenixyzt 2011-11-21
  • 打赏
  • 举报
回复
不好意思,我login文件写错了,非常感谢

我改好了
ohmygirl 2011-11-21
  • 打赏
  • 举报
回复
username的密码正确么?
phoenixyzt 2011-11-21
  • 打赏
  • 举报
回复
谢谢两位,改了后好了,

但是连接不上,打不开网页

我用的是easyphp

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'username'@'localhost' (using password: YES) in C:\Program Files\EasyPHP-5.3.8.1\www\sqltest.php on line 3
Unable to connect to MySQL: Access denied for user 'username'@'localhost' (using password: YES)

为何?我的root user设置了密码的。是这个原因?
ohmygirl 2011-11-21
  • 打赏
  • 举报
回复
for ($j = 0 ; $j < $rows ; ++$j)
{
$row = mysql_fetch_row($result);
echo <<<_END
<pre>
Author $row[0]
Title $row[1]
Category $row[2]
Year $row[3]
ISBN $row[4]
</pre>
<form action="sqltest.php" method="post">
<input type="hidden" name="delete" value="yes" />
<input type="hidden" name="isbn" value="$row[4]" />
<input type="submit" value="DELETE RECORD" /></form>
_END;//这个要顶格写。。。。。
}



heredoc结束的地方要顶格写。。。。
一起混吧 2011-11-21
  • 打赏
  • 举报
回复
_END; 这个应该顶格写吧。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧