首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  HTML/JS/CSS技术专区 » [原创]关于标记<?php .....?>使用位置望赐教  


  作者:liufayong
  注册时间:2005-06-25
  主题/回复:9/6
  积分:452
  等级:★★☆(五级)
  称号:略有小成

  feuw@123.com
  未提供
  www.

 

 发表:2005-06-25 22:53:53 阅读 2394 次 回复 1 次 得分1  |   字号 字色
[原创]关于标记<?php .....?>使用位置望赐教
1:检测用户是否已经登陆的代码:
  <?php
//检测客户端是否有名为login的cookie存在
//cookie不存在,打开登陆页面login.php要求用户登陆
if (!$http_cookie_vars["login"])
{
?>
<script language=javascript>
window.open("login.php","login","width=200,height=300,toobar=yes,status=no");
</script>
<?php
}
?>
这段代码重最后三行里的,<?php   } ?>为什么只是在,<?php ?>中间放了一个大括号,不是在其中的都是php代码才对吗,怎么此处只放“}”
2 : 还有下边一段代码,处理用户登陆的:
<?php
if ($name)
{
    $conn=mysql_connect("localhost","root","adminsa");
    mysql_select_db("test");
    $sql="select password from users where name='".$name."'";
    $result=mysql_query($sql,$conn);
    //检验以$name为条件的搜索是否成立
    if(!($obj=mysql_fetch_object($result)))
    {
    echo "用户名错误!";
    echo "<br><a herf='login.php'>重新登陆</a>";
    mysql_close($conn);
  exit;
    }
    //检验用户密码是否正确
    if ($obj_login->password!=$password)
    {
    echo "密码错误!";
    echo "<br><a herf='login.php'>重新登陆</a>";
    mysql_close($conn);
  exit;
  }
    mysql_close($conn);
    setcookie("login",$name);
?>
<div align=center>
登陆成功<br>
您好
<?php
    echo $name;
?>
<br>
<a herf=logout.php>注销</a><br>
<a herf=edit.php>修改个人资料</a><br>
<?php
exit;
}
?>
<!--如果用户没有登陆,输出登陆页面-->
<html>
<body>
<h1><div align=center>请填写您的用户密码</div><h1>
<form action=login.php method=post>
<div align=center>
您的用户名:<input type=text size=10 maxlength=50 name="name"><br><br>
您的密码:<input type=password size=10 maxlength=50 name="password"><br><br>
<input type=submit value="提交">
<input type=reset value="重写"><br><br>
<a herf=register.htm>新用户注册</a>
</div>
</form>
</body>
这段代码里最后一段<?php ........?>也是,怎么单独放了个exit;和一个大括号,高手赐教啊
QQ12388827
 
 1#楼  
 
  回复人:一起PHP
  注册时间:2004-02-27
  主题/回复:247/1521
  积分:4649
  等级:★★★★★☆(十一级)
  称号:论坛圣人

   
 1#楼 发表于2005-06-25 23:44:37  评分:1 

这没有什么奇怪的。
PHP是嵌入式脚本语言。嵌入到html当中去的。

PHP有语法,一个PHP页面的语法必须完整没有错误。
这里的“完整的语法”指的是针对整个PHP文件,比如 a.php,从整个PHP文件来看,其代码是完整的才是对的。而不是断章取义。
比如
<?php
}
?>
如果你单独建立一个php文件,输入以上代码的话,肯定是错的。因为半个括号没有意义。但是放在一个文件中,就不一定错。因为这个"}"是和上面的"{"相对应的。具体到你这个例子中,因为上文里面有
<?php
if (!$http_cookie_vars["login"])
{
?>
这样,if(){}语句只有 if(){ 而没有 },如果这样写肯定错误,所以下面需要加上},当然得用<?php?>标记括起来,要不然就不是PHP语句。
就好比:
<?php
 if(true){
  echo "yes";
  }
?>
这个程序,把里面的 echo "yes"换成个html语句,就成了。
<?php
if(true){
?>
yes
<?php
}
?>
第二个问题也是同理。
你不能断章取义,从片面上来看这个语句,而是从整个文件,整体上来看。
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.008sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版