2017-04-10 11 views
0

瞳孔に関する情報を格納するテーブルがあります。シングルボタンをクリックして多数のドロップダウンリストからデータを送信する方法は?

this web-siteを開くと、この表の情報が表示されます。 「ソート」ボタンがあり、すべての生徒を都市別に並べ替えます。 また、このボタンをクリックすると、すべての瞳孔の近くにドロップダウンリストが表示されます。 このリストでは、瞳孔の管理者を選択できます。

このように、私の質問はボタンをクリックして多数のドロップダウンリストからすべての選ばれた世話人を送る方法ですか?(更新テーブル)

私は申し訳ありませんが、私はPHPを初めて使い、今は私がここにいる方法を理解していません。私は瞳孔IDとその世話人からなる配列を動的に作成するよう提案することができます。

私はこの質問のために特にthis web-siteを作成しました。このコードは、そのサイトがどのように動作するかです:

<?php 
mb_internal_encoding("UTF-8"); 
$link = mysql_connect($mysql_host, $mysql_user, $mysql_password) 
    or die('' . mysql_error()); 
mysql_select_db($mysql_dbname) or die(''); 
mysql_set_charset('utf8'); 

$query = 'SELECT * FROM pupils'; 
$result = mysql_query($query) or die(mysql_error()); 

echo "<table>\n"; 
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    echo "\t<tr>\n"; 
    foreach ($line as $col_value) { 
     echo "\t\t<td>$col_value</td>\n"; 
    } 
    echo "\t</tr>\n"; 
} 
echo "</table>\n"; 

mysql_free_result($result); 
mysql_close($link); 
?> 

<form action="" method="post"> 
    <input type="submit" name="sort" value="Sort"> 
</form> 

<?php 

if (isset($_POST["sort"])) { 
    $link = mysql_connect($mysql_host, $mysql_user, $mysql_password) 
     or die(mysql_error()); 
    mysql_select_db($mysql_dbname) or die(); 
    mysql_set_charset('utf8'); 

    $query = 'SELECT * FROM pupils WHERE city = "Moscow";' or die("died"); 
    $result = mysql_query($query) or die(mysql_error()); 

    if (mysql_num_rows($result) != 0) { 
     echo "<h1>Moscow</h1>"; 
     echo "<table>\n"; 
     while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { 
      echo "\t<tr>\n"; 
      foreach ($line as $col_value) { 
       echo "\t\t<td>$col_value</td>\t\t"; 
      } 

      echo "<td><form action=\"\" method=\"post\">"; 
       echo "<select name=\"choose_caretaker\" required>"; 
        echo "<option value=\"0\">Choose a caretaker</option>"; 
        echo "<option value=\"Caretaker1\">Caretaker1</option>"; 
        echo "<option value=\"Caretaker2\">Caretaker2</option>"; 
        echo "<option value=\"Caretaker3\">Caretaker3</option>"; 
       echo "</select></td>"; 
      echo "</form>"; 

      echo "</tr>\n"; 
     } 
     echo "</table>\n"; 
    } 

    $query = 'SELECT * FROM pupils WHERE city = "London";' or die("died"); 
    $result = mysql_query($query) or die(mysql_error()); 

    if (mysql_num_rows($result) != 0) { 
     echo "<h1>London</h1>"; 
     echo "<table>\n"; 
     while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { 
      echo "\t<tr>\n"; 
      foreach ($line as $col_value) { 
       echo "\t\t<td>$col_value</td>\t\t"; 
      } 

      echo "<td><form action=\"\" method=\"post\">"; 
       echo "<select name=\"choose_caretaker\" required>"; 
        echo "<option value=\"0\">Choose a caretaker</option>"; 
        echo "<option value=\"Caretaker1\">Caretaker1</option>"; 
        echo "<option value=\"Caretaker2\">Caretaker2</option>"; 
        echo "<option value=\"Caretaker3\">Caretaker3</option>"; 
       echo "</select></td>"; 
      echo "</form>"; 

      echo "</tr>\n"; 
     } 
     echo "</table>\n"; 
    } 

    mysql_free_result($result); 
    mysql_close($link); 
}?> 

<form action="" method="post"> 
    <input type="submit" name="send_to_caretakers" value="Send"> 
</form> 

<?if (isset($_POST["send_to_caretakers"])) { 

    $link = mysql_connect($mysql_host, $mysql_user, $mysql_password) 
     or die(' ' . mysql_error()); 
    mysql_select_db($mysql_dbname) or die(''); 
    mysql_set_charset('utf8'); 

    echo "Sent to the caretakers"; 
    $temp = $_REQUEST['choose_caretaker']; 
    echo $temp; 
    // Have no idea how it can designed 

    mysql_close($link); // Закрываем соединение 
} 
?> 
+0

私は、テーブルにIDフィールドを追加すると、すべての選択のためのフォームを作成していないと言われました。だから私は今それをやっている。 –

答えて

0
  1. 例えばchoose_caretaker「名を選択し、」[pupil_id]
  2. は "における追加の配列を使用するには選択ボックスで選択して複数を選択する
  3. 結果をPHPで表示します。看護師はアレイの形で生徒の下に現れます。

    echo "<td><form action=\"\" method=\"post\">"; 
         echo "<select name=\"choose_caretaker[$link['id']]\" multiple required>"; 
          echo "<option value=\"0\">Choose a caretaker</option>"; 
          echo "<option value=\"Caretaker1\">Caretaker1</option>"; 
          echo "<option value=\"Caretaker2\">Caretaker2</option>"; 
          echo "<option value=\"Caretaker3\">Caretaker3</option>"; 
         echo "</select></td>"; 
        echo "</form>"; 
    
+0

ありがとう、Mr. これを行うと、コールバックを送信します。 –

+0

ありがとうございました。それを行った。 (瞳孔には1人の看護師しかいないため、複数はここでは必要ありません) –

関連する問題