2008.01.01
PHP独習中 - return未定義の関数の戻り値はNULL
- 地獄のようにどうでもいいのだけれど、本に載ってなかったのでテストしてみたらNULLだった
- ふつうだー
テストコード
<?php
function test() {
print ("exec test()<p />");
}
$ret = test();
print(gettype($ret));
?>
結果
exec test()
NULL
じゃーん。NULLでしたー。
2008.01.01
<?php
function test() {
print ("exec test()<p />");
}
$ret = test();
print(gettype($ret));
?>
exec test()
NULL
じゃーん。NULLでしたー。
実行テスト用 -> http://www.masayashi.com/php/test/formpost.html
<script>alert("こんにちはこんにちは!!")</script>
みたいな入力を与えたら、出力側でスクリプトが実行される。一時流行ったXSS(クロスサイトスクリプティング)ってやつ。
<html> <head> <title>フォーム入力</title> </head> <body> フォームからの入力 <form action="formput.php" method="post"> <input type="text" name="name" value="(´・ω・`)" /> <!-- ここの"name"をデータ取り出すときにつかうよー --> <input type="submit" value="submit" /> <!-- いってらっしゃい --> </form> </body> </html>
<html>
<head>
<title>フォーム出力</title>
</head>
<body>
<strong>フォームからの入力を受けての出力</strong><p /><p />
<?php
$name = $_POST{'name'}; //POSTでもらったデータ
print ("受け取ったデータをそのまま => $name <p />");
// 上は$nameに<script>タグを入れて、変なコード実行させられるので危険!
// XSS(クロスサイトスクリプティング)っていうらしいよ!
print ("受け取ったデータにhtmlspecialchars() => ".htmlspecialchars($name)."<p />");
// htmlspecialchars()で"<>"とかを実際参照の"<>"に変換しとこうぜー
// これで絶対完璧ってわけではないけれど、最低限のマナー
?>
</body>
</html>
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| « 12月 | 2月 » | |||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | ||