何度もお問い合わせし申し訳ありません。本日2度目の問い合わせです。
MySQL + PearDBでコンテンツを作っています。
テーブルのカラムは「ID、都道府県名(pre_name)、都道府県ID(pre_no)、市町村名(p_name)、市町村ID(p_no)、会社名(company).....」です。
完成イメージは下記です。
●ユーザーは都道府県IDをGETする。
●都道府県名がヘッダーのタイトルに掲載される。
●指定した都道府県下の市町村の一覧が表示される
●その一覧にあるリンクをクリックすると、市町村内のホテル一覧に飛ぶ
そこで作ったのが下のソースです。
ヘッダーでは、GETされた任意のpre_noに基づき、抽出されたpre_nameを1つだけ表示する。
本文では、GETされた任意のpre_noに基づき、抽出された市町村名を1回だけ表示する(その市町村名にはリンクが張られており市町村ごとのホテルページへ飛ぶことが可能)
【結果】
【ソース1】の場合
市町村名へのリンクが、登録会社の数だけ出現!
(表示数を指定しないためここまでは当たり前です)
ここから、繰り返しさえ制御できれば完成のはずです。
ここで対策としてfetchOneを使おうとしたのですが、fetchOneはMDBからの機能のようでpearDBでは使えません。
ということで、【ソース2】の表示数を指定することにしました。
$rs=$db->limitQuery("SELECT * FROM reform_co where pre_no = '" .addslashes($_GET['pre_no'])." ORDER BY p_no ASC",1,1);
しかし今回の使用用途では何故か
Parse error: syntax error, unexpected $end in になります。
どなたか、私の間違いをご指摘いただけますでしょうか?
************************************************************
【ソース1】(市町村名がホテルの数だけ出現)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<?PHP
// サーバー情報接続
require_once '../../config_n_reform.php';
require_once '/usr/share/pear/DB.php';
$db = DB::connect($dsn);
if (PEAR::isError($db)) {
die($db->getMessage());
}
print('接続に成功しました<br>');
$db->query('SET NAMES UTF8');
if (PEAR::isError($db)) {
die($db->getMessage());
}
//////GET URL表示
if(isset($_GET['pre_no'])){
$sql = "select * from reform_co where pre_no = '" .addslashes($_GET['pre_no'])."'";
}
$res =& $db->query($sql);
if (PEAR::isError($res)) {
die($res->getMessage());
}
//////タイトル表示
print<<<EOF
<title>
EOF;
$i = 0;
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) {
if ($i == 0) {
print($row['p_name']);
print<<<EOF
のホテルのご紹介
</title>
</head>
<body>
EOF;
}
$i++;
//////ホテル名1回のみ表示
$rs=$db->limitQuery("SELECT * FROM reform_co where pre_no = '" .addslashes($_GET['pre_no'])." ORDER BY p_name ASC",1,1);
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) {
print($row['pre_no']);
//市町村へのリンク ここは機能しています
//print '<a href="http://hoge.com/index1.php?p_no=';
//print($row['p_no'].'');
//print '">';
//print($row['p_name'].'<br>');
//print "</a><br><br>";
}
$db->disconnect();
?>
</body>
</html>
****************************************************
****************************************************
【ソース2】 繰り返しを制御したはずなのですが、エラー
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<?PHP
// サーバー情報接続
require_once '../../config_n_reform.php';
require_once '/usr/share/pear/DB.php';
$db = DB::connect($dsn);
if (PEAR::isError($db)) {
die($db->getMessage());
}
print('接続に成功しました<br>');
$db->query('SET NAMES UTF8');
if (PEAR::isError($db)) {
die($db->getMessage());
}
//////GET URL表示
if(isset($_GET['pre_no'])){
$sql = "select * from reform_co where pre_no = '" .addslashes($_GET['pre_no'])."'";
}
$res =& $db->query($sql);
if (PEAR::isError($res)) {
die($res->getMessage());
}
//////タイトル表示
print<<<EOF
<title>
EOF;
$i = 0;
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) {
if ($i == 0) {
print($row['p_name']);
print<<<EOF
のホテルのご紹介
</title>
</head>
<body>
EOF;
}
$i++;
//////ホテル名表示
$rs=$db->limitQuery("SELECT * FROM reform_co where pre_no = '" .addslashes($_GET['pre_no'])." ORDER BY p_name ASC",1,1);
while ($row =& $res->fetchRow(DB_FETCHMODE_ASSOC)) {
//市町村へのリンク
print '<a href="http://hoge.com/index1.php?p_no=';
print($row['p_no'].'');
print '">';
print($row['p_name'].'<br>');
print "</a><br><br>";
}
$db->disconnect();
?>
</body>
</html>
********************************************************
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- PHP PHP MySql ページング 2 2022/09/20 06:38
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
#1062 - '0' は索引 'PRIMARY' ...
-
Mac です。ローカルホストの ph...
-
同一のユーザー、同一商品のと...
-
次の時間帯の勝率の合計を求め...
-
mysqlがインストールされている...
-
書籍の内容はまともでしょうか?
-
[1000地域 × 10カテゴリー = 1...
-
データベースの複製の仕方(mysql)
-
下記の問合せを行うクエリを、P...
-
【初歩】ラジオボタンをつかっ...
-
SQL任意に並び替えをしたい
-
SQLです。こんな感じですか?あ...
-
うまくいきません教えてくださ...
-
クエリを教えてください select...
-
テーブル名が可変の場合のクエ...
-
my_itemsテーブルのIDにAUTO_IN...
-
BGMを教えてほしいです!
-
XamppのMySQLへとレコードが登...
-
「最高気温が35度以上の日を猛...
-
「第一回模試の3科目の各得点...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームから送信した値とMySQL...
-
php+MySqlでの検索ページ
-
プレースホルダを使った複数カ...
-
MySQLからのデータをページに1...
-
pdfファイルの管理システム
-
mysql+php リストボックスにつ...
-
mysql limitページ分割
-
接続ができません
-
SQLのVARCHARとVARCHAR2の違い
-
副問合せにLIKE文を使う方法は...
-
ODP.NETのバージョン確認
-
ERROR 1045 (28000) (using pas...
-
like句を使って日本語を検索す...
-
VBAで変数内に保持された二次配...
-
MySQLカラム名は日本語と英数字...
-
INT型は金額の型に使用するべき...
-
プライマリーキーの昇順でソー...
-
Float型の時の計算結果がおかしい
-
RPMのmysqlとmysql-serverの違い
-
ヌル値は記憶容量を必要としな...
おすすめ情報