LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1283|回复: 9

[PHP]帮我看一下,怎么书中的例子也会运行不通过?

[复制链接]
发表于 2005-5-13 23:00:12 | 显示全部楼层 |阅读模式
这是书里的一个例子,是一个简单网页调用的小的PHP程序.但是运行出错了,个人也觉得红色部分的套有点乱了,不过我去掉中间的?>和<?php也还是不行
<?php
include("dbconnect.php");
if ($submit == "Sign!")
{
        $query = "insert into guestbook
                (name,location,email,url,comments) values
                ('$name','$location','$email',$url','$comments')
        ;
        mysql_query($query) or
                die (mysql_error());
?>
<h2>Thanks!!</h2>
<h2><a href="view.php">View My Guest Book!!!</a></h2>
<?php
}

else
{
        include("sign.php");
}
?>
这是出错信息
Parse error: parse error, unexpected T_STRING in /var/www/localhost/htdocs/create_entry.php on line 13
附网页:
<html>
<body>
<h2>Sign my Guest Book!!!</h2>

<form method=post action="create_entry.php">

<b>Name:</b>
<input type=text size=40 name=name>
<br>
<b>Location:</b>
<input type=text size=40 name=location>
<br>
<b>Email:</b>
<input type=text size=40 name=email>
<br>
<b>Home Page URL:</b>
<input type=text size=40 name=url>
<br>
<b> Comments:</b>
<textarea name=comments cols=40 rows=4 wrap=virtual></textarea>
<br>
<input type=submit name=submit value="Sign!">
<input type=reset name=reset value="Start Over">
</form>

</body>
</html>
发表于 2005-5-15 16:27:38 | 显示全部楼层
$query = "insert into guestbook
(name,location,email,url,comments) values
('$name','$location','$email',$url','$comments')
;
应修改为:
[php]
$query = "insert into guestbook (name,location,email,url,comments) values
('$name','$location','$email',$url','$comments')";[/php]
分号之前的引号不可遗陋
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-16 23:54:57 | 显示全部楼层
谢谢cg111,你可真细心,程序是能运行了,但是好像是if分支不能执行,不管点什么键都是执行else分支。
这又是哪里错了,好像<?php与if有点套了吧!
回复 支持 反对

使用道具 举报

发表于 2005-5-17 13:34:42 | 显示全部楼层
if ($submit == "Sign!")
改为
if($_POST['submit'])
还有,注意html代码中属性值最好用“”括起来
回复 支持 反对

使用道具 举报

发表于 2005-5-17 22:14:16 | 显示全部楼层
2002年以前的书,现在程序都比较麻烦了.....
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-21 23:22:40 | 显示全部楼层
现在好了,将if ($submit == "Sign!")改为if ($_POST['submit'] == "Sign!")。
书可能是比较老的了,是不是PHP5在变量的引用上有点不同了?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-21 23:32:38 | 显示全部楼层
$query = "insert into guestbook
                (name,location,email,url,comments) values
                ('$_POST['name']','$_POST['location']','$_POST['email']','$_POST['url']','$_POST['comments']')"
        ;
好像这句还是有点问题,改成这样也不行?
回复 支持 反对

使用道具 举报

发表于 2005-5-21 23:40:59 | 显示全部楼层
数组用法不对,在双引号内使用数组要把下标的单引号去掉,这些都是基础中的基础啊.....
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-21 23:51:20 | 显示全部楼层
谢谢,已经好了。是啊,只是逮着本老书在那里看,还是应该找本PHP5的基础一点的来看一下。
汗颜啊
回复 支持 反对

使用道具 举报

发表于 2005-5-27 13:08:25 | 显示全部楼层
hehe
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表