みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

phpのエラー(T_LNUMBER)について

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行目です。

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

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

よろしくお願いします。

投稿日時 - 2012-11-22 16:29:54

QNo.7810426

すぐに回答ほしいです

質問者が選んだベストアンサー

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

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

投稿日時 - 2012-11-22 18:53:09

お礼

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

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

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

ありがとうございます。

投稿日時 - 2012-11-22 21:49:19

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

もしかして、Mac使ってますか?
http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%82%AF%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5#.E3.83.90.E3.83.83.E3.82.AF.E3.82.B9.E3.83.A9.E3.83.83.E3.82.B7.E3.83.A5.E3.81.A8.E5.86.86.E8.A8.98.E5.8F.B7

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

投稿日時 - 2012-11-22 20:58:53

お礼

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

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

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

投稿日時 - 2012-11-22 21:51:05