【问题标题】:WordPress: How can use $_SESSION in wordpressWordPress:如何在 wordpress 中使用 $_SESSION
【发布时间】:2015-04-09 11:17:22
【问题描述】:

我有这个代码来选择这样的用户国家:-

<form method="post" action="" enctype="multipart/form-data">
<select name="countryname" onchange="this.form.submit()">
    <option value="">Select Country</option>
    <option value="AF">Afghanistan</option>
    <option value="AX">Åland Islands</option>
    <option value="AL">Albania</option>
    <option value="DZ">Algeria</option>
    <option value="AS">American Samoa</option>
    <option value="AD">Andorra</option>
    <option value="AO">Angola</option>
<select>

现在我需要将countryname 保存在$_SESSION 中,以便在我的所有网站页面中使用它。

如何在wordpress中尝试这种方式。

如果不支持,在选择国家转换URL时如何设置页面URL

www.domain.com/

www.domain.com/?country=AD

$_GET 值中获取它。

【问题讨论】:

标签: php wordpress session


【解决方案1】:

请试试这个

在您的页面顶部,您可以开始会话:-

session_start();

在此之后,您将获得一个带有 POST 方法的表单。 所以,无论在 name="countryname" 中获得什么值,都可以在 Post 方法中使用它 像这样:-

$country = $_POST['countryname'];

现在您在 $country 中选择的价值商店好了。 在像这样在会话中取这个值之后:-

$_SESSION['country'] = $country

之后检查是否在会话值存储中

echo $_SESSION['country'];

你在会话中获得价值

【讨论】:

    【解决方案2】:

    Krunal Trivedi 是对的。您需要选择组织 ajax 调用并发布国家/地区名称。在服务器端,您应该从 post 中获取 var 并在会话中存储

    <form method="post" action="" enctype="multipart/form-data">
    <select name="countryname" onchange="saveCountryCode()">
        <option value="">Select Country</option>
        <option value="AF">Afghanistan</option>
        <option value="AX">Åland Islands</option>
        <option value="AL">Albania</option>
        <option value="DZ">Algeria</option>
        <option value="AS">American Samoa</option>
        <option value="AD">Andorra</option>
        <option value="AO">Angola</option>
    <select>
    

    jQuery 代码:

    function saveCountryCode(){
    var selectedCountry = $('input[name="countryname"]').find(':selected').val();
                    $.ajax({
                    type: "POST",
                    url: "ajax/countrySaver.php",
                    data: { countryname: selectedCountry }
    
                    }).done(function( result ) {
                            alert(result);
                    });
    }
    

    countrySaver.php

    <?php 
    session_start();
    $_SESSION['countryname'] = $_POST['countryname'];
    echo $_SESSION['countryname']
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-09
      • 1970-01-01
      • 2013-04-07
      • 2017-05-02
      • 1970-01-01
      • 2021-11-09
      • 2018-04-06
      相关资源
      最近更新 更多