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

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

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

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

Q&A

解決済

1回答

1084閲覧

<追記しました>コメントに評価項目を追加したが表示されない

torinoto7

総合スコア19

PHP

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

0グッド

0クリップ

投稿2018/05/30 12:33

編集2018/05/31 11:28

PHPの教科書を見ながらコメント機能をつけてみたのですが、
評価項目も追加しようと思い、手探りで行ってみました。
テーブルに評価のカラムを追加してPHPもカラム名を追記したのですが、
うまく表示されません。
関数についてもよく分かっていない状態なので詳細教えて下さい。

【テーブル内容】
イメージ説明

【PHP記載内容】

<?php // エラー表示 error_reporting(E_ALL); ini_set('display_errors', '1'); // データの受け取り $name = $_POST['name']; $title = $_POST['title']; $star = $_POST['star']; $body = $_POST['body']; //必須項目チェック(名前か本文が空ではないか?) if ($name == '' || $body == ''){ header('Location: CSS41.php'); // CSS41.phpへ移動 exit(); //終了 } //データベースに接続 $dsn = 'mysql:host=localhost;dbname=tabe1;charset=utf8'; $user = 'tabe1user'; $password = '1111'; // 設定したパスワード try { $db = new PDO($dsn, $user, $password); $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); //プリペアドステートメント作成 $stmt = $db->prepare(" INSERT INTO bbs (name, title, star, body, date ) VALUES (:name, :title, :star, :body, now() )" ); print_r($db->errorInfo()); //パラメータを割り当て $stmt->bindParam(':name', $name, PDO::PARAM_STR); $stmt->bindParam(':title', $title, PDO::PARAM_STR); $stmt->bindParam(':star', $star, PDO::PARAM_STR); $stmt->bindParam(':body', $body, PDO::PARAM_STR); //クエリの実行 $stmt->execute(); //CCSS41.phpに戻る header('Location: CSS41.php'); exit(); } catch(PDOException $e) { die ('エラー:' . $e->getMessage()); } ?>

【HTML記載内容】

<?php while ($row = $stmt->fetch()): $title = $row['title'] ? $row['title'] : '(無題)'; ?> <p>名前:<?php echo $row['name'] ?></p> <p>タイトル:<?php echo $title ?></p> <p>評価:<?php echo $row['star'] ?></p> <p><?php echo nl2br($row['body'], false) ?></p> <p><?php echo $row['date'] ?></p> <?php endwhile; //ページ数の表示 try { //プリペアドステートメント作成 $stmt = $db->prepare("SELECT COUNT(*) FROM bbs"); //クエリ $stmt->execute(); } catch (PDOException $e){ echo "エラー:" . $e->getMessage(); } //コメントの件数を取得 $comments = $stmt->fetchColumn(); //ページ数を計算 $max_page = ceil($comments / $num); echo '<p>'; for ($i = 1; $i <= $max_page; $i++){ echo '<a href="CSS41.php?page=' . $i . '">' . $i . '</a>&nbsp;'; } echo '</p>'; ?>

【WEB画面】

イメージ説明

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

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

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

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

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

m.ts10806

2018/05/31 00:37

自身が現在のコードをどこまで把握しているのか、分からないところ・分かっているところを明確にして具体的に記載してください。既に回答が付いている通り、おおよそここまで自力で組める人なのであればその程度の機能追加ができない理由が見当たりません。
guest

回答1

0

ベストアンサー

コピペしたのでしょうか?

コードを自前で書いたのでしたら(理解してるのでしたら)コメント機能を付けてるんだし何ができないのか?と思います。

せめてどこら辺がわからないのかを書かないと、
「テーブルに評価のカラムを追加してPHPにコードを追加する」
としか返答も来ない可能性があります・・・

投稿2018/05/30 13:53

landy77

総合スコア1614

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

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

torinoto7

2018/05/31 11:42

色んなご意見頂き有難うございました。 PHPの教科書を見ながら作成しており、まだまだ勉強不足の所があります。 試行錯誤した結果テーブルに評価のカラムを追加しPHPを修正したら表示できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問