ヒアドキュメントについての説明と解説

このQ&Aのポイント
  • ヒアドキュメントについて何度も質問してしまっていて大変もうしわけないのですが、今度はヒアドキュメントについてわからなくなってしまいました。
  • ヒアドキュメントは任意の識別文字列を使って複数行にわたるテキストを表現する方法です。
  • ヒアドキュメントを使うことで、HTMLやSQLなどのテンプレートを簡単に生成することができます。
回答を見る
  • ベストアンサー

ヒアドキュメントについて

何度も質問してしまっていて大変もうしわけないのですが、今度はヒアドキュメントについてわからなくなってしまいました。 ソースは <html> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8"> <input type="hidden" name="ie" value="UTF-8"> <title>7-4 MySQLクラスでのデータの表示</title> </head> <body> <b>入力された条件&nbsp;&nbsp;&nbsp;&nbsp;</b> <?php // 検索条件の表示 print "直接入力:"; print $_POST['chokusetsu']; print "&nbsp;&nbsp;&nbsp;&nbsp;読み:"; print $_POST['yomi']; print "&nbsp;&nbsp;&nbsp;&nbsp;画数:"; print $_POST['kakusuu']; print "&nbsp;&nbsp;&nbsp;&nbsp;部首:"; print $_POST['busyu']; print "&nbsp;&nbsp;&nbsp;&nbsp;の検索結果"; $search_key1 = addslashes($_POST['chokusetsu']); $search_key2 = addslashes($_POST['yomi']); $search_key3 = addslashes($_POST['kakusuu']); $search_key4 = addslashes($_POST['busyu']); //print $search_key1; //$search1にはきちんと値が入っている require_once("mysql.php");// MySQLへのID・パスワードの取得をするファイルへのアクセス function kensaku($str1,$str2,$str3,$str4){ $mysql = new MySQL; $sql = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; $row=$mysql->query($sql); echo <<<EOT <TABLE width="3000" frame="border" border="3" cellspacing="1" cellpadding="3"> <TBODY> <TR><TH>id</TH><TH>漢字</TH><TH>音読み</TH><TH>訓読み</TH> <TH>特殊読み</TH><TH>ピンイン</TH><TH>部首</TH><TH>画数</TH> <TH>字源</TH><TH>異体字</TH><TH>繁体字</TH><TH>簡体字</TH> <TH>意味</TH><TH>用例</TH><TH>同訓異字</TH><TH>対義語</TH> <TH>品詞</TH><TH>日本語能力検定級</TH><TH>熟語1</TH> <TH>熟語2</TH><TH>熟語3</TH></TR> while ($row = $mysql->fetch()){ <TR> <TD align="center"><?=$row['id']?></TD> <TD align="center"><?=$row['kanji']?></TD> <TD align="center"><?=$row['onyomi']?></TD> <TD align="center"><?=$row['kunyomi']?></TD> <TD align="center"><?=$row['tokusyu']?></TD> <TD align="center"><?=$row['pinin']?></TD> <TD align="center"><?=$row['busyu']?></TD> <TD align="center"><?=$row['kakusuu']?></TD> <TD align="center"><?=$row['jigen']?></TD> <TD align="center"><?=$row['itaiji']?></TD> <TD align="center"><?=$row['hantaiji']?></TD> <TD align="center"><?=$row['kantaiji']?></TD> <TD align="center"><?=$row['imi']?></TD> <TD align="center"><?=$row['yourei']?></TD> <TD align="center"><?=$row['doukun']?></TD> <TD align="center"><?=$row['taigigo']?></TD> <TD align="center"><?=$row['hinshi']?></TD> <TD align="center"><?=$row['nihongo']?></TD> <TD align="center"><?=$row['jyukugo1']?></TD> <TD align="center"><?=$row['jyukugo2']?></TD> <TD align="center"><?=$row['jyukugo3']?></TD></TR> } </TBODY> </TABLE> EOT; } kensaku($search_key1,$search_key2,$search_key3,$search_key4); ?> </body> </html> です。エラーとしてはsyntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRINGが表示されます。エラーの原因がよくわからず、困っています。何か、お気づきの点があれば意見が欲しいです。お願いします。

  • PHP
  • 回答数1
  • ありがとう数2

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

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4851/10265)
回答No.1

二重引用符・ヒアドキュメントの中では、配列要素参照は{}で囲わないといけません。下記に説明があります。 http://www.php.net/manual/ja/language.types.string.php#language.types.string.parsing ただ、そもそも、ここでヒアドキュメントを使うのが間違っています。PHPでのプログラムの書き方の根本をわかっていないようです。 もっとサンプルを見て勉強しましょう。 あと、addslashes()はSQLインジェクションの可能性が残るので使ってはいけない関数です。mysql_real_escape_string()を使いましょう。

ritsurin03
質問者

お礼

ご指摘ありがとうございます。 本を何冊か見てphpの中でテーブルを表現する=ヒアドキュメントを使用するという結論に到ったのですが、この場合はヒアドキュメントをもちいないのでしょうか?? 僕がやりたいことは自分で定義した関数のなかでテーブルを表現するということがしたいです。

関連するQ&A

  • ヒアドキュメントについて

    以前質問しましたが、解決できませんでした。 ヒアドキュメント内での多次元配列の扱いで悩んでいます。 ソースは <?php require_once("mysql.php");// MySQLへのID・パスワードの取得をするファイルへのアクセス function kensaku($str1,$str2,$str3,$str4){ $mysql = new MySQL; $sql = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; $row=$mysql->query($sql); echo <<<EOM <TABLE width="3000" frame="border" border="3" cellspacing="1" cellpadding="3"> <TBODY> <TR><TH>id</TH><TH>漢字</TH><TH>音読み</TH><TH>訓読み</TH> <TH>画数</TH><TH>部首</TH></TR> while ($row = $mysql->fetch()){ <TR> <TD align="center"><?={$row['id']}?></TD> <TD align="center"><?={$row['kanji']}?></TD> <TD align="center"><?={$row['onyomi']}?></TD> <TD align="center"><?={$row['kunyomi']}?></TD> <TD align="center"><?={$row['kakusuu']}?></TD> <TD align="center"><?={$row['busyu']}?></TD></TR> } </TBODY> </TABLE> EOM; } なんですが、うまくいきません。 $row=$mysql->query($sql); のあとでprint文で$rowの中身を表示させたらきちんと入っているのでecho <<<EOM以降がおかしいものと思います。 エラーの内容としてはsyntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRINGと表示されてしまいます。これがどうしてもやらないといけないことでしてものすごく困っています。。初心者の質問で大変申し訳ないです。

    • ベストアンサー
    • PHP
  • フレームをまたいだ非表示・表示の切り替えについて

    現在、フレーム&MySQLを用いたページを作成しています。 ページを左と右の二つにわけてて、 左のソースは <html> <head> <title>単漢字学習</title> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <H2>単漢字検索項目</H2> <P><b>検索項目を入力して下さい<P>(複数選択可)</P></b></P> <form name="form1" action="demo2.php" method="post" target="migi"> 漢字直接入力エリア <TEXTAREA name = "chokusetsu" cols="5" rows="2" wrap="off"></TEXTAREA><BR><BR> </TEXTAREA> 漢字読み入力エリア <TEXTAREA name = "yomi"cols="5" rows="2" wrap="off"></TEXTAREA><BR><BR> </TEXTAREA> <P>画数</P> <SELECT name="kakusuu"> <OPTION value="" selected>----画数を選択してください----</OPTION> <OPTION value="1">1画</OPTION> <OPTION value="2">2画</OPTION>   中略 </SELECT><BR><BR> <P>部首</P> <SELECT name="busyu"> <OPTION value="" selected>----部首を選択してください----</OPTION> <OPTION value="一部 いち">一部 いち</OPTION> <OPTION value="│部 ぼう">│部 ぼう</OPTION>   中略 </SELECT><BR><BR><BR> <input type="submit" value="送信"> <input type="reset" value="リセット"> </body> </html> となっていて 右ページのソースは <?php require_once("mysql.php"); ?> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8"> <input type="hidden" name="ie" value="UTF-8"> <title>7-4 MySQLクラスでのデータの表示</title> </head> <body> <b>入力された条件&nbsp;&nbsp;&nbsp;&nbsp;</b> <?php print "直接入力:"; print $_POST['chokusetsu']; print "&nbsp;&nbsp;&nbsp;&nbsp;読み:"; print $_POST['yomi']; print "&nbsp;&nbsp;&nbsp;&nbsp;画数:"; print $_POST['kakusuu']; print "&nbsp;&nbsp;&nbsp;&nbsp;部首:"; print $_POST['busyu']; print "&nbsp;&nbsp;&nbsp;&nbsp;の検索結果"; $search_key1 = addslashes($_POST['chokusetsu']); $search_key2 = addslashes($_POST['yomi']); $search_key3 = addslashes($_POST['kakusuu']); $search_key4 = addslashes($_POST['busyu']); $mysql = new MySQL; $sql = "SELECT * FROM tankanji WHERE (onyomi like '%$search_key2%' OR kunyomi like '%$search_key2%') AND kanji like '%$search_key1%' AND busyu like '%$search_key4%' AND kakusuu like '%$search_key3%'"; $mysql->query($sql); // 検索件数の表示 ?> <TABLE width="3000" frame="border" border="3" cellspacing="1" cellpadding="3"> <TBODY> <TR><TH>id</TH><TH>漢字</TH><TH>音読み</TH><TH>訓読み</TH><TH>部首</TH><TH>画数</TH></TR> <?php while($row = $mysql->fetch()){ ?> <TR> <TD align="center"><?=$row['id']?></TD> <TD align="center"><?=$row['kanji']?></TD> <TD align="center"><?=$row['onyomi']?></TD> <TD align="center"><?=$row['kunyomi']?></TD> <TD nowrap align="center"><?=$row['busyu']?></TD> <TD align="center"><?=$row['kakusuu']?></TD></TR> <?php } ?> </TBODY></TABLE> </body> </html> こんな感じです。 現在では左ページのテキストボックスやプルダウンメニューから操作をしてデータを右ページに送らなくても右ページにはテーブルが出現してしまってます。この現象を左ページからデータ入力があった場合のみテーブルを表示させたいのですが、このようなことはできるのでしょうか? 誰か詳しい方お願いします。

    • ベストアンサー
    • HTML
  • クラスについて

    今作っているプログラムのソースが以下のようです <html> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8"> <input type="hidden" name="ie" value="UTF-8"> <title>7-4 MySQLクラスでのデータの表示</title> </head> <body> <b>入力された条件&nbsp;&nbsp;&nbsp;&nbsp;</b> <?php // 検索条件の表示 print "直接入力:"; print $_POST['chokusetsu']; print "&nbsp;&nbsp;&nbsp;&nbsp;読み:"; print $_POST['yomi']; print "&nbsp;&nbsp;&nbsp;&nbsp;画数:"; print $_POST['kakusuu']; print "&nbsp;&nbsp;&nbsp;&nbsp;部首:"; print $_POST['busyu']; print "&nbsp;&nbsp;&nbsp;&nbsp;の検索結果"; $search_key1 = addslashes($_POST['chokusetsu']); $search_key2 = addslashes($_POST['yomi']); $search_key3 = addslashes($_POST['kakusuu']); $search_key4 = addslashes($_POST['busyu']); //print $search_key1; //$search1にはきちんと値が入っている require_once("mysql.php");// MySQLへのID・パスワードの取得をするファイルへのアクセス //require_once("kanjiteigi.php"); //ユーザ定義関数ファイルへのアクセス function kensaku($str1,$str2,$str3,$str4){ $GLOBALS["mysql"] = new MySQL; $GLOBALS["sql"] = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; $GLOBALS["mysql"]->query($GLOBALS["sql"]); } // 検索条件を変数に代入してDB内を検索 kensaku($search_key1,$search_key2,$search_key3,$search_key4); //print $sql; //$mysql->query($sql); ?> //require_once("kanjiteigi.php");このような形でコメントアウトしてますが、本当はkanjiteigi.phpの中に function kensaku($str1,$str2,$str3,$str4){ $GLOBALS["mysql"] = new MySQL; $GLOBALS["sql"] = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; $GLOBALS["mysql"]->query($GLOBALS["sql"]); } と記述している関数をいれて参照してきたいのですが、kanjiteigi.phpにどのような記述をしていいかで悩んでいます。グローバル変数とかもややこしくて… どなたかクラスに詳しい方おられますでしょうか?? ちなみにkanjiteigi.phpの中に <?php class kanjiteigi{ // ●:ユーザ定義関数 // ○ demo1.htmlで入力する検索条件を入力し、その条件で検索するSQL文の発行し、DB内を検索 // ($str0=検索するDBのテーブル名、$str1=漢字、$str2=読み、$str3=画数、$str4=部首) // DB内を検索 var $mysql; var $sql; function kensaku($str1,$str2,$str3,$str4){ $GLOBALS["mysql"] = new MySQL; $GLOBALS["sql"] = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; $GLOBALS["mysql"]->query($GLOBALS["sql"]); } } ?> としてもダメでした

    • 締切済み
    • PHP
  • ユーザー定義関数について

    ユーザー定義関数について悩んでます。 ソースファイル <?php $search_key1 = addslashes($_POST['chokusetsu']); $search_key2 = addslashes($_POST['yomi']); $search_key3 = addslashes($_POST['kakusuu']); $search_key4 = addslashes($_POST['busyu']); print $search_key1; //$search1にはきちんと値が入っている require_once("mysql.php");// MySQLへのID・パスワードの取得をするファイルへのアクセス function kensaku($str1,$str2,$str3,$str4){ $GLOBALS["mysql"] = new MySQL; $GLOBALS["sql"] = "SELECT * FROM tankanji WHERE kanji like '%$str1%' AND (onyomi like '%$str2%' OR kunyomi like '%$str2%') AND kakusuu like '%$str3%' AND busyu like '%$str4%'"; } // 検索条件を変数に代入してDB内を検索 kensaku($search_key1,$search_key2,$search_key3,$search_key4); $mysql->query($sql); ?> なんですが、ユーザー定義関数を用いてDB内部を検索しようとしているのですが、$search_key1,$search_key2,$search_key3,$search_key4の値がうまく関数の中で使われなくて悩んでいます。グローバル関数とやらも自分なりには試しましたが、解決しませんでした。 ようは $search_key1 = addslashes($_POST['chokusetsu']); $search_key2 = addslashes($_POST['yomi']); $search_key3 = addslashes($_POST['kakusuu']); $search_key4 = addslashes($_POST['busyu']); の$search_key1,$search_key2,$search_key3,$search_key4を$str1,$str2,$str3,$str4に各々代入してsql文を発行しようとしてますが、うまくいかないのです。 どなたか、原因がわかる方いらっしゃるでようか??

    • ベストアンサー
    • PHP
  • php + mysql でフォーム作成時のエラー

    データベースから取り出したデータをラジオボタンで選択し、それをデータベース(別のテーブル)に追加させる機能を作りたいです。 非常に初歩的なことだとは思うのですがご教授ください。 MySQL 4.0.27 PHP 5.2.11 <FORM ACTION="cone3.php" METHOD="post"> <?php $srv = ""; // サーバー名 $id = ""; // ユーザーID $passwd = "; // パスワード $dbn = ""; // データベース名 $sql = "SELECT code, lname, lecturer, kind, gradetype FROM Lecture"; // SQL文 // データベースに接続する $db = mysql_connect($srv,$id,$passwd); mysql_select_db($dbn,$db); $rs = mysql_query($sql,$db); //--- テーブルのレイアウト --- 開始 -----------------------> print("<TABLE><TR>"); print("<TR><th> </th><th>講義名</th><th>教員</th><th>科目区分</th><th>配当学年</th></tr>"); while($row = mysql_fetch_array($rs)) { print '<tr><td><input type="radio" name="regist" value="$row['code']"></td>'; print '<td>' . $row['lname'] . '</td>'; print '<td>' . $row['lecturer'] . '</td>'; print '<td>' . $row['kind'] . '</td>'; print '<td>' . $row['gradetype'] . '</td>'; print '</tr>'; print ("</TR>"); } print("</TABLE>"); print_r($_POST); echo "<br />\n"; mysql_free_result($rs); mysql_close($db); //--- 終了 ---> ?> <input type="submit" name="submit" value="送信"> </form> 以上のようなソースでラジオボタンで配列の$row[code]の値を送りたいんですがうまくいきません。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • tableの外枠をCSSで表示させない方法

    HTMLで作ったテーブルの外枠の縦線をCSSで表示させないようにしたいのですが可能でしょうか? HTMLはさわらずにできる限りCSSでやりたいと思い、いろいろ試してみましたがうまくいきませんでした。 線種はsolidを使いたいです。 よろしくお願いいたします。 <html> <head> <title>css table</title> <style type="text/css"> <!-- table.sample { width:550px; height:auto; border:solid 1px; border-collapse:collapse; border-left:none; border-right:none; } .sample th { width:100px; border:solid 1px; } .sample tr { border:solid 1px; } .sample td { border:solid 1px; } --> </style> </head> <body> <table class="sample" frame="hsides"> <tr> <th scope="row">&nbsp;</th> <td>&nbsp;</td> <td></td> <td></td> </tr> <tr> <th scope="row">&nbsp;</th> <td>&nbsp;</td> <td></td> <td></td> </tr> <tr> <th scope="row">&nbsp;</th> <td>&nbsp;</td> <td></td> <td></td> </tr> <tr> <th scope="row">&nbsp;</th> <td>&nbsp;</td> <td></td> <td></td> </tr> <tr> <th scope="row">&nbsp;</th> <td>&nbsp;</td> <td></td> <td></td> </tr> </table> </body> </html>

    • ベストアンサー
    • CSS
  • 楽天ブログで表を書いたら上部の余白が消せません。

    ホームページからコピーして文字位置を変えただけなのに、上部に余白が出来てしまい、消そうとしてbodyタグを使ったら使用禁止で使えません。 どこが悪いのでしょうか? <コピーして自分で書いたもの> <center> <table border=1> <tr> <th>●●●</th> <th>●●●</th> <th>●●●</th> <th>●●●</th> </tr> <tr> <td align=center>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> </tr> <tr> <td align=center>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> </tr> <tr> <td align=center>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> <td align=right>●●●</td> </tr> </table></center>

  • たびたび申し訳ありません!大至急ご教授願います。

    前回、PHPとMySQLの質問をさせていただきました(http://okwave.jp/qa/q7893483.html)。 pearについては、無事問題が解決し、PHPとMySQLの方も、何も表示されない状態から表示される状態まで進みました。ありがとうございました。 しかし、検索結果がうまく反映されず、MySQLにあるデータが表示されてしまいます。 私は、 $select_sql= <<<EOS SELECT * FROM moeinfo WHERE name like '%$search_key%' OR address like '%$search_ken%' EOS; の部分か、 $search_key = $_POST['search_key']; $search_ken = $_POST['search_ken']; の部分がいけないのではないかと考えているのですがいかがでしょうか? また初歩的なミスだとは思いますが、ご教授して頂けるとありがたく思います。よろしくお願いいたします。(画像醜いかもしれません!申し訳ないです。) Windows7 PHP 5.4.9 MySQL 5.5 Apach 2.2.22 phpMyAdmin 3.5.4 <検索フォーム> <html> <head> <title>PHPのテスト</title> <meta http-equiv="Content-Type" content="text/html; Charset=Shift_JIS"> </head> <center> <body bgcolor="#FFFFFF" text="#000000"> <font size="4">PHPのテスト</font> <form name="form1" method="post" action="list.php"> <table width="550" border="10" cellspacing="1" cellpadding="0"> <tr> <td><center>キーワード</td> <td><center><input type="text" name="search_key" size="55" maxlength="300"></td> </tr> <tr> <td><center>開催地</td> <td> <center> <select name="search_ken" > <option value="" selectd>----- 都道府県を選んでください -----</option> <option value="北海道">北海道</option> <option value=青森県">青森県</option> <option value="岩手県">岩手県</option> <option value="宮城県">宮城県</option>         ~~~省略~~~ <option value="宮崎県">宮崎県</option> <option value="鹿児島県">鹿児島県</option> <option value="沖縄県">沖縄県</option> </select> </td> </tr> </table> <br> <input type="submit" value="検 索"> </form> </body> </html> <検索結果> <html> <head> <title>萌えおこしイベントデータベース</title> </head> <body> <?php require_once("MDB2.php"); $dbUser = "root"; $dbPass = "im1907720"; $dbHost = "localhost"; $dbName = "moe_db"; $dbType = "mysql"; $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; $conn = MDB2::connect($dsn); if(MDB2::isError($conn)) { die($conn -> getMessage()); } $conn -> disconnect(); //POSTされたデータを受け取り、エスケープします。 $search_key = $_POST['search_key']; $search_ken = $_POST['search_ken']; //$select_sql=mysql_query('SELECT * FROM moeinfo WHERE name like '%$search_key%' OR address like '%$search_ken%''); $select_sql= <<<EOS SELECT * FROM moeinfo WHERE name like '%$search_key%' OR address like '%$search_ken%' EOS; $result=$conn->query($select_sql); if(MDB2::isError($result)) { die($result->getMessage()); } $count=$result->numRows(); print "検索結果は" .$count. "件です。<br>"; if($count> 0){ ?> <table width="1000" border="1" cellspacing="0" cellpadding="8"> <tbody> <tr><th>イベント名</th><th>開催地</th><th>サイトURL</th></tr> <?php while($rs=$result->fetchRow(MDB2_FETCHMODE_ASSOC)) { ?> <tr><td aling="center"> <?=$rs['name']?></td> <td><?=$rs['address']?></td> <td><?=$rs['url']?></td> </tr> <?php } ?> </tbody> </table> <?php } $result->free(); $conn->disconnect(); ?> </body> </html>

    • 締切済み
    • PHP
  • PHP+MYSQLで検索画面を作成しています。プルダウンとキーワードを使用していますがうまくいきません。

    住所録を作成し、プルダウンとキーワードで作成しましたがうまくいきません。実行すると最後に記載のエラーがでます。教えてください。フリーワードだけの検索はうまくいきましたが。 ---kensaku.php--- <?php extract($_POST); $dfrom = sprintf("%04d-%02d-%02d",$year1,$mon1,$date1); $dto = sprintf("%04d-%02d-%02d",$year2,$mon2,$date2); if($kai == ''){ }else{ $jouken = "(ocrdate between '$dfrom' and '$dto')"; if ($kai <> "*"){ $jouken = "$jouken and kai like '%$kai%'"; } if ($fuk <> "*"){ $jouken = "$jouken and fuk like '%$fuk%'"; } if ($jic <> "*"){ $jouken = "$jouken and jic like '%$jic%'"; } if ($key1 <> ""){ $jouken = "$jouken and (keyword like '%$key1%' or detail like '%$key1%' or treat like '%$key1%' or remark like '%$key1%')"; if (key2 <> ""){ $jouken = "$jouken and (keyword like '%$key2%' or detail like '%$key2%' or treat like '%$key2%' or remark like '%$key2%')"; if (key3 <> ""){ $jouken = "$jouken and (keyword like '%$key3%' or detail like '%$key3%' or treat like '%$key3%' or remark like '%$key3%')"; } } } mysql_connect('localhost','***','****'); mysql_select_db('****'); $sql = "select * from jyusho where $jouken"; $result = mysql_query($sql); $num = mysql_num_rows($result); if ($num == 0){ echo "該当データがありません<br>"; exit; }else { echo "<table border=\"1\">\n"; echo "<tr>\n"; echo "<th>加入日</th>\n"; echo "<th>加入地域<br></th>\n"; echo "<th>加入県</th>\n"; echo "</tr>\n"; while($row = mysql_fetch_array($result)){ $id = $row["id"]; echo "<tr>"; echo "<td align=\"right\"><a href=\"meisai.php?id=$id\">",$id,"</a>\n"; echo "</td><td>"; echo $row["kai"]; echo "</td><td>"; echo $row["fuk"]; echo "</td><td>"; echo $row["jic"]; echo "</td></tr>"; }(ここまで170行目、次は、/htmlとなっています) ---ここまで--- エラーは、「Parse error: parse error, unexpected $end in c:\(省略)\kensaku.php on line 171」

  • VBAでWebページに入力&ボタンクリック

    URLがhttp://xxx.com/のページで次のようなフォームのときExcelで自動入力クリックするマクロを作りたいです。 <input type="hidden" name="room" value="aaaaa"/> <a name="regist" id="regist">総登録数</a> <table width="402" border="1"> <tr> <th align="center" colspan="2"><div align="left"><big>登録ページ</big></div></th> </tr> <tr> <td colspan="2">&nbsp;&nbsp;&nbsp;name <input type="text" size="20" name="name" value="" maxlength="20"> &nbsp;&nbsp;&nbsp;Email <input type="text" size="20" name="email" value=""> &nbsp;&nbsp;</td> </tr> <tr> <td align="center">pass</td> <td><input type="text" size="20" name="pw" maxlength="12" value=""></td> </tr> <tr> <td align="center">category</td> <td><select size="1" name="junle"> <option value="pp" selected="selected">カテゴリ選択</option> <option value="0">その1</option> <option value="1">その2</option> </select></td> </tr> <tr> <td align="center">title</td> <td><input type="text" size="55" name="title" maxlength="25" value=""></td> </tr> <tr> <td align="center">URL</td> <td><input type="text" size="55" name="url"></td> </tr> <tr> <td align="center">intro</td> <td><input type="text" name="comment" size="55" maxlength="50" value=""></td> </tr> <tr align="center"> <td><br></td> <td><input type="submit" name="mode" value="登録"> <input type="reset" value="クリア"></td> </tr> </table> 入力する内容は1行目のA,B,C・・にname,email,pass・・・が順番にそれぞれ入っています。