プロが教えるわが家の防犯対策術!

Parse error: syntax error, unexpected T_LNUMBER, expecting ',' or ';' in /..../..../result.php on line 202

というエラーが出ます。

このエラーはresult.phpファイルの202行目に「,」もしくは「;」が足りないよという意味を示していると思うのですが、どう足りないのかというところでひっかかっています。

改行してみたりして行数を確認してみると、特定のコードの箇所に対するエラーでした。

以下が該当する202行目のコードです。

if ($p > 1) {
echo "<font size=¥"1¥"><a href=¥"$_SERVER[PHP_SELF]?p=$prev1¥"><</a></font>";
}

上記コードのecho "~~~~~の行が202行目です。

これはどこが間違っているのでしょうか?
もしくはそもそも違う部分で間違っている可能性があるということなのでしょうか。。。

アドバイスをいただけないでしょうか?

よろしくお願いします。

A 回答 (2件)

¥マークが何かおかしいようですね。


質問文の中のechoの行をそのままコピーして持っていくと、¥に続くダブルコーテーションをエスケープしてくれませんが、¥を打ち直すと正しく処理されました。

この手の問題の根本解決はシングルコーテーションとダブルコーテーションを使い分けることです。
echo "<font size='1'><a href='$_SERVER[PHP_SELF]?p=$prev1'><</a></font>";
と、HTML内をシングルコーテーションにすればエスケープ漏れなどのくだらないミスを減らせますよ。
    • good
    • 0
この回答へのお礼

¥マークに原因がありそうですね。

また、シングル・ダブルクォーテーションの使い分けに気をつけながら、まずはミスを減らしていく習慣をつけるようにします。

コードについてはアドバイス頂いた内容を参考にすることで、質問させていただいたエラーについては解決しました。

ありがとうございます。

お礼日時:2012/11/22 21:49

もしかして、Mac使ってますか?


http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83% …

Macで使う場合、円マークとバックスラッシュは別になっているケースが多いです。
その場合はOptionと一緒に押すとバックスラッシュになります
    • good
    • 0
この回答へのお礼

はい、macを使っています。

アドバイス頂いたポイントは盲点でした。ご指摘いただいた内容を踏まえるとやはり¥マークにエラーの原因があったようです。

ご教示ありがとうございます。

お礼日時:2012/11/22 21:51

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