2013-09-25 5 views
0

Я пытаюсь установить cookie для запоминания пользователей (в течение 3 дней), поэтому им не нужно будет заходить на сайт каждый раз, когда они закрывают браузер.запомнить пользователя в течение нескольких дней - cookie

Я попытался следующие:

<?php 
if(isset($_POST["logind_ok_tjek"])) 
{ 
    if ($stmt = $this->mysqli->prepare("SELECT `id`, `rank_hold`, `navn`, `efternavn`, `email_indhold`, `adgangskode`, `rank`, `img` FROM `bruger` WHERE `email_indhold` = ? or tlf = ? AND `adgangskode` = ?")) 
    { 
     $stmt->bind_param('sss', $email_indhold, $tlf, $adgangskode); 
     $email_indhold = $_POST["email"]; 
     $tlf = $_POST["email"]; 
     $adgangskode = sha1($_POST["pass"]); 


     $stmt->execute(); 
     $stmt->store_result(); 
     $stmt->bind_result($id, $rank_hold, $navn, $efternavn, $email_indhold, $adgangskode, $rank, $img); 
     $stmt->fetch(); 
     $count = $stmt->num_rows; 
     $stmt->close(); 

     if($count > 0) 
     { 
      $_SESSION["logged_in"] = true; 
      $_SESSION["id"] = $id; 
      $_seesion["rank_hold"] = $rank_hold; 
      $_SESSION["navn"] = $navn . " " . $efternavn; 
      $_SESSION["rank"] = $rank; 
      $_SESSION["img"] = $img; 
      $_SESSION["mail"] = $email_indhold; 

      setcookie("Navn", $navn . " " . $efternavn, time()+3600); 
      setcookie("indhold", $rank_hold, time()+3600); 


       if($_SESSION["logged_in"] == true) 
       { 
        if ($stmt = $this->mysqli->prepare('UPDATE `bruger` SET `online_sidste`=? WHERE `id`=?')) { 
         $stmt->bind_param('si', $online_sidste, $id); 
         $online_sidste = date('Y-m-d H:i:s'); 
         $id = $_SESSION["id"]; 
         $stmt->execute(); 
         echo "Log ind nu!!"; 
         $stmt->close(); 

        } else { 
         echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error; 
        }      
       } 
       else 
       { 
        echo "Fejl..";  
       } 
     } 
     else 
     { 
      echo "Forkert Email eller password."; 
     } 
    } 
    } 
    ?> 

Чтобы получить доступ к куки, я использую:

<?php 
     echo $_COOKIE["Navn"]; 
     ?> 

Это не работает, однако ...

+0

время + 3600 .. 3600 - сколько секунд для хранения cookie. 3600 = один час. – skrilled

+0

Есть ли ошибки в журнале PHP? –

+0

, а не ошибки на куки, @JustinWood –

ответ

0

// набор печенье, которое истекает через 72 часа, вы можете попробовать с этим

setcookie("Navn", $navn . " " . $efternavn, time()+3600*72); 
setcookie("indhold", $rank_hold, time()+3600*72); 

setcookie Параметр функции expire принимает значение в секундах. time() выдает текущий unix_timestamp, затем вы добавляете 3600 * 72 (3600 секунд * 72 часа), что эквивалентно 3 дням (в секундах).

+0

Спасибо за помощь, :) теперь я только что сделал, чтобы она появилась на странице. –

+0

если я скажу print_r ($ _ COOKIE); так что приходите "** Массив ([PHPSESSID] => 3eef1591bb0deb8a513961360f2b1e69 [_ga] => GA1.2.1139435237.1379009588) **« так эта ошибка пришла –

Смежные вопросы