假设我有以下两个表格:
国家表:
---------------------------------
|ID|country_code|country_name |
|01|CA |Canada |
|02|US |United States |
---------------------------------
用户表:
----------------------------------------------
|id|user_id|country_code|email_address |
|01|oswalsh|CA |blah@hotmail.com |
|02|jlong |US |blah2@hotmail.com |
----------------------------------------------
我正在创建我的用户注册/编辑帐户表单,并有一个国家/地区下拉菜单。最初我只是将 country_name 存储在 user_table 中,而不是使用 country_code,但是我还决定实现一个地图脚本……这是一大堆使用 country_code 的 javascript 文件。
因此,我创建了 country_table,以便可以匹配 country_code 和 country_name,以便映射用户交互...但是我不确定如何为下拉菜单创建 sql 语句。
到目前为止我所拥有的:
<?php
include ('../../connect.php');
$account_panel = mysql_query("SELECT * FROM user_table WHERE id=1")
or die(mysql_error());
while($row1 = mysql_fetch_array( $account_panel ))
{
?>
<select name="event_country" id="event_country" required />
<option selected="selected" value="<?php echo $row1['user_country']; ?>"><?php echo $row1['user_country']; ?></option>
<?php
$countries = mysql_query("SELECT * FROM country_table")
or die(mysql_error());
while($row = mysql_fetch_array( $countries ))
{
echo "<option value='". $row['value'] ."'>". $row['name'] ."</option>";
}
echo "</select>";
?>
<?php
}
mysql_close($connection);
?>
因此,您应该能够从上面看到正在发生的事情,该列表是从 country_table 填充的,但我正在尝试从 user 表中获取选定的值。这似乎确实有效,但我的问题是国家代码是存储和显示的内容。所以说我正在获取 oswalsh 的信息……我……返回的国家是 CA,我希望它显示加拿大。