根据用户选择显示不同的标题信息

时间:2018-08-01 19:06:45

标签: php jquery ajax session

在我的header.php文件中,我有一个“选择城市”按钮,单击该按钮会显示城市列表。当我单击城市时,我希望联系信息(例如地址和电话号码)根据所选城市而变化。因此,如果用户转到另一个页面,则会保留更新的信息。我以为我需要使用PHP会话,所以我从这里开始:

JS:

$("#cities-list li").click(function(){
  var city = $(this).text();

  $.post("/city.php", {"city": city});
  console.log(city);
});

HTML:

   <ul id="cities-list">
     <li id="nyc">NY</li>
     <li id="la">LA</li>
   </ul>

PHP(city.php):

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

单击城市后,我通过刷新来检查city.php页面,但该页面为空。我选择的方法是否错误?什么是正确的?我该如何实现自己想做的事?

1 个答案:

答案 0 :(得分:0)

您可以使用仅带有html的name属性来提交表单,例如:

<form action="action_page.php" method='POST'>
  <ul id="city" name='city'>
    <li id="nyc">NY</li>
    <li id="la">LA</li>
  </ul>
  <input type='submit' id='btnGo' name='btnGo' value='Submit' />
</form>

然后在您的PHP(在此示例中为action_page.php)上,

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

您的jQuery在这种方法中是可选的,用于页面操作。就像在首页的其他地方触发$('#btnGo').click()按钮一样。