ホームページ > バックエンド開発 > PHPチュートリアル > radio の値をデータベースに書き込む方法

radio の値をデータベースに書き込む方法

WBOY
リリース: 2016-06-23 13:54:33
オリジナル
1865 人が閲覧しました



他の列は動的に取得され、データベースに正常に書き込むことができます。

問題はこの文にあります

<td style="text-align:center;font-size:14px;"><input type="radio" name="<?php echo $_values;?>" value="正常" style="zoom:150%;" />正常<input type="radio" name="<?php echo $_values;?>" value="不正常" style="zoom:150%;" />不正常</td>
ログイン後にコピー


名前の定義が間違っているような気がしますが、修正方法がわかりません。ラジオで選択した値をデータベースに書き込むにはどうすればよいですか?名前に定数を使用するのは簡単ではありません。


フォーム コード全体を添付します:

<td style="text-align:center;font-size:14px;"><input type="radio" name="<?php echo $_values;?>" value="正常" style="zoom:150%;" />正常<input type="radio" name="<?php echo $_values;?>" value="不正常" style="zoom:150%;" />不正常</td>
开始点检
车辆选择:工号:日期:
编号点检项目点检方法点检标准状 态
ログイン後にコピー



[cldj.php]

<?php header("Content-type: text/html; charset=utf-8");require ('common.php');$hh=$_POST['hao1'];$aa=$_POST['bh'];$bb=$_POST['xm'];$cc=$_POST['fangfa'];$dd=$_POST['biaozhun'];$_gh=$_COOKIE["name"]; $_time=$_POST['time'];$name=implode(_fetch_array_list(mysql_query("SELECT name FROM jsy WHERE gonghao = $_gh")));if (is_array($aa)){foreach ($aa as $i=>$v){ mysql_query("INSERT INTO djjl (hao,bh,xm,fangfa,biaozhun,gonghao,name,time,zt) VALUES (								'$hh',                                                                '$v',																'{$bb[$i]}',								'{$cc[$i]}',								'{$dd[$i]}',								'$_gh',								'$name',								'$_time'																						)" )or die('SQL执行失败!'.mysql_error());}}mysql_close();_alert_location('添加成功!','ksdj.php');?>
ログイン後にコピー


ディスカッションへの返信 (解決策)

Didnコードはもううまく書けていないですか?

問題がある場合は、 die('SQL 実行に失敗しました!'.mysql_error()); もあるでしょう
教えてもらえませんか?

まだコードを書いていませんか?

問題がある場合は、 die('SQL 実行に失敗しました!'.mysql_error()); もあるでしょう
教えてもらえませんか?


このコードが「正常」なのか「異常」なのかまだ分かりません
送信した後、 print_r($_POST); を実行します。データがどのように配布されるのかを知っていますか?


さらに、他のコントロールは配列形式で記述されているのに、ラジオ ボタンが配列形式ではないのはなぜですか?
さらにいくつかのキーを押したとしても、依然としてカウンタ ($i)。

ただし、送信後は各行のデータがまとめられるので便利です

行と列を変換する必要はありません


print_r($_POST); を送信すると、データがどのように分散されるかがわかります。どうやってやったのですか?

さらに、他のコントロールは配列形式で記述されているのに、ラジオ ボタンが配列形式ではないのはなぜですか?

また、保存するときは、実行する前に、もちろん foreach を使用してフィールドと内容を記録します


作成者は、「ステータス」フィールドのタイプをtinyint型なので、1と0で「通常」と「正常」が得られるようにします。

ラジオネームの渡し方が分かりません。なぜなら、サイクルの後は、異なる名前を持つ 21 個の ra グループが存在するからです


作者には、「status」フィールドの型を tinyint 型に変更して、1 と 0 を使用して「normal」と「normal」を取得できるようにすることをお勧めします。異常なオプションをそれほど手間をかけずに実行できます
また、保存するときは、実行する前に foreach を使用してフィールドと内容を記録します




ラジオの名前を渡す方法がわかりません。ループ後は、異なる名前を持つ 21 個の無線グループが存在するためです

無線が選択された値 = 1、選択されていない値 = 0

サーバーが $_POST['radio'] を取得すると、これは配列になるはずです

を定義しますそのような名前は、バックグラウンドで再編成された配列形式もあります。次のように名前の値を定義することをお勧めします:

name="post[$_rows['bh']]['bh']"
name="post[$_rows['bh']]['xm' ]"
このようにすると、すべての A 行が配列になります。 後のラジオも同様、name="post[$_rows['bh']]['status']"


このように name を定義すると、バックグラウンドで再編成された配列形式も存在します。次のように名前の値を定義することをお勧めします:

name="post[$_rows['bh']]['bh']"
name="post[$_rows['bh']]['xm' ]"
このようにすると、すべての A 行が配列になります。
最後のラジオにも同じことが当てはまります。name="post[$_rows['bh']]['status']"

変更後、上に余分な "]" 記号が表示されます。自分で処理してください

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート