お世話になります。
ODBC経由でレコードを取得して表示させた後、それぞれのレコードの
後に4つのリンクを張って、押されたリンクによって状態を変更
したいです。
表はこんな感じです。
ID 氏名 状態 リンク1 リンク2 リンク3 リンク4
1 山田 1 1に状態変更 2に状態変更 3に状態変更 4に状態変更
2 山下 3 1に状態変更 2に状態変更 3に状態変更 4に状態変更
3 山本 2 1に状態変更 2に状態変更 3に状態変更 4に状態変更
以下300件くらい
ODBCに接続は成功します。
$res = $db-> query($sql);
while ($row =& $res->fetchRow(db_fechtmode_assoc)) {
print("<tr>");
print("<td>".$row["No"]."</td>");
print("<td>".$row["氏名"]."</td>");
print("<td>".$row["状態"]."</td>");
//この下が問題の行
print("<td><a href= \"hoge.php?ID=".$row["ID"]."\">1に状態変更</a></td>");
//あとリンクを状態変更4まで3つ並べます
print("</tr>\n");
テーブル形式に吐かせます。問題の行で、IDと a=1 を持って
いきたいのですが、記述の仕方が分かりません。このままでは
IDは持って行ってくれます。
//explode関数は「,」で区切り順番に配列に格納する
//$_SERVER['QUERY_STRING']はURLの?の後に付けられた
//文字列(引数)を取得できます。
という記事も見たのですが、コンマでつなげてもa=1は持って行って
くれません。
別にリンクじゃなくてもいいのです。ボタンや画像でもいいの
ですが、このWhileテーブルでボタンを4つ並べる書き方も、
ボタンを押したら値を取得する書き方も分かりませんでした。
勢いでPEARを使っています。PHP5.2.6です。よろしくお願いします。
No.1
- 回答日時:
単純に値を持っていければ良いというのであれば、
質問文の内容を中途半端に引用して編集してみると
//この下が問題の行
print("<td><a href= \"hoge.php?ID=".$row["ID"]."&A=".$a."\">1に状態変更</a></td>");
//あとリンクを状態変更4まで3つ並べます
print("</tr>\n");
のように、IDの後ろに持っていかせたいパラメータを&で引っ付ければ
FORM タグの method で GET を指定した場合の形式で渡ると思います。
(ちなみにボタンの submit で飛ばすのが POST の形式。)
その POST の形式版だとこんな感じ。
//この下が問題の行
print("<td>");
printf("<form name=\"\" method=\"post\" action=\"hoge.php\">");
printf("<input type=\"hidden\" name=\"ID\" value=\"".$row["ID"]."\">");
printf("<input type=\"hidden\" name=\"a\" value=\"".$a."\">");
printf("<input type=\"submit\" value=\"1に状態変更\">");
printf("</form>");
printf("</td>");
//あとリンクを状態変更4まで3つ並べます
print("</tr>\n");
JavaScript を使っても良くて、画像でボタンを表示させたいなら
上で submit となっている input タグの部分を
printf("<img src=\"hoge1.jpg\" onClick=\"hoge.php?ID=".$row["ID"]."&A=".$a."\">");
みたいにすればできるのではないでしょうか。
ただ、動作確認したわけでもないですし、タグの内容などもうろおぼえなので
このままでは動作しない可能性大だったりもしますが
調査するのに必要な要素はひとまずいれたつもりですので
今回はこの辺りにて失礼します。
この回答への補足
hisappyさんありがとうございます。
?ID=".$row["ID"]."&A=".$a."\"
まさにこの部分の書き方なんですが、本当に記述の仕方だけ分からないんだと思います。初心者ですみません。
ブラウザの下にA= が現れるようになったので持って行ってくれる気があるみたいですが、$aが0なので、$aにどこかで1を入れておかないといけないのでしょうか? ここは1と決まっているので、
?ID=".$row["ID"]."&A="1"\"
としても上手くいかないのです(T_T)
どうクォーテーションしたものやら、どうドットつけたらいいやら。
No.2ベストアンサー
- 回答日時:
補足の内容、了解です。
変数で渡そうとしている内容がサーバ側での設定を想定していたので
IDと同じような感じにしていました。
また、IDが大文字となっていたのでaの方もあわせて大文字としていましたが、
その点の説明が抜けていたようです。すみません。
では補足いただいた内容に合わせて渡したいaを設定してみましょう。
aが1固定の場合だと下のようになります。
print("<td><a href= \"hoge.php?ID=".$row["ID"]."&A=1\">1に状態変更</a></td>");
これでサーバ側でのIDでのとり方と同じようにしてAでやれば1が取れるようになります。
PHPの5.2.6でも通用するかは設定によりますが
$_REQUEST[ID] でIDの値が、$_REQUEST[A] でAの値がとれていたら正解です。
$_GET[ID] だったり、$ID だったりするかもなので調査要です。
では、ついでのついでに値が固定、中身も似ているなら for ループを追加して、
もう一歩先の応用ができそうないじくりをいれてみましょう。
余談なので上の状態のでおしまいにしてももちろんOK。
//リンクを状態変更1から4まで4つ並べます。
for( $lpcnt00 = 1; $lpcnt00 <= 4; $lpcnt00 ++)
{
print("<td><a href= \"hoge.php?ID=".$row["ID"]."&A=".$lpcnt00."\">".$lpcnt00."に状態変更</a></td>");
}
クォーテーションの¥マーク有り無しやドットのつけ方は慣れても分かりにくく、
その慣れ方もどうするのが良いのか分かり難いものです。
自分なりの解読法を構築するしかないのかもしれませんね。
作り始めの段階なら
1.HTMLをベタで書いて。
2.クォーテーションを¥マーク付きに置換して。
3.PHPの文に変換して。
とやれば良さそうですが、いったん出来上がったものを編集するとなると
このクォーテーションがHTML側のものなのかPHP側のものなのかがパッと見判らない。
その辺りをサポートしてくれるエディタもあるようですが、
慣れないことにはそのエディタの表示もなんじゃらほい。
でも大丈夫。必要な情報ならきっと、情報の側からもアプローチがありますよ。
hisappyさん、根気よく付き合ってくださってありがとう
ございました。¥に振り回されていたのですが、ひとつ
多かったり、クォーテーションを取ったり、全部に¥つけたりと
色々したのですが、ニアミスで行き詰っていました。
PHPがうまく受け取ってくれました!
しかも残りのリンクのForまで・・・これはまた後日ためして
勉強させていただきます。
ありがとうございました。また今後ともよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- 物理学 統計力学における平衡状態の定義について 4 2022/12/27 01:47
- HTML・CSS 【CSS】:hasで可能? imgを含むtr要素を選択したい 1 2022/11/17 14:36
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- Word(ワード) ワードの変更履歴のオンオフ判別方法 1 2023/05/25 15:07
- docomo(ドコモ) 契約者固有IDと個体識別番号の違い 1 2022/12/15 00:15
- Windows 10 ビデオカードが変更されたPCの復元 1 2022/11/29 02:01
- ラグビー・アメリカンフットボール ラグビーってスクラムの方法、変わりましたか? 4 2022/07/09 20:26
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
JSPでリンクを利用してパラメータを次画面に渡す方法について。
Java
-
リンクでPOSTデータを送信することは可能ですか?
HTML・CSS
-
JSPからJSPへ情報を渡せる?
Java
-
-
4
<A href ~ と一緒に値を渡すには
PHP
-
5
一つのリンクに複数のURLを指定
HTML・CSS
-
6
リクエストに応じたselectedの初期値設定方法
Java
-
7
HTMLの値の渡し方について質問です。 HTMLで値を今の画面から次の画面に渡すにはどういう文を使う
HTML・CSS
-
8
データ数をカウントしたいのですが
Java
-
9
別ファイルの変数を呼び出したいのですが?
PHP
-
10
別PHPファイルに変数を渡す
PHP
-
11
count(*)で取得した値をJAVAの変数に代入するには?
Java
-
12
ServletからServletへの値渡し
Java
-
13
ボタンをセル内一杯に表示させる方法はありませんか?
HTML・CSS
-
14
「value」に2つの値をセットする方法
HTML・CSS
-
15
PHP ボタンが押されたら処理を実行する
PHP
-
16
URLのパラメータをGETのままで非表示にしたい
PHP
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
$_SERVER["QUERY_STRING"]の仕...
-
PHP ハイパーリンク
-
microtime関数は、結構イイカゲ...
-
初歩的な質問だと思います。IF...
-
PHPでwait処理ってできます?
-
SQLのデータを分割してブラウザ...
-
Luaにて、and or の組み合わせ...
-
PHPでのNULLの正規表現
-
データ)表示件数について
-
switch()文で値の大小比較
-
「取得先」という表現について
-
【C#】DataGridViewの最大列数...
-
Dosブロンプトでtabを出力したい
-
shシェルスクリプト 空白行の...
-
phpでcookieがうまく保存されない
-
DTOとEntityの差は何ですか。
-
WordでExcelデータを差込...
-
ActiveReportのサブレポート機...
-
DMMの動画を全件取得したのです...
-
wordの差し込み印刷で文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付を基にした乱数生成
-
<A href ~で複数の値を渡したい
-
「次の10件を表示する」のよ...
-
PHPでwait処理ってできます?
-
POSTされたかどうか確かめる方...
-
PHPのif文「POSTしていな...
-
PHPでのNULLの正規表現
-
テーブルに送信ボタンをつける
-
if (isset($_a)&&$_a)この意味は
-
逆順表示したい?
-
if文の複数条件。
-
PHP フラグ
-
PHP ハイパーリンク
-
null代入とunset()の違いについて
-
SQLのデータを分割してブラウザ...
-
$_SERVER["QUERY_STRING"]の仕...
-
Luaにて、and or の組み合わせ...
-
whileループの中でフォーム入力...
-
switch文で2つ以上の変数の値...
-
parse_ini_fileでダブルクォー...
おすすめ情報