如何在会话php中存储一个值

时间:2017-01-10 17:32:34

标签: php

我遇到了PHP问题。在我的网站上,您可以选择三种语言(法语,英语和德语)。

我可以轻松更改语言,但是当我转到其他页面时,它不记得我选择的语言。

这是我的index.php页面的开头:

<?php
session_start();
require("decide-lang.php");
$_SESSION = $lang;
?>
<!DOCTYPE html>
<html lang="fr">
<head>
    <?php include('include/head.php'); ?>
</head>
<body>
    <!--Header-->
    <?php include('include/header.php'); ?>

这是我改变语言的代码:

<?php 
if (!empty($_GET['lang'])) {
    $lang = $_GET['lang'];
} elseif(isset($_COOKIE['lang'])) {
    $lang = $_COOKIE['lang'];
} else {
    //default language of the navigator
    $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
}
//script d'origine
if ($lang=='fr') {           
    include('lang/fr-lang.php'); 
} elseif ($lang=='en') {      
    include('lang/en-lang.php'); 
} elseif ($lang=='de') {    
    include('lang/de-lang.php'); 
} 

//fin du script d'origine
//définition de la durée du cookie (1 an)
$expire = 365*24*3600; 
// //enregistrement du cookie au nom de lang
// setcookie('lang', $lang, time() + $expire);

1 个答案:

答案 0 :(得分:1)

简单地说,get和set语言的核心就在这里:

SELECT Id, Name , email 
FROM Contact
WHERE email='XXX@Email.com'
AND Id IN (SELECT ContactId
   FROM AccountContactRelation
   WHERE AccountId = 'XXXX')