初学PHP,关于常量和全局变量的一点小问题

kvew 2006-11-25 02:07:29
版本信息如下
[secoder@localhost php]$ php -vision
PHP 5.0.4 (cli) (built: May 9 2005 11:21:11)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies

--------------------------
<?php
// the usage of constant
function report_error($file, $line, $message) {
echo "An error occured in $file on line $line: $message";
} // declear our own function

report_error(_FILE_,_LINE_, "Something went wrong!<br>");
?>
-----------------------------

打印结果却为
An error occured in _FILE_ on line _LINE_: Something went wrong!

还有一个问题,

--------------------------------
<html>
<head><title>regular expression</title><head>
<body>
<a href="./">return<a>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
Please input the Date:
<input type="text" name="date" value="<? echo $date; ?>" >
<input type="submit" value="Transfor to YYYY-MM-DD">
</form>
<?
if(isset($date)){
if ( ereg("([0-9]{1,2})/([0-9]{1,2})/([0-9]{4})", $date, $regs))
{
echo $regs[0]."Result:".$regs[3]."-".$regs[1]."-".$regs[2];
} else {
echo "Wrong date type!\n";
}
}
?>
</body>
</html>
--------------------------------------
这里 <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post"> 这样才行,但用$PHP_SELF就不行

另外出错信息
<input type="text" name="date" value="PHP Notice: Undefined variable: date in /home/secoder/study/programs/php/stransfor_DateType.php on line 7

初学,还望各位指教下
...全文
297 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
an9ryfr09 2006-11-25
  • 打赏
  • 举报
回复
引用
2、$PHP_SELF 只有在 register_globals = On 的情况下才有效。



否则就应该用$_SERVER['PHP_SELF'],同样,register_globals != on的时候,$date也必须$date = $_POST['date'];才可以使用。
li1229363 2006-11-25
  • 打赏
  • 举报
回复
<input type="text" name="date" value="<? echo $date; ?>" >
-----------------------------------------------------------

你的$date到底是什么?而且你使用的PHP的版本是???而且这样写虽然没有错误但是不如<?=$date ?>好的好用吧?请给$date赋值!

这里 <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post"> 这样才行,但用$PHP_SELF就不行
-----------------------------------------------
这个的问题……$PHP_SELF这个变量你设置了么?$_SERVER["PHP_SELF"]是合法的,但是你用的那个不是合法存在的服务器数据啊~

kvew 2006-11-25
  • 打赏
  • 举报
回复
1、_FILE_ 和 _LINE_ 应该是 __FILE__ 和 __LINE__ ,前后都少了一横~ smile_big.gif
2、$PHP_SELF 只有在 register_globals = On 的情况下才有效。

但这个错误是哪里出的问题呢
<input type="text" name="date" value="PHP Notice: Undefined variable: date in /home/secoder/study/programs/php/stransfor_DateType.php on line 7
daseng123 2006-11-25
  • 打赏
  • 举报
回复

是在客户端执行的

如果JS能读取服务器的数据库,用户也就能远程清空你的数据库了。
懒得去死 2006-11-25
  • 打赏
  • 举报
回复
抄的?
kvew 2006-11-25
  • 打赏
  • 举报
回复
随便拿的一本书 程序是从书上拿来的

21,886

社区成员

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

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