質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

768閲覧

phpのif文を教えてください

Nao0319

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2020/05/15 08:19

前提・実現したいこと

phpでDBのデータを表示したり登録編集ができるものをつくりました。
ここにページ内リンクであ行を押したらあ行まで飛ぶようにしたいのですがどのように実現すればいいでしょうか?
foreachのなかでif文を作ってhuriganaの値がなんの文字で始まってるかというのを作成して一致した時にあ行をechoで追加するみたいな感じだと思うのですがif文が分かりません。フラグなどもいると思うのですが・・・
長くなるとは思うのですが教えて頂けたら嬉しいです。
拙い文章ですがよろしくお願いします。

該当のソースコード

<?php try { $user = "testuser"; $password = "root"; $dbh = new PDO("mysql:host=localhost; dbname=naisen; charset=utf8", "$user", "$password"); $stmt = $dbh->query('SELECT * FROM m_shain ORDER BY hurigana'); $result = 0; $result = $stmt->fetchAll(PDO::FETCH_ASSOC); } catch (Exception $e) { echo 'エラーが発生しました。:' . $e->getMessage(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>内線一覧表</title> </head> <body> <h2>内線一覧表</h2> <input id="sbox1" id="s" name="s" type="text" placeholder="キーワードを入力" /> <input id="sbtn1" type="submit" value="検索" /></form> <form action="touroku.php" method="post"> <input type="submit" value="新規登録"> <input type="hidden" name="id" value="<?=$row['id']?>"> </form> <a href="#agyou">あ行</a> <a href="#kagyou">か行</a> <a href="#sagyou">さ行</a> <a href="#tagyou">た行</a> <a href="#nagyou">な行</a> <a href="#hagyou">は行</a> <a href="#magyou">ま行</a> <a href="#yagyou">や行</a> <a href="#ragyou">ら行</a> <a href="#wagyou">わ行</a>
</form> <?php echo "<table border='1'>\n"; echo "<tr>\n"; echo "<th>ID</th><th>性</th><th>名</th><th>フリガナ</th><th>部署</th><th>内線</th><th>業務用携帯</th><th>内線(携帯)</th><th>編集</th>\n"; echo "</tr>\n"; foreach ($result as $user) { echo "<tr>\n"; echo "<td>" . $user["id"] . "</td>\n"; echo "<td>" . $user["first_name"] . "</td>\n"; echo "<td>" . $user["last_name"] . "</td>\n"; echo "<td>" . $user["hurigana"] . "</td>\n"; echo "<td>" . $user["busyo"] . "</td>\n"; echo "<td>" . $user["naisen"] . "</td>\n"; echo "<td>" . $user["s_bangou"] . "</td>\n"; echo "<td>" . $user["s_naisen"] . "</td>\n"; echo "<td>\n"; echo "<a href=updata2.php?id=" . $user["id"] . ">編集</a>\n"; echo "</td>\n"; echo "</tr>\n"; } echo "</table>\n"; ?>
</body> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/05/15 08:38

コードはマークダウンのcode機能を利用してご提示ください
guest

回答1

0

ふりがなでテーブルをグルーピングしてidを振ってやることです
ただ、仮にagyouがなかったといにメニューから飛び先がない状態になります
メニューもphpで出力した方がよいかもしれません

投稿2020/05/15 08:45

yambejp

総合スコア116732

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問