[php] Suchbegriffe in cookie speichern

Florian

Angesehenes Mitglied
Hallo,
ich speichere mit folgenden Script die letzten 10 Suchanfragen in einer TXT-Datei:

CODE
<?php
class suchbegriffe_loggen {
var $keywords;
function suchbegriffe_loggen()
{
$data = explode("|", implode("", file("suchbegriffe/suchbegriffe.txt")));
$this->keywords = $data;
}
function get_suchbegriffe()
{
return $this->keywords;
}

function add_suchbegriff($keyword)
{
{
array_shift($this->keywords);
$this->keywords[] = $keyword;
}
}
function save()
{
$fp = fopen("suchbegriffe/suchbegriffe.txt", "w");
fwrite($fp, implode("|", $this->keywords));
fclose($fp);
}
}
$such = new suchbegriffe_loggen();
//Speichern
$such->add_suchbegriff($_GET["q"]);
$such->save();
$keywords = $such->get_suchbegriffe();
foreach($keywords as $key)
?>



Jetzt möchte ich die letzten 10 Suchanfragen in einem Cookie speichern.

CODE <?php
if($_COOKIE["letztesuchen"]) {
$letztesuchenwerte = $q."|||||||||";
setcookie("letztesuchen",$letztesuchenwerte);
}
class suchbegriffe_loggen {
var $keywords;
function suchbegriffe_loggen()
{
$letztesuchen = $_COOKIE["letztesuchen"];
$data = explode("|", implode("|", $letztesuchen));
$this->keywords = $data;
}
function get_suchbegriffe()
{
return $this->keywords;
}

function add_suchbegriff($keyword)
{
{
array_shift($this->keywords);
$this->keywords[] = $keyword;
}
}
function save()
{
$werte = implode("|", $this->keywords);
setcookie("letztesuchen", $werte);
}
}
$such = new suchbegriffe_loggen();
//Speichern
$such->add_suchbegriff($_GET["q"]);
$such->save();
$keywords = $such->get_suchbegriffe();
foreach($keywords as $key)
?>


Wo liegt den bloss der Fehler?

MFG
Florian
 
Als Fehler kriege ich immer:

QUOTE Warning: implode(): Bad arguments. in /cookie/1.php on line 15

Warning: Cannot modify header information - headers already sent by (output started at /cookie/1.php:15) in /cookie/1.php on line 33


MFG
Florian
 
Vor dem Cookie setzen darf kein HTML-Code ausgegeben werden. Dazu zählen auch Leerzeichen!
 
QUOTE (Magnus Aufschild @ Mo 6.3.2006, 19:58) Vor dem Cookie setzen darf kein HTML-Code ausgegeben werden. Dazu zählen auch Leerzeichen!

Ist schon klar. Aber was mache ich in Zeile 15 Falsch.


QUOTE Warning: implode(): Bad arguments. in /cookie/1.php on line 15


MFG
Florian
 
Zeile 15 ist ja in deinem Quote nur ne Klammer. Fakt ist in Zeile 15 wird Output produziert ("..output started at /cookie/1.php:15..")
 
Zurück
Oben