JQUERY,PHP,whlie内のinputについて
JQUERY,PHPを勉強してます。初心者です。。
PHPで、mysqlのデータ読み込み(SQL読み込み、表示はできてます)
テーブル表示は下記ような感じです。
(表示テーブル内のイメージ。。)
ID 名前
1 AAA 送信ボタン |(type submit 利用)
2 BBB 送信ボタン |(type submit 利用)whileで表示
3 CCC 送信ボタン |(type submit 利用)whileで表示
1 AAA IDの送信はうまくいき、受け取ったphpファイルが表示されますが、
2 BBB 、3 CCCの送信ボタンが反応ありません。。
イメージとしてはJQUERYのloadを利用して、別PHPファイルで
IDを受け取り、表示させたいです。。
説明がへたですみません。。。
どなたか、ご存知の方いましたら、教えていただけないでしょうか。。
環境JQUERY1.4、PHP5.1
//sql.php最初のページ
<html>
<head><title></title></head>
<body>
<script type="text/javascript" src="jquery1.4.js"></script>
<script type="text/javascript" src="sql.js"></script>
<?php
$conn =mysql_connect("","ユーザー","パスワード");
mysql_query("SET NAMES 'sjis' ", $conn);
mysql_select_db("データベース",$conn);
$sql ="select * from テーブル名";
$rs=mysql_query($sql,$conn);
echo '<table border=1 bordercolor="black"bordercolordark="red"
cellspacing=0 cellpadding=2>';
echo '<tr><th>NO</tr><th>氏名</th><th>出身</th><th>性別</th><th>仕事</th>';
echo '<th colspan=2>メンテ</th></tr>';
while($row=mysql_fetch_assoc($rs))//while内の記載が問題でしょうか?
{
//whileでデータを読み込み(上記の表示テーブル内のイメージが表示されてます。)
$name = mb_convert_encoding
($row['name'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止
$id = mb_convert_encoding
($row['id'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止
echo '<tr>';
echo '<td>'.$id.'</td><td>'.$name.'</td>';
echo '<td><input type="submit" value="更新" id="up" />';
echo '<input type="hidden" id="data" value='.$id.' />'.$id.'</td>';
echo '</tr>';
}
echo '</table>';
?>
<div id="box">ここに表示</div>
</body>
</html>
//sql.js JSの問題でしょうか?
$(function(){
$("#up").click(function () {
var upphp = $("#data").val();
$("#box").load("sqlup.php", { data:upphp});
});
});
//受信側sqlup.php
<html>
<head>
<title></title></head><body>
<?php
$conn =mysql_connect("","ユーザー","パスワード");
mysql_query("SET NAMES 'sjis' ", $conn);
mysql_select_db("データベース",$conn);
$id=$_POST["data"];//値データはsql.jsから…
$sql ="select * from テーブル名 where id=${id}";
$rs = mysql_query($sql,$conn);
$row = mysql_fetch_assoc($rs);
$name = mb_convert_encoding
($row['name'], "UTF-8", "UTF-8, JIS, eucjp-win, sjis-win");//文字化け防止
mysql_close($conn);
?>
<table border=1 style="width:300;">
<tr><th style="width:100;">登録番号</th><td style="width:200;"><?= $id ?></td></tr>
<tr><th>名前</th>
<td><input type="text" name="name" value=<?= $name ?> >
</td></tr></table>
<tr><td colspan="2" align="center">
</td></tr></table>
</body>
</html>
説明がへたで本当にすみません。。どなたか、解決策ご存知でしたら、
よろしくお願いしたいます。。。お力を貸してください。。
No.1ベストアンサー
- 回答日時:
phpはほとんど知りませんが…
最初に作成されるソースって、id="up"、id="data"の要素が重複していませんか?
その時にセレクタでid指定した際のjqueryの動作を検証してはいませんが、想像では最初に該当するidの要素を返すか、あるいはnullを返すかではないのかなぁ。
いずれにしろ、期待した要素が返される保証はないでしょう。
もともと、HTMLではidは唯一というルールだし…。
「AAA」で動作するというのは、AAAが最初の該当する要素だから、そこだけにclickイベントの処理が設定されているということではないのでしょうか?(多分、残りのボタンには設定されていない)
(ここから推理すれば、最初に該当するid要素を返しているらしい)
この回答への補足
どうも、回答ありがとうございます。
確かにwhile分で、id="up",id="data"は繰り返してる処理かと思います。
念のため、'<input type="hidden" id="data" value='.$id.' />'をwhile{}の外に記載すると、最後の「ccc」の値がでて、「AAA」が送信できなくなります。。。
どなたか、お力を引きつづきお貸しいただけないでしょうか?。。。
fujillinさんご回答ありがとうございました。いろいろ参考に
やっていたら、おかげ様で解決しました。初心者ですみませんでした。。。
また、掲示版で見かけたら、お力貸してくくださいね。。ありがとうございました。感謝です。
お聞きしたままでは失礼かと思いますので、微妙ですが解決例を↓に。。
えっと、解決策はinputのタイプを”hidden””submit”から"button"に変更し、
onclick箇所にjavascript記載でできました。
こんな感じ
<input type="button" value="リンク" onclick="javascript:up(',$id,')">
//sql.js上では
function up(データ名)
{$("#表示先ID").load("パス先",{id名:データ名});}
こんな感じです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPとMySQL 検索フォームを作り...
-
"/". $valueptr . "/", の”/”は...
-
PHPでURLにジャンプするには?
-
PHPで画像の渡しが上手く行きま...
-
DBの値をチェックボックスに反...
-
if function PHP
-
auサイトで変数のついた同一URL...
-
フォームでのリセットを使う方法
-
氏名をあいうえお順に並べて行...
-
プルダウンリンクを外部ファイ...
-
PHP ボタンが押されたら処理を...
-
フォームボタンを押すたびに数...
-
<input type="hidden" >で配列...
-
パラメーターを隠す
-
JavaScript変数をPHPへ渡す
-
入力した部分を表示させたまま...
-
PHP
-
アップロードファイル名の文字化け
-
演算子について教えてください。
-
テキストボックスに初期値を入れる
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームの状態やGETのURLは保...
-
JQUERY,PHP,whlie内のinput送信...
-
form id、nameの番号振りなおし
-
PHPとMySQL 検索フォームを作り...
-
HTMLで前の画面に戻る時、入力...
-
プログラミング言語で、使える...
-
<input type="hidden" >で配列...
-
PHP ボタンが押されたら処理を...
-
PHPでURLにジャンプするには?
-
検索時の選択内容を保持する方法
-
laravelを利用してコントロール...
-
PHPで画像の渡しが上手く行きま...
-
VBA で、スペースを含むファイ...
-
Flaskでサーバー立ち上げに関して
-
フォームでのリセットを使う方法
-
入力フォーム→確認画面→送信画...
-
PHPでユーザー情報を入力して簡...
-
PHPのエラーの解消法について教...
-
syntax error, unexpected '}' ...
-
PHPで、ボタンを押すと同じペー...
おすすめ情報