プロが教える店舗&オフィスのセキュリティ対策術

三項演算子?について教えてください
やりたいことはHTMLのリンクをクリックするとクッキーの値が変わるようにするこです
本見てていまいち理解できませんでした


if (isset($_COOKIE["size"])) {
$size = intval($_COOKIE["size"]);
}

このリンクをクリックするとなぜcookieの値が変わるのですか?
?マークだから三項演算子ですよね?
?の意味がわかりません・・・?がつくとクッキーの値が変更できるのですか?
//ここからHTML
文字サイズ
<a href="test.php?size=20">中</a>
<a href="test.php?size=10">小</a>

A 回答 (3件)

No1です。



>urlについている?つければgetで送ったことになるんですか?

そうですよ。それがGETです。
例えば、

<form action="http://example.com/index.cgi" method="GET">
<input type="hidden" name="foo" value="xxxx">
<input type=submit value="submit">
</form>

というformでは、
urlを http://example.com/index.cgi?foo=xxxx のように組み立ててサーバーにリクエストします。
これは、<a href="http://example.com/index.cgi?foo=xxxx"> のリンクをクリックするのと全く同じです。
    • good
    • 0
この回答へのお礼

ありがとうございました
納得できました

お礼日時:2013/04/11 01:59

>urlについている?つければgetで送ったことになるんですか?


>HTMLのフォームから送るものと思い込んでいました

method="GET"のフォームで送ったときのURLを見れば一目瞭然です。

サーバサイドスクリプトを使うのであれば「httpの仕組み」は理解しておいた方がいいです。
    • good
    • 0
この回答へのお礼

httpの仕組みは深く考えなかったので勉強になりました

お礼日時:2013/04/11 01:54

>このリンクをクリックするとなぜcookieの値が変わるのですか?



変わりません。
あなたは何か勘違いしているのだと思います。
    • good
    • 0
この回答へのお礼

お答えいただきありがとうございます
getで取得しているのを書き忘れました
getで受け取ってクッキーに書き込んでありました

if (isset($_GET["size"])) {
$size = intval($_GET["size"]);
 }

setcookie("size", $size);


urlについている?つければgetで送ったことになるんですか?
HTMLのフォームから送るものと思い込んでいました

お礼日時:2013/04/10 23:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!