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

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

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

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

PHP

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

Q&A

3回答

5249閲覧

登録フォームの出力結果がうまく出ない

rura

総合スコア70

MySQL

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

PHP

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

0グッド

1クリップ

投稿2016/09/27 14:14

###前提・実現したいこと
会員ページを登録後に編集ページを作って再登録したいのですが、
会員番号、受給者番号、ユーザーの名前、年齢、所属先選択、性別、都道府県を
コメントが最初にクリックしたときに文字が出てきません。
どうしたらよいでしょうか?
よろしくお願いします。

###該当のソースコード

<?php //connection.php(データベース連携)mgList.php(会員登録表)からの内容を編集するページ if ($_SERVER['REQUEST_METHOD'] == 'POST') { include ('connection.php');// $id_user = mysqli_real_escape_string($dbc,trim($_POST['user_id'])); $gender = htmlspecialchars($_POST['gender']); $q = mysqli_query($dbc ,"UPDATE users SET companynumber,id,Recipientnumber,company,first_name,last_name,tell, fax,email,gender,age,belong,zip,prefecture, city,bill,addressnam,coments,password,registration_date WHERE id = '$id_user'"); echo "<p>内容が更新されました</p>"; }else { echo "<p>現在のご登録内容です。変更される場合は該当箇所を修正の上で内容更新。</p>"; } //mysqli_close($dbc); ?> -省略- </table> <form method="POST" action="edit_user.php" class="contact"> <table> <tr> <th colspan="2">事業者およびその事業所</th> <td><input type="text" name="company" size="20" maxlength="50" value="<?php if (isset($_GET['company'])) {echo htmlspecialchars($_GET['company'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <th colspan="2">事業者番号</th> <td><input type="text" name="companynumber" size="10" maxlength="15" value="<?php if (isset($_GET['companynumber'])) {echo htmlspecialchars($_GET['companynumber'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th colspan="2">会員番号</th> <td><input type="number" name="user_id" size="10" maxlength="10" value="<?php if (isset($_GET['user_id'])) {echo htmlspecialchars($_GET['user_id'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <th colspan="2">受給者番号</th> <td><input type="number" name="Recipientnumber" size="10" maxlength="10" value="<?php if (isset($_GET['Recipientnumber'])) {echo htmlspecialchars($_GET['Recipientnumber'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <th colspan="2">ユーザー</th> <td>名前:<input type="text" name="first_name" value="<?php if (isset($_GET['first_name'])) {echo htmlspecialchars($_GET['first_name'],ENT_QUOTES,"UTF-8");} ?>"><br> フリガナ;<input type="text" name="last_name" value="<?php if (isset($_GET['lname'])) {echo htmlspecialchars($_GET['lname'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th colspan="2">年齢</th> <td><select name="age" value="<?php if (isset($_GET['age'])) {echo htmlspecialchars($_GET['age'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th colspan="2">所属先選択</th> <td><select name="belong" value="<?php if (isset($_GET['belong'])) {echo htmlspecialchars($_GET['belong'],ENT_QUOTES,"UTF-8");} ?>"> </td> </tr> <tr> <th colspan="2">性別</th> <td><input type="radio" name="gender" value="<?php if (isset($_GET ['gender'])) {echo htmlspecialchars($_GET['gender'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th colspan="2">パスワード</th> <td><input type="text" name="password" maxlength="50" value="<?php if (isset($_GET['password'])) {echo htmlspecialchars($_GET['password'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th rowspan="3"><label for="zip1">連絡先</label></th> <th>電話番号</th> <td><input type="tel" name="tell" value="<?php if (isset($_GET['tell'])) {echo htmlspecialchars($_GET['tell'],ENT_QUOTES,"UTF-8");} ?>"> <tr> <th>FAX</th> <td><input type="number" name="fax" value="<?php if (isset($_GET['fax'])) {echo htmlspecialchars($_GET['fax'],ENT_QUOTES,"UTF-8");} ?>"> <tr> <th>メール</th> <td><input type="text" name="email" size="20" maxlength="50" value="<?php if (isset($_GET['email'])) {echo htmlspecialchars($_GET['email'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th rowspan="5"><label for="zip1">ご住所</label></th> <th>郵便番号</th > <td> <input type="text" name="zip" id="zip" size="12" value="<?php if (isset($_GET['zip'])) {echo htmlspecialchars($_GET['zip'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th >都道府県</th > <td><select name="prefecture" id="prefecture" value="<?php if (isset($_GET['prefecture'])) {echo htmlspecialchars($_GET['prefecture'],ENT_QUOTES,"UTF-8");} ?>"></select></td> </tr> <tr> <th >市区町村</th > <td><input type="text" name="city" size="20" value="<?php if (isset($_GET['city'])) {echo htmlspecialchars($_GET['city'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th >番地番号</th > <td><input type="text" name="addressnam" id="address" value="<?php if (isset($_GET['addressnam'])) {echo htmlspecialchars($_GET['addressnam'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th >アパート・マンション</th > <td><input type="text" name="bill" id="address" value="<?php if (isset($_GET['bill'])) {echo htmlspecialchars($_GET['bill'],ENT_QUOTES,"UTF-8");} ?>"> </tr> <tr> <th colspan="2">コメント</th> <td><textarea name="comments" cols="55" rows="3"placeholder="何かあれば詳しく入力して下さい (10文字以上 1000文字以内)"></textarea></td> </tr> <tr> </table> <p><input type="reset" name="submit" value="やり直し"> <input type="submit" name="submit" value="内容更新"></p>

###試したこと
課題に対してアプローチしたことを記載してください

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報

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

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

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

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

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

kei344

2016/09/27 16:07

「コメントが最初にクリックしたときに文字が出てきません。 」とは?
guest

回答3

0

質問の意味がよく分かりませんが、コメント項目のところ、
rows="3"placeholder〜 の部分、placeholderの前に半角スペースが必要なのでは?

投稿2016/09/27 19:09

fromageblanc

総合スコア2724

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

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

rura

2016/09/28 05:26

ご回答ありがとうございます。 このページにある編集からのリンクでの表示しようとしています。 <?php // 本番環境ではログに記録する ini_set('log_errors','On'); // ログの保存先 ini_set('error_log','../log/php_error.log'); try { //connection.php(データベース連携)userform.php(登録画面)からの出力結果 include ('connection.php'); $q = "SELECT * FROM users"; $r = mysqli_query($dbc, $q); $num = mysqli_num_rows($r); if ($num > 0) { echo "<p><a href='output.php'> <b>あいうえお順</b></a>|<a href='orderbyname.php'> <b>番号順</b></a>| <a href='http://www.kaigo-wel.city.nagoya.jp/view/wel/top/'>ウェルネット愛知</a></p>"; echo "<p>現在の利用者登録数;".$num."名.</p>"; echo "<div class='dbs'>"; echo "<table border> <tr> <th>編集</th> <th>削除</th> <th>勤怠</th> <th>会員番号</th> <th>所属先企業名</th> <th>所属先選択</th> <th>会員名</th> <th>性別</th> <th>年齢</th> </tr>"; while ($row = mysqli_fetch_array($r)) { echo "<tr> <td><a href='edit_user.php?user_id =".$row['id']."&company=".$row['company']."&companynumber=".$row['companynumber']. "&fname=".$row['first_name']."&lname=".$row['last_name']."&Recipientnumber=".$row['Recipientnumber']."&age=".$row['age']. "&belong=".$row['belong']."&tell=".$row['tell']."&fax=".$row['fax']."&email=".$row['email']. "&gender=".$row['gender']."&password=".$row['password']."&zip=".$row['zip']. "&prefecture=".$row['prefecture']."&city=".$row['city']."&addressnam=".$row['addressnam']. "&bill=".$row['bill']."'>編集</a></td> <td><a href='delete.php?user_id =".$row['id']."&fname=".$row['first_name']."&lname=".$row['last_name']."'>削除</a></td> <td><a href='Record.php?user_id =".$row['id']."&Recipientnumber=".$row['Recipientnumber']. "&fname=".$row['first_name']."&companynumber=".$row['companynumber']. "&company=".$row['company']."'>勤怠</a></td> <td> ".$row['id']."</td> <td> ".$row['company']."</td> <td> ".$row['belong']."</td> <td>".$row['first_name']." ". $row['last_name']."</td> <td> ".$row['age']."</td> <td> ".$row['gender']."</td> </tr>"; } echo "</table>"; echo "</div>"; }else { echo "<p>現在,DBに登録がありません .</p>"; } mysqli_close($dbc); } catch (Exception $e) { var_dump($e); } ?>
7968

2016/09/28 07:06

コード内にURLを記載されておりますが、必要ないならURLは伏せた方がよいかと思います。 質問に記載したコードをそのまま本番環境でも使用しており、かつ脆弱性がある場合は、悪用される可能性が高くなると思うので、URLはダミー(例:http://○○○○.jp)で記載しておいた方がよろしいかと存じます。 直接的な回答ではないですが、コードを見るとPOSTとGETの両方を使用しているかと存じます。 何か意図があってGETを使っているのかもしれませんが、POSTを使うのが適切かと存じます。 【PHP超入門】HTTP(GET・POST)について http://qiita.com/7968/items/4bf4d6f28284146c288f 人にアドバイスできるほどの知識はないため、私のコメントに誤りがあれば、ご指摘ください。
guest

0

結局不具合の詳細がわかりませんが・・・
最初のソースのselectタグのとことかラジオのとことか、正常にレンダリングされない気がします。

<td><select name="prefecture" id="prefecture" value="<?php if (isset($_GET['prefecture'])) {echo htmlspecialchars($_GET['prefecture'],ENT_QUOTES,"UTF-8");} ?>"></select></td>

例えば$_GET['prefecture']が秋田の場合、こんな感じで展開されないとちゃんと表示されないです。

<select name="prefecture" id="prefecture"> <option value="北海道">北海道</option> <option value="青森">青森</option> <option value="秋田" selected>秋田</option> (略) <option value="沖縄">沖縄</option> </select>

あと他の方もおっしゃってますが、passwordなどをGETで扱うのはよくないですね。
遷移元の判定のためにGET/POSTを使い分けてるようですが、、、

投稿2016/09/28 09:45

fromageblanc

総合スコア2724

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

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

0

コメントのTEXTAREAに値を何も設定していないからでは?
$_GET['comments']を出力する必要がありそうです。

投稿2016/09/28 00:17

ttyp03

総合スコア16998

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問