Использование PHP
| ||||||||||
|
function myfunc($argument) { echo $argument + 10; } $variable = 10; echo "myfunc($variable) = " . myfunc($variable); |
<pre> <?php echo "This should be the first line."; ?> <?php echo "This should show up after the new line above."; ?> </pre> |
Убедитесь, что track_vars включена в вашем файле php.ini. Начиная с PHP 4.0.3, эта возможность всегда on/включена. Когда track_vars on, она создаёт некоторые ассоциативные массивы, самый важный из них: $_POST (он используется для вызова из $HTTP_POST_VARS в PHP-версиях до 4.1.0). Так, чтобы написать общий скрипт для обработки переменных метода POST, вам необходимо что-нибудь такое:
foreach ($_POST as $var => $value) { echo "$var = $value<br> "; } |
Прежде всего просмотрите функцию addslashes().
Она делает в точности то, что вам нужно. Вы также должны просмотреть директиву
Чтобы иметь возможность использовать в выражении результаты работы вашей
функции (такие как конкатенация с другими строками в предыдущем примере), вам необходимо
returnвозвратить значение, а не echo()
что происходит?
function myfunc($argument)
{
echo $argument + 10;
}
$variable = 10;
echo "myfunc($variable) = " . myfunc($variable);
В PHP блок кода завершается символами "?>" или "?>
" (где
означает
newline/символ новой строки). Так, в приведённом примере,
echo-предложения будут на одной строке, так как PHP опускает символы
newline после конца блока. Это означает, что необходимо вставить
дополнительный newline после каждого блока кода PHP, что заставить РНР выводить новые строки. Почему PHP этого не делает? Потому что при форматировании нормального
HTML это обычно облегчает вам жизнь, поскольку эти newline вам не нужны,
а иначе пришлось бы создавать строки огромной длины или как-нибудь иначе
делать исходник страницы нечитабельным, чтобы получить нужный эффект.<pre>
<?php echo "This should be the first line."; ?>
<?php echo "This should show up after the new line above."; ?>
</pre>
Функциям
Функция getallheaders() сделает это, если вы запускаете PHP как Apache-модуль. Так, следующий участок кода покажет вам все шапки/headers запроса:
$headers = getallheaders(); foreach ($headers as $name => $content) { echo "headers[$name] = $content<br> "; } |
Здесь модель безопасности IIS терпит неудачу. Это проблема, общая для всех CGI-программ, работающих под IIS. Здесь нужно создать обычный HTML-файл (не разбираемый PHP) как страницу для входа в аутентифицируемой директории. Затем используйте тэг META для перенаправления на PHP-страницу или сделайте ссылку на PHP-страницу. Тогда PHP распозн́ает аутентификацию корректно. С модулем ISAPI проблем не возникает. Это не должно влиять на другие NT web-серверы. См. дополнительно http://support.microsoft.com/support/kb/articles/q160/4/22.asp.
Netscape более строг в отношении html-тэгов (таких как table), нежели IE. Может помочь запуск вашего html-вывода через html validator, такой как validator.w3.org. Например, это может происходить из-за отсутствия закрывающего тэга </table>.
Также и IE и Lynx игнорируют любые NUL’и (