質問編集履歴

4 PHPのバージョンを追記しました

kirisaki_aoi

kirisaki_aoi score 3

2019/10/10 17:36  投稿

[PHP]一覧画面でクリックしたタイトルの情報を詳細画面に表示させたい
お世話になっております。PHP初学者です。
PHPにて、一覧画面でクリックしたタイトルが持つ情報を詳細画面に表示させたいと思っています。
一覧画面にはデータベースに登録されている内容が正常に表示されていますが、詳細画面への受け渡し方が分かりません。
似た質問がいくつかあったのですが、解決に至らなかったため質問させて頂きました。
ソースコードは以下の通りです。
```index
<?php
//MySQLへ接続
$pdo = new PDO("mysql:host=localhost;dbname=PHPsample", "name", "password");
//テーブル取得
$st = $pdo->query("SELECT * FROM menulist");
//取得したデータを選択
$menus = $st->fetchAll();
require 't_index.php';
?>
```
```tindex
<?php require_once('menu.php'); ?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>shop</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <?php foreach ($menus as $menu): ?>
         <h3 class="menu-item-name">
         <a href="show.php?name=<?php echo $menu['name'] ?>" >
               <?php echo $menu['name'] ?>
             </a>
         </h3>
       <?php endforeach ?>
</body>
</html>
```
```show
<?php
require_once('menu.php');
$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_SPECIAL_CHARS);
$menu = "select * from menulist where name = ".$name;
?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>Progate</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <h3 class="menu-item-name"><?php echo $menu['name'] ?></h3>
      <p class="menu-item-type"><?php echo $menu['price'] ?></p>
</body>
</html>
```
情報や説明が足りないところがありましたら申し訳ありません。
ご教示いただけますと幸いです。よろしくお願い致します。
追記
失礼致しました。本文に記載させて頂きます。
テーブル作成時のcreate文です。
create table menulist (id int, name varchar(255), price int,image varchar(255),kind varchar(255));
insert into menulist values('1','hoge1','100','/picture/hoge1.jpg','1st');
insert into menulist values('2','hoge2','100','/picture/hoge2.jpg','1st');
insert into menulist values('2','hoge2','100','/picture/hoge2.jpg','1st');
PHPのバージョンは7.2です。
  • PHP

    26922 questions

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

  • MySQL

    7935 questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • データベース

    1057 questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

3 create文を修正しました。

kirisaki_aoi

kirisaki_aoi score 3

2019/10/10 17:35  投稿

[PHP]一覧画面でクリックしたタイトルの情報を詳細画面に表示させたい
お世話になっております。PHP初学者です。
PHPにて、一覧画面でクリックしたタイトルが持つ情報を詳細画面に表示させたいと思っています。
一覧画面にはデータベースに登録されている内容が正常に表示されていますが、詳細画面への受け渡し方が分かりません。
似た質問がいくつかあったのですが、解決に至らなかったため質問させて頂きました。
ソースコードは以下の通りです。
```index
<?php
//MySQLへ接続
$pdo = new PDO("mysql:host=localhost;dbname=PHPsample", "name", "password");
//テーブル取得
$st = $pdo->query("SELECT * FROM menulist");
//取得したデータを選択
$menus = $st->fetchAll();
require 't_index.php';
?>
```
```tindex
<?php require_once('menu.php'); ?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>shop</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <?php foreach ($menus as $menu): ?>
         <h3 class="menu-item-name">
         <a href="show.php?name=<?php echo $menu['name'] ?>" >
               <?php echo $menu['name'] ?>
             </a>
         </h3>
       <?php endforeach ?>
</body>
</html>
```
```show
<?php
require_once('menu.php');
$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_SPECIAL_CHARS);
$menu = "select * from menulist where name = ".$name;
?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>Progate</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <h3 class="menu-item-name"><?php echo $menu['name'] ?></h3>
      <p class="menu-item-type"><?php echo $menu['price'] ?></p>
</body>
</html>
```
情報や説明が足りないところがありましたら申し訳ありません。
ご教示いただけますと幸いです。よろしくお願い致します。
追記
失礼致しました。本文に記載させて頂きます。
テーブル作成時のcreate文です。
create table mydb.user (id int, name varchar(255), price int,image varchar(255),kind varchar(255));
create table menulist (id int, name varchar(255), price int,image varchar(255),kind varchar(255));
insert into menulist values('1','hoge1','100','/picture/hoge1.jpg','1st');
insert into menulist values('2','hoge2','100','/picture/hoge2.jpg','1st');
  • PHP

    26922 questions

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

  • MySQL

    7935 questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • データベース

    1057 questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

2 create文を追記致しました。

kirisaki_aoi

kirisaki_aoi score 3

2019/10/10 17:29  投稿

[PHP]一覧画面でクリックしたタイトルの情報を詳細画面に表示させたい
お世話になっております。PHP初学者です。
PHPにて、一覧画面でクリックしたタイトルが持つ情報を詳細画面に表示させたいと思っています。
一覧画面にはデータベースに登録されている内容が正常に表示されていますが、詳細画面への受け渡し方が分かりません。
似た質問がいくつかあったのですが、解決に至らなかったため質問させて頂きました。
ソースコードは以下の通りです。
```index
<?php
//MySQLへ接続
$pdo = new PDO("mysql:host=localhost;dbname=PHPsample", "name", "password");
//テーブル取得
$st = $pdo->query("SELECT * FROM menulist");
//取得したデータを選択
$menus = $st->fetchAll();
require 't_index.php';
?>
```
```tindex
<?php require_once('menu.php'); ?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>shop</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <?php foreach ($menus as $menu): ?>
         <h3 class="menu-item-name">
         <a href="show.php?name=<?php echo $menu['name'] ?>" >
               <?php echo $menu['name'] ?>
             </a>
         </h3>
       <?php endforeach ?>
</body>
</html>
```
```show
<?php
require_once('menu.php');
$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_SPECIAL_CHARS);
$menu = "select * from menulist where name = ".$name;
?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>Progate</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <h3 class="menu-item-name"><?php echo $menu['name'] ?></h3>
      <p class="menu-item-type"><?php echo $menu['price'] ?></p>
</body>
</html>
```
情報や説明が足りないところがありましたら申し訳ありません。
ご教示いただけますと幸いです。よろしくお願い致します。
ご教示いただけますと幸いです。よろしくお願い致します。
追記
失礼致しました。本文に記載させて頂きます。
テーブル作成時のcreate文です。
create table mydb.user (id int, name varchar(255), price int,image varchar(255),kind varchar(255));
insert into menulist values('1','hoge1','100','/picture/hoge1.jpg','1st');
insert into menulist values('2','hoge2','100','/picture/hoge2.jpg','1st');
  • PHP

    26922 questions

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

  • MySQL

    7935 questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • データベース

    1057 questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

1 showのパスが誤っていたので訂正しました。

kirisaki_aoi

kirisaki_aoi score 3

2019/10/10 17:27  投稿

[PHP]一覧画面でクリックしたタイトルの情報を詳細画面に表示させたい
お世話になっております。PHP初学者です。
PHPにて、一覧画面でクリックしたタイトルが持つ情報を詳細画面に表示させたいと思っています。
一覧画面にはデータベースに登録されている内容が正常に表示されていますが、詳細画面への受け渡し方が分かりません。
似た質問がいくつかあったのですが、解決に至らなかったため質問させて頂きました。
ソースコードは以下の通りです。
```index
<?php
//MySQLへ接続
$pdo = new PDO("mysql:host=localhost;dbname=PHPsample", "name", "password");
//テーブル取得
$st = $pdo->query("SELECT * FROM menulist");
//取得したデータを選択
$menus = $st->fetchAll();
require 't_index.php';
?>
```
```tindex
<?php require_once('menu.php'); ?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>shop</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <?php foreach ($menus as $menu): ?>
         <h3 class="menu-item-name">
         <a href="t_show.php?name=<?php echo $menu['name'] ?>" >
         <a href="show.php?name=<?php echo $menu['name'] ?>" >
               <?php echo $menu['name'] ?>
             </a>
         </h3>
       <?php endforeach ?>
</body>
</html>
```
```show
<?php
require_once('menu.php');
$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_SPECIAL_CHARS);
$menu = "select * from menulist where name = ".$name;
?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>Progate</title>
 <link rel="stylesheet" type="text/css" href="stylesheet.css">
 <link href='https://fonts.googleapis.com/css?family=Pacifico|Lato' rel='stylesheet' type='text/css'>
</head>
<body>
     <h3 class="menu-item-name"><?php echo $menu['name'] ?></h3>
      <p class="menu-item-type"><?php echo $menu['price'] ?></p>
</body>
</html>
```
情報や説明が足りないところがありましたら申し訳ありません。
ご教示いただけますと幸いです。よろしくお願い致します。
  • PHP

    26922 questions

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

  • MySQL

    7935 questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • データベース

    1057 questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る