【问题标题】:How to get value from dropdown list and insert it to MySQL table in deferent arrangement?如何从下拉列表中获取值并以不同的方式将其插入 MySQL 表?
【发布时间】:2019-11-27 15:56:36
【问题描述】:

我正在尝试从 MySQL 表中检索数据 form_table 将其填充到 html 下拉列表中,然后选择并将其以不同的排列方式插入到另一个表中。 问题是下拉选项中的值由三个字符串的总和组成:FIRSTNAME、LASTNAME、EMAIL,我想单独保存,意思是: a) 一个字段:FIRSTNAME + LASTNAME b) 第二个字段:EMAIL

目前我输入“EK111”的值而不是 EMAIL,因为我不知道如何实现。

谁能告诉我怎么做。

谢谢。

<form name="Envelope" method="post" action="<?php echo basename(__FILE__); ?>" enctype="multipart/form-data" id="ENVELOPE">
            <input type="hidden" name="formid" value="envelope">
            <input type="hidden" name="EmailKandydata" value="EK111" id="EMAILKANDYDATA">
            <label for="ENVELOPEKANDYDAT" id="Label1">Dane Kandydata</label>
            <input type="submit" id="Button1" name="" value="Wybierz">
            <select name="Envelope Kandydat" size="1" id="ENVELOPEKANDYDAT">
<?php
   $mysql_server = 'serwer';
   $mysql_table = 'envelope_tab';
   $mysql_database = 'baza';
   $mysql_username = 'admin';
   $mysql_password = 'password';
   $link = mysqli_connect($mysql_server, $mysql_username, $mysql_password) or die('Failed to connect to database server!<br>'.mysqli_error($db));
   mysqli_select_db($link, $mysql_database);
   $res=mysqli_query($link, "select * from forma_table order by LASTNAME asc");
     while($row=mysqli_fetch_array($res))
{
?> 
<option value="<?php echo $row[FIRSTNAME]; echo " "; echo $row[LASTNAME]; echo " "; echo $row[EMAIL]; ?>"><?php echo $row[FIRSTNAME]; echo " "; echo $row[LASTNAME]; echo " | "; echo $row[EMAIL]; ?></option>
<?php
}
?>
            </select>
</form>

【问题讨论】:

  • 你会收到警告。提取数据时应引用这些列。 $row['LASTNAME'], $row['EMAIL'];
  • options value attribute 中使用forma_table 的ID,当您对所选内容进行处理时,只需从数据库中再次选择该行,您就拥有了所有您想要的列做任何你想做的事
  • PS:您可以使用. 来回显多个内容并连接,例如echo 'Hello' . $fname . ' ' . $lname;,它比所有这些回显更容易阅读
  • 什么不符合您的要求?您现在得到的结果与预期的结果相比如何?您是否通过 php 和 mysql 检查错误?我什么都没看到。
  • 我不关注“EK111”的评论,你能详细说明你正在处理的两个表结构吗?

标签: php html mysql forms combobox


【解决方案1】:

理想情况下 与其重新插入所有信息,不如使用外键并引用主记录。

Table A             Table B 
-                   id
id        --->       contact_id_fk

但你可以这样做:

将值设为 id:

<option value="id">First Name <email>

提交表单后,使用传递的 $id 获取剩余的字段。

$result = get_results (SELECT * FROM TABLE WHERE id = $id);
$first = $results['first_name']

然后插入到你的新表中:

Insert INTO ANOTHER TABLE VALUES($first, $last, $email) 

【讨论】:

    猜你喜欢
    • 2019-08-27
    • 1970-01-01
    • 2016-09-28
    • 2013-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    相关资源
    最近更新 更多