![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_16.png?e8efa67)
PHP全然詳しくないです
簡易の掲示板のようなものを作っているのですが、テキストボックスに記入した内容をデータベースに保管し、そこからもう一度入力した内容を出力する方法が分からず、困っています。
board.phpのテキストボックスに入力→dbconnect2.phpでデータベースにUPDATE命令
dbconnect3.phpでデータベースから入力内容をSELECT命令→board.phpのテキストボックスの下部に入力内容を出力
こういった形にする予定です。
board.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>投稿画面</title>
</head>
<body>
<h3>メッセージ</h3>
<form method="POST" action="dbconnect2.php">
<div class="container">
<label for="message">投稿したい内容を入力してください(※200文字まで)</label><br />
<textarea rows="10" cols="20" id="message"
name="message"><?php print($_POST['message']); ?></textarea>
</div><br /><br />
<input type="submit" name="sent" value="送信する" />
</form><br /><br />
</body>
</html>
<?php
if (isset($_POST['sent'])) {
print($_row['message']); }
?>
そもそもdbconnect3.phpをどうやって繋げればいいのかも分からなくなってしまいました。
なので、その方法も回答よろしくお願いします…。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
まあまあ
画面設計を考慮しないで言うのも何なのですが、こういう従来系のWebアプリケーションのデザインパターンは俗に[BROWSE]+[EDIT]と呼ばれるもので、定番的な内容です。
基本設計は「処理」+「表示」であり、「表示」前に前画面から引継がれたデータを元に何らかの処理を行った後に画面を表示します。
データ引継ぎはForm送信であったり、クエリ文字列であったり、セッション・クッキーです。
■入力・編集画面(edit.php)
Formによる投稿画面表示
・投稿IDが指定されている場合
指定されている投稿をDBから取得して表示
隠しフィールド[ID]に投稿IDを設定
・投稿IDが指定されていない場合
新規投稿画面を表示
隠しフィールド[ID]に-1を表示
■一覧画面(browse.php)
データ処理と一覧表示
・入力・編集画面からの投稿内容が存在する場合
投稿内容にしたがいDBにINSERTまたはUPDATEを行う
・一覧画面から削除パラメータが存在する場合
投稿内容にしたがいDBにDELETEを行う
・共通
投稿一覧を表示
DBからデータを取得して表示
各行にedit.phpへのリンクを表示 <a href="edit.php?id=xxx">...</a>
各行にbrowse.phpへの削除リンクを表示 <a href="edit.php?mode=delete&id=xxx">...</a>
・更新項目表示(入力・編集画面からの投稿内容が存在する場合)
項目内容を表示
//==
入力・編集画面が小さい場合には、2つを結合して1画面にする場合もあります。
また、上記のようにクエリ文字列表示や、formのhiddenに生のid値を書き込むと、利用者サイドに類推されれますので、実際はセッションを使ったり、乱数CDでデータを特定します。
No.1
- 回答日時:
>board.phpのテキストボックスに入力→dbconnect2.phpで
>データベースにUPDATE命令
>dbconnect3.phpでデータベースから入力内容をSELECT命
>令→board.phpのテキストボックスの下部に入力内容を出力
さっぱり要領を得ません。
そもそもtextareaに入力した内容はDBに対してinsert文ではないのですか?update文を使うのは既存の投稿の編集(投稿番号とパスワードが必須)のときだけです。
データベースの(テーブルの)設計はどうなっているんでしょうか?まずはそれを提示してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日本からのアクセスと他国から...
-
URLの変わらないページをPHPで...
-
テキストリンクを2回クリックし...
-
PHPの値受け渡しとアンカーを一...
-
phpでの二重投稿防止について
-
onedrive にexcelファイルをア...
-
MySQLのベースに書かれたプログ...
-
フォントの色を変えるには?
-
トランザクションが原因?DBに...
-
PHPのif文でその処理を途中で抜...
-
透過PNGが透過されない!!
-
違法アップロードについて
-
BASP21メール送信(SMTP-AUTH認...
-
データベースにアクセスして結...
-
Subversionで、ファイルをリネ...
-
VBA 添付ファイルをつけてメー...
-
.phpファイルが、表示されない
-
ドラッグアンドドロップで画像...
-
phpのextension_dirを複数指定...
-
MySQLとPHPで日本語が文字化け...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
URLの変わらないページをPHPで...
-
テキストリンクを2回クリックし...
-
リダイレクトでPOST
-
検索結果が複数ページになるとき
-
LARAVEL モデル
-
例●●.php#00pリロードページ内...
-
【WordPress】メディアの一覧出力
-
header関数でページ移動する場...
-
cURLの413エラーの解決方法を教...
-
URLでスラッシュ区切りでパラメ...
-
携帯端末auのみpostで送ったデ...
-
phpでの二重投稿防止について
-
日本からのアクセスと他国から...
-
Internet Explorer ではこのペ...
-
ページ移動時にフォームから値...
-
phpinfoでloaded modulesが表示...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
PHPのif文でその処理を途中で抜...
-
別ファイルの変数を呼び出した...
おすすめ情報