PHP Cookies, die gut funktioniert auf localhost, aber es funktioniert nicht auf live-server

Hinweis: Dieses Problem ist bereits gelöst,
schließlich fand ich, dass es nicht die cookies
problem, das problem ist auf
unserialize () - Funktion. Die serialisiert
cookie, die die parameter des
diese Funktion muss stripslash-ed
erste.

Hallo zusammen, ich habe hier ein problem über PHP-Cookies. Ich bin mit der PHP-Cookies zum speichern von Benutzervorgaben. Ich habe getestet, mein code auf meinem lokalen Rechner (localhost mit XAMPP). Alles funktioniert sehr gut, auch die cookies. Aber wenn ich es hochgeladen auf den live-server, der cookies nicht funktioniert. Es scheint, dass die setcookie () - Funktion schreiben nicht die cookie-Wert. Ich habe getestet, indem echo-ing der cookie-Wert sowohl auf meinem localhost und auf meinem live-server. $_COOKIE[] Wert auf localhost zeigen, aber nicht mit der, die in dem live-server.

Ich dachte, vielleicht hängt es mit der $expire time zone wie die in diesem Beitrag http://anupraj.com.np/index.php/php-cookies-not-working-php-cookie-tutorial-and-scirpt/14 . Aber dann erkannte ich, ich habe eingestellt, dass die cookies verfallen in 1 Monat, nicht nur in einer Stunde, wie auf diesem blog-post. Also ich denke, das ist nicht der Fall.

Dies ist der Inhalt des setting.php

<?php
$defaultSettings['default_post_to'] = 'both';
$defaultSettings['timesince_style'] = 'simplify';
...
$defaultSettings['display_geo_info'] = 'true';
$defaultSettings['enable_javascript'] = 'true';

if(!isset($_COOKIE['settings'])){
    setcookie("settings", serialize($defaultSettings), time()+3600*24*30);
    header('Location: index.php');
}
$setting = unserialize($_COOKIE['settings']);
?>

- Und dies ist Inhalt der index.php

<?php
/*
ini_set ("display_errors", "1");
error_reporting(E_ALL);  
*/

session_start();

require_once("settings.php"); //Settings files
require_once('varlib.php'); //Get all possible passed variable
require_once('auth.php'); //Check for channel login status

//If inputbar form submitted
if( $_POST['inputbox'] ){
...
}
else{
    echo "SETTING COOKIE: <br/><br/>";
    //This print_r is only showing the $_COOKIE value (which is stored on $setting) on localhost but no on live server
        print_r($setting);
    switch( $com ){
        ...
    }
}
?>

Habe ich etwa suchen es überall (Google, stackoverflow, Fragen Sie Freunde auf twiiter/FB) noch keine Lösungen

Ich hoffe, dass einige Körper könnte mir die Lösung hier
Danke 🙂

Haben Sie versucht, den Pfad und die domain-Parameter von setcookie()?
Wenn Sie aktivieren error_reporting, bekommst du keine Fehlermeldung?
Vergleichen Sie die lokalen und live-server ist phpinfo() Ausgabe für die session Teil (wo die cookie-Einstellungen werden auch gezeigt).
noch nicht, ich werde es bald versuchen
Tatsächlich, auf Stack-Überlauf, wenn Sie gelöst haben, Ihr eigenes problem solltest du die Lösung posten als Antwort, und markieren Sie das als angenommen, statt vor '[gelöst]' auf Ihre Frage Titel

InformationsquelleAutor Kamal | 2010-12-13

Schreibe einen Kommentar