• ベストアンサー

なぜ、unexpected T_VARIABLEになるのでしょうか? 

WindowsXP機に、PHP5とPEARを入れています。 あるWebサイトに記述されている下記のサンプルスクリプトをコピペして(PEARは絶対パスに書き換えて)実行しましたが、次のエラーが出ます。全角スペースは入っていませんし、原因が分かりません。 なぜ、unexpected T_VARIABLEになるのでしょうか? どのようにすれば解決できるでしょうか? エラー Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in C:\Program Files\Apache Group\Apache2\htdocs\HQuickForm_test\QfrmSmpl.php on line 14 サンプルスクリプト一部抜粋: <?php require_once("C:\php\PEAR\HTML\QuickForm.php"); class QfrmSmpl{ var $_form; function QfrmSmpl($sbmtAct){ $this -> _form = new HTML_QuickForm("frmSmpl","post",$sbmtAct); } function setForm(){ $this -> _form -> addElement("text","txtName","名前(全角日本字):"); $this -> _form -> addElement("text","txtEname","名前(半角英字):"); $this -> _form -> addElement("text","txtEmail","E-mail:"); $this -> _form -> addElement("text","txtEmail2","E-mail(確認用):"); $this -> _form -> addElement("textarea","txtrComment","コメント:"); } $this -> _form -> applyFilter(__ALL__,"trim"); $this -> _form -> addRule("txtName","名前を入力!","required", null, "client"); $this -> _form -> addRule("txtEname","半角英字で入力!","alphanumeric", null, "client"); $this -> _form -> addRule(array("txtEmail","txtEmail2"),"メールアドレス不一致!","compare", null, "client"); $this -> _form -> addRule("txtEmail","無効なメールアドレス!","email", null, "client"); $this -> _form -> addRule("txtrComment","コメントを入力!","required", null, "client"); $this -> _form -> setRequiredNote("<font color='red'>*</font>必須入力"); } 以下略

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

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

検索したら似たようなスクリプトがあったんですが http://digit-01.com/ownpage/ownpage_quickform.html これの //フォーム入力チェックの定義(, null, "client")で、クライアント側でチェック function checForm(){ は function checForm(){ の前で改行が必要なようです

spindle
質問者

お礼

ご指摘の通りでした。なぜ気づかなかったのか、恥じ入るばかりです。 有難うございました。

その他の回答 (1)

noname#26650
noname#26650
回答No.1

> } > $this -> _form -> applyFilter(__ALL__,"trim"); 引用した1行目の } は、要るのでしょうか? この } でsetForm() が終了していますが、よいのでしょうか?

spindle
質問者

お礼

ANo.2のご指摘の通りで解決出来ました。 なお、ANo.1でご示唆頂いたように、エラーが出たとき、「視点を広げ、文脈を追って検証する」基本を心掛けたいと思います。有難うございました。