|
автор: gelmir (10.10.2004 в 13:14) |
|
| разбирал код системы новостей и столкнулся со следующим:
if(auth_user($_SESSION['username'],$_SESSION['password']))
{
echo "<html><head><link href=\"general.css\" rel=\"stylesheet\" type=\"text/css\">$jscript</head></body><center><table class=maintable border=0 cellspacing=4 cellpadding=4>
<tr>
<td>
<table border=0 cellspacing=0 cellpadding=2>
<tr>
<td class=title>Welcome ".$_SESSION['username']." </td>
</tr>
<tr>
<td class=message align=center>What Do You Want To Do ".$_SESSION['username']."?<br><a href='?page=post'>Post News</a> | <a href='?page=edit'>Edit News</a> | <a href='?page=view'>View News</a> | <a href='/'>Go Home</a> | <a href='login.php'>Logout</a></td>
</tr>
<tr>
<td class=foot align=right>$adate</td>
</tr></table></td>
</tr>
</table></center>";
}
else
{
die("<html><head><link href=\"general.css\" rel=\"stylesheet\" type=\"text/css\"></head><body><center><table border=0 cellspacing=4 cellpadding=4>
<tr>
<td class=maintable>
<table border=0 cellspacing=0 cellpadding=2>
<tr>
<td class=title>Sorry ".$_SESSION['username']." </td>
</tr>
<tr>
<td class=message align=center>Either The Username (".$_SESSION['username'].") or the Password ($password) that you submitted was incorrect.<br><a href='login.php'>Login</a></td>
</tr>
<tr>
<td class=foot align=right>$adate</td>
</tr></td>
</tr>
</table></table></center></body></html>");
что это за дие и с чем его едят?
PS в описанных функциях его нет | |
|
|
|
|
|
|
|
для: gelmir
(10.10.2004 в 13:14)
| | почему же нет, вот - output message and terminate the current script
Перевести? Вывод сообщения и завершение текущего скрипта.
Если я не ошибаюсь псевдоним exit() | |
|
|
|
|
|
|
|
для: gelmir
(10.10.2004 в 13:14)
| | PHP это прямой потомок Perl, можно даже сказать, что это Perl ориентированный на Web (соотношение между ними как между С и С++). Многие функции пришли именно из Perl и считаются "общеизвестными" поэтому в мануале им уделяется очень мало внимания. die() останавливает работу скрипта и выводит то, что передано ей в качетсве строкового аргумента. В PHP более принято использовать exit():
<?php
exit("Ошибка выполнения скрипта");
?>
|
PS exit (выход) более нейтрально по сравнению с die (убить).
PPS Вообще хакерский стиль создания Perl-скриптов направленный на очень закрученный код требует такого использования этой функции :)))
<?php
auth_user($_SESSION['username'],$_SESSION['password']) or die("Ошибка");
?>
|
Этот код основан на том факте, что логические выражения с or вычисляются не до конца если один из операторов принимает значение true. Это направление очень интересное и позволяет создавать маленькие и очень производительные скрипты, но в реальной работе не очень удобно так как код сложно читаем. | |
|
|
|