我有代码,当从这样的下拉菜单中选择国家/地区时,我会为用户提供国家标志
提交国家/地区:
<select name="countryname" onchange="this.form.submit();fla(this);" >
<option value="AF">Afghanistan</option>
<option value="US">USA</option>
<option value="UK">UK</option>
</select>
改变之后,我们这样做:
define('WCDP_PATH_INCLUDES', dirname(__FILE__) . '/inc');
if (!class_exists('GeoIP')) {
include(WCDP_PATH_INCLUDES . "/geoip.inc");
}
$geo_data = geoip_open(WCDP_PATH_INCLUDES . "/GeoIP.dat", GEOIP_STANDARD);
$country_code = geoip_country_code_by_addr($geo_data, $_SERVER['REMOTE_ADDR']);
$countrynameselect = $_SESSION['countryname'];
if ($countrynameselect) {
$country_code = $countrynameselect;
} else {
$country_code = geoip_country_code_by_addr($geo_data, $_SERVER['REMOTE_ADDR']);
}
// Build HTML for flag icons.
?>
<img src="<? bloginfo('stylesheet_directory')?>/flags/sm/<?php echo strtolower($country_code).'.png'; ?>" border="0" style="margin-top:10px" id="flagc" />
现在,当用户从下拉菜单中选择国家/地区时,我会在SESSION
中保存国家/地区帖子,但是当用户再次更改时,它不会更新SESSION
,要更新它,我们必须刷新页面显示新的SESSION
值。
我该怎么办?
答案 0 :(得分:0)
您可以尝试取消设置会话,并在用户选择其他内容时再次设置会话。
你是如何设置会话的?用户是否单击“提交”然后会话已设置?或者你在使用AJAX吗?