【问题标题】:Multiple Values in Dropdown List enter into MYSQL using PHP下拉列表中的多个值使用 PHP 进入 MYSQL
【发布时间】:2020-11-19 00:19:52
【问题描述】:

我有一个从 MYSQL 数据库中填充的下拉列表,其中包含以下列

城市 |省份 |纬度 |多头

$result = mysqli_query($conn, "select * from cities");
echo "<select id='search' name='town'>";
echo "<option>-- Select Town -- </option>";
while ($row = mysqli_fetch_array($result)) {
    echo "<option value='$row[city];$row[province];$row[lats];$row[longs]'>$row[city] ~ $row[province]</option>";
}
echo "</select>";
echo "<hr/>";

我想将值数据插入到各自行中的表中

如何执行插入 SQL 语句?

【问题讨论】:

  • 您的问题不清楚。 “我想将值数据插入到各自行中的表中”是什么意思?您是指下拉菜单中的每个选项吗?您是指下拉列表中所选选项中的每个值吗?目前尚不清楚您要达到的目标
  • 当您将这些值连接在一起时,该选项值是否非常有用?您为什么不直接将城市唯一 ID 放在那里,然后在您提交下拉列表的任何地方检索它?另外,当您说“将值数据插入表中”时,您是指 SQL 表还是 HTML 表?
  • @droopsnoot 我能想到的唯一好处是它可以防止额外的数据库查询,您可以使用 explode() 分隔值来访问每个单独的值。
  • @GrumpyCrouton 我猜,我必须说我没有注意到; 分隔符。
  • 好吧,我希望数据是以关系方式插入的,因此总体而言,使用唯一 ID 将是更有效的方式。用户 1 选择城市 id 24,然后为用户 1 保存 24... 等等。

标签: php mysql


【解决方案1】:

我发现这行得通

$result = $conn->query("select city, province, lats, longs FROM cities");
echo "<html>";
echo "<body>";
echo "<select name='town' id='client'>";

while ($row = $result->fetch_assoc()) {

unset($city, $province, $lats, $longs);
$city = $row['city'];
$province = $row['province'];
$lats = $row['lats'];
$longs = $row['longs'];
echo '<option>Select City</option>';
echo '<option value="'.$city.'_'.$province.'_'.$lats.'_'.$longs.'">'.$city.' '.$province.'</option>';

在 SQL 字符串中我得到了这个工作

$town = filter_input(INPUT_POST, 'town');
$parts = explode('_', $town);
$city = $parts[0];
$province = $parts[1];
$lats = $parts[2];
$longs = $parts[3];

【讨论】:

    猜你喜欢
    • 2018-01-08
    • 2018-05-22
    • 1970-01-01
    • 1970-01-01
    • 2012-07-27
    • 2016-12-07
    • 2012-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多