以前請求書処理の質問をさせていただいたものです。
結果形は纏まったのですが、他にも似たような処理をするページもあり、色々と調べて実行してみたのですが、知識不足が故にわからない点がいくつかあり、質問させていただきます。
処理の流れとして、
・モーダルウィンドウを開き、MySQLから取得した顧客データを一覧表示
・選択した顧客データを各[会社名][郵便番号][住所]フォームに出力
(選択ボタンを押すとモーダルウインドウは閉じる)
という動作をさせたいです。
モーダルウインドウを開き顧客情報一覧を表示させるところまではできたのですが、
選択ボタンを押してからモーダルウインドウを閉じ情報をフォームに出力する、スクリプトの記述の仕方がわかりません。
以前の質問で教えて頂いたあるサイトを参照し、
$(function() {
$("#sentaku").click(function(){
$.ajax({
type: "POST",
url: "ajax.php",
data: {
"output":
},
success: function(j_data){
// 処理を記述
}
});
});
});
http://raining.bear-life.com/jquery/ajax%e3%82%92%e4%bd%bf%e7%94%a8...
とありますが、顧客情報一覧はwhile文で1行ごとに出力しているため、選択のリンクもhref="ajax.php?id='$row=['顧客ID']'" となるかと思いますが、この記述の仕方がどうしていいかわからないのと、フォームに出力するやり方(以前教えて頂いたサイトを参照したり、調べてみたりしたのですが、上手くいかず...)を教えて頂きたいのです。
フォームデータとモーダルウインドウ部分のソースコードを記載しておきます。
フォーム部
<form action = "kakunin.php" method="post"> <table><tr><th>会社名:</th><td><input type="text" name="coltd" size="45"></td><th>担当者様名:</th><td><input type="text" name="name" size="30"></td><th>郵便番号:</th><td><input type="text" name="znum" size="10"></td></tr> <tr><th>住所:</th><td colspan="5"><input type="text" name="zyuusyo" size="100%"></td></tr></table> <input type=submit name=send value="登録"> </form>モーダルウインドウ部分
<div id="modal-content-02" class="modal-content"> <!-- モーダルウィンドウのコンテンツ開始 --> <p><h2>顧客情報を選択してください</p> <p> <table> <tr><th>ID</th><th>会社名</th><th>担当者様名</th><th>住所</th><th>電話番号</th><td>選択</td></tr> <?php $con = mysql_connect('localhost', 'root', 'パスワード') or die('error(connect)'); mysql_select_db('testdb', $con) or die('error(select_db)'); mysql_set_charset('utf8'); $sql = 'select * from kokyaku'; $result = mysql_query($sql, $con); while ($row = mysql_fetch_array($result)) { echo '<tr><td>' .$row['顧客ID'] . '</td><td>' .$row['coltd'] . '</td><td> ' .$row['担当者様名'].'</td><td>' .$row['住所']. '</td><td>' .$row['電話番号']. '</td><td><button type="button" class="btn">選択</button></td></tr>' ; } mysql_close($con); ?> </table> </p> <p><a id="modal-close" class="button-link">閉じる</a></p>このような場合、どういった記述になるのか教えて頂ければ幸いです。
拙さ全開で申し訳ございませんが、よろしくお願いします。
####余談ですが...
phpのmysql系の関数は脆弱性があり、削除されたという情報をお聞きしました。
現状他の機能もこの状態で実装されており、書き換えればならないと思うのですが、小耳にはさむ程度でもよいので効率よく置き換える方法等ご存じであれば教えて頂ければと思います。
####追記
改めて見返すとわかりにくかったので、
メイン部分のソースコードそのまま貼ります
<div class="contents"> <!-- 1つ目のコンテンツ [開始] --> <div id="modal-content-01" class="modal-content"> <!-- モーダルウィンドウのコンテンツ開始 --> <p>1</p> <p>「閉じる」か「背景」をクリックするとモーダルウィンドウを終了します。</p> <p><a id="modal-close" class="button-link">閉じる</a></p> <!-- モーダルウィンドウのコンテンツ終了 --> </div> <!-- 1つ目のコンテンツ [終了] --> <!-- 2つ目のコンテンツ [開始] --> <div id="modal-content-02" class="modal-content"> <!-- モーダルウィンドウのコンテンツ開始 --> <p><h2>顧客情報を選択してください</p> <p><table> <tr><th>ID</th><th>会社名</th><th>担当者様名</th><th>住所</th><th>電話番号</th><td>選択</td></tr> <?php $con = mysql_connect('localhost', 'root', 'パスワード') or die('error(connect)'); mysql_select_db('testdb', $con) or die('error(select_db)'); mysql_set_charset('utf8'); $sql = 'select * from kokyaku'; $result = mysql_query($sql, $con); while ($row = mysql_fetch_array($result)) { echo '<tr><td>' .$row['顧客ID'] . '</td><td>' .$row['coltd'] . '</td><td> ' .$row['担当者様名'].'</td><td>' .$row['住所']. '</td><td>' .$row['電話番号']. '</td><td><button type="button" class="btn">選択</button></td></tr>' ; } mysql_close($con); ?> </table> </p> <p><a id="modal-close" class="button-link">閉じる</a></p> </p> <p><a id="modal-close" class="button-link">閉じる</a></p> <!-- モーダルウィンドウのコンテンツ終了 --> </div> <!-- 2つ目のコンテンツ [終了] --> <!-- 3つ目のコンテンツ [開始] --> <div id="modal-content-03" class="modal-content"> <!-- モーダルウィンドウのコンテンツ開始 --> <p>2つ目のモーダルウィンドウです。全体を囲むdiv要素に[id="modal-content-03"]が設定されています。</p> <p>「閉じる」か「背景」をクリックするとモーダルウィンドウを終了します。</p> <p><a id="modal-close" class="button-link">閉じる</a></p> <!-- モーダルウィンドウのコンテンツ終了 --> </div> <!-- 3つ目のコンテンツ [終了] --> <!-- 右カラム --> <div id="main"> <h1>請求書作成</h1> <!--テスト--> <form action="" method="post"> <p> <label for="">会社名</label> <input type="text" name="company_name" /> </p> <p> <button type='submit'>更新</button> </p> </form> <!--テストここまで--> <p><a class="modal-syncer button-link" data-target="modal-content-01">見積もり書のデータを参照する</a></p> <p><a class="modal-syncer button-link" data-target="modal-content-02">顧客情報を自動入力する</a></p> <p><a class="modal-syncer button-link" data-target="modal-content-03">商品情報を自動入力する</a></p> <p><button type="button" class="modal-syncer button-lin" data-target="modal-content-02">顧客情報を一覧から入力する</button> <button type="button" class="modal-syncer button-lin" data-target="modal-content-01">見積書データを入力する</button> <form action = "kakunin.php" method="post"> <table><tr><th>会社名:</th><td><input type="text" name="coltd" size="45"></td><th>担当者様名:</th><td><input type="text" name="name" size="30"></td><th>郵便番号:</th><td><input type="text" name="znum" size="10"></td></tr> <tr><th>住所:</th><td colspan="5"><input type="text" name="zyuusyo" size="100%"></td></tr></table> <table> <tr><td>*</td><td>商品名</td><td>数量</td><td>単価</td><td>金額</td><td>備考</td></tr> <tr><td><button type="button" class="modal-syncer button-lin" data-target="modal-content-03">選択</button></td><td><input type="text" name="nm" size="40"></td><td><input type="text" size="2" name="kosuu" value="1"></td><td><input type="text" name="nm" size="7"></td><td><input type="text" name="nm" size="10"></td><td><input type="text" name="nm"></td></tr> <tr><td><p>プレビュー</p></td> <td><p><input type=submit name=send value="登録"><br></p></td></tr> </table> </form>