0

PHP で生成された SELECT リストを使用してテーブルに行を挿入する際に問題が発生しています。

ページには「?orgid=#」$_GET 変数があり、$orgid を設定します。

//set variables
$orgid = $_GET['orgid'];

次に、ページは、SELECT リストの OPTIONS を設定する適切なクエリを実行します。

//select info from members table
$usrqry = 'SELECT * FROM members WHERE assign = 1 ORDER BY usr ASC';
$usrres = mysql_query($usrqry);

次に、ページはフォームが $_POST 経由で送信されたかどうかを確認します。

if($_POST['submit']=='Assign') {
   $sql = 'INSERT INTO profile (id, usr_id, org_id) VALUES (NULL, '.$_POST['userid'].', '.$orgid.')';
   $res = mysql_query($sql);
}

そして、これはページ上のフォームです:

<form action="" method="post">
   <label>Select User:</label>
   <select name="the_name">
      <?php while($row = mysql_fetch_array($usrres)) { ?>
         <option name="userid" value="<?=$row['id'];?>"><?=$row['usr'];?></option>
      <?php } ?>
   <input type="submit" name="submit" value="Assign">
</form>

質問を入力していると、解決策に出くわしました。

元のコード:

<form action="" method="post">
   <label>Select User:</label>
   <select name="the_name">
      <?php while($row = mysql_fetch_array($usrres)) { ?>
         <option name="userid" value="<?=$row['id'];?>"><?=$row['usr'];?></option>
      <?php } ?>
   <input type="submit" name="submit" value="Assign">
</form>

更新されたコード:

<form action="" method="post">
   <label>Select User:</label>
   <select name="userid">
      <?php while($row = mysql_fetch_array($usrres)) { ?>
         <option value="<?=$row['id'];?>"><?=$row['usr'];?></option>
      <?php } ?>
   <input type="submit" name="submit" value="Assign">
</form>
4

1 に答える 1

0

念のために言っておきますが、select 要素の終了タグを忘れてしまいました。さらなる検査であなた自身の問題を解決したことを祝福します!

于 2016-05-29T00:14:47.787 に答える