
phpでホームページを作成中です。
MAMPで試作してます。SELECT文でテーブル一覧表示をしてるんですが、そこにリンクも一緒に表示させて、リンク先に飛ばせるようにしたいのですが、リンク先のマップアドレスの貼り付けが一覧で表示させるのが出来なくて困ってます。どなたかご教授お願いします。
---------------------------------------------------------------------------
概要:
例として、
テーブル名はmember、店舗id(主キー&A.I)、nameは店舗名、gmapは店舗のマップアドレスとさせていただきました。
create table member(
id int,
name varchar(255),
gmap varchar(255)
);
insert into member(
name,
gmap
) values(
'田中店',
'http://goo.gl/maps/××××'
);
---------------------------------------------------------------------------
以下のコードは店舗登録htmlフォームからPOSTで渡されてきてデータベースに追加してテーブルタグで一覧表示させるコードです。
<?php
省略
.
.
.
?>
<!DOCTYPE html>
<html lang="ja">
<head>
省略
.
.
</head>
<body>
<div>
<?php
$name = $_POST["name"];
$gmap = $_POST["gmap"];
//MySQLデータベースに接続する
try {
$pdo = new PDO($dsn, $user, $password);
// プリペアドステートメントのエミュレーションを無効にする
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
// 例外がスローされる設定にする
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// SQL文を作る
$sql = "INSERT INTO member (name, gmap) VALUES (:name, :gmap)";
// プリペアドステートメントを作る
$stm = $pdo->prepare($sql);
// プレースホルダに値をバインドする
$stm->bindValue(':name', $name, PDO::PARAM_STR);
$stm->bindValue(':gmap', $gmap, PDO::PARAM_STR);
// SQL文を実行する
if ($stm->execute()){
// レコード追加後のレコードリストを取得する
$sql = "SELECT * FROM member";
// プリペアドステートメントを作る
$stm = $pdo->prepare($sql);
// SQL文を実行する
$stm->execute();
// 結果の取得(連想配列で受け取る)
$result = $stm->fetchAll(PDO::FETCH_ASSOC);
// テーブルのタイトル行
echo "<table>";
echo "<thead><tr>";
echo "<th>", "ID", "</th>";
echo "<th>", "名前", "</th>";
echo "<th>", "地図", "</th>";
echo "</tr></thead>";
// 値を取り出して行に表示する
echo "<tbody>";
foreach ($result as $row) {
// 1行ずつテーブルに入れる
echo "<tr>";
echo "<td>", $row['id'], "</td>";
echo "<td>", $row['name'], "</td>";
echo "<td>", $row['gmap'], "</td>";
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
} else {
echo '<span class="error">追加エラーがありました。</span><br>';
};
} catch (Exception $e) {
echo '<span class="error">エラーがありました。</span><br>';
echo $e->getMessage();
}
?>
<hr>
<p><a href="<?php echo $×××× ?>">戻る</a></p>
</div>
</body>
</html>
---------------------------------------------------------------------------
上記のコードではid、店舗名、マップアドレスをテーブルで一覧表示させることは出来たのですが、
<table>タグの
echo "<td>", $row['gmap'], "</td>";
をリンクしたいのですが、うまくリンクさせることが出来ません。
<td><a herf="$row['gmap']">Google地図を見る</a></td>
と書いてもうまくいきません。
どうか、詳しく教えていただける方よろしくお願いします。
No.1ベストアンサー
- 回答日時:
><td><a herf="$row['gmap']">Google地図を見る</a></td>
typoですね、このままじゃリンクにはなりません、herf→href
でechoするならこう
echo "<td><a href=\"{$row['gmap']}\">Google地図を見る</a></td>";
ちなみに
$name = $_POST["name"];
$gmap = $_POST["gmap"];
としていますが存在確認が抜けるとnoticeがでるのでissetやfilter_inputで調整し、
空データをあたえてもそのままINSERTされるのがいやなら例外処理をいれてください
yambejpさん、回答ありがとうございます。
hrefのスペル間違い失礼いたしました。
早速、試させていただきました。
{}と\\をつけて実行したらキチンと表示されました。
また、外部リンク(新規タブ)の場合も考えて、target=\"_blank\" でも外部リンクで飛ばすことができました。
検索フォームにも応用させていただきます。
大変、勉強になりました。また、ご教授お願いします。
yambejpさん、どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチファイルでpingの結果を...
-
Dosブロンプトでtabを出力したい
-
switch()文で値の大小比較
-
shシェルスクリプト 空白行の...
-
phpで、可変項目のcsvデータ...
-
DBのハッシュ化したパスワード...
-
batファイルでPC名称の変更
-
syntax error, unexpected 'ech...
-
浮動小数点は 0 含まれますか
-
findstrのerrorlevel
-
コマンドプロンプトのスクリプ...
-
WindowsのイベントログをExcel...
-
php mysql SELECT文でテーブル...
-
コマンドプロンプト フォルダ内...
-
ゼロとNULLを区別して number_f...
-
echoの区切り方(コンマ又はピ...
-
csvの特定のキーワードを指定し...
-
【PHP】define() て便利なよう...
-
小数点以下0の非表示
-
ウイルスもどき
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
ゼロとNULLを区別して number_f...
-
findstrのerrorlevel
-
小数点以下0の非表示
-
switch()文で値の大小比較
-
syntax error, unexpected 'ech...
-
phpでcookieがうまく保存されない
-
Windowsのsetコマンドでの小数...
-
バッチファイルで、全てのウィ...
-
bashの関数の引数にスペースが...
-
DBのハッシュ化したパスワード...
-
コマンドプロンプト フォルダ内...
-
ウイルスもどき
-
pdftkを使った処理をバッチファ...
-
オブジェクトの中身の判定(PHP)
-
PHPでのパスワード制限のセキュ...
-
XMLのタグの有無をPHPで判定し...
-
batファイルでPC名称の変更
おすすめ情報