Cookies

Hallo,

ich bin neu in diesem Forum und auch generell mit Yii auch webapplikationen ^^. Habe mir das Buch agile Webapplication gekauft und bin dabei mir step by step alles beizubringen. Jedoch soll ich mich in einen schon geschriebenen Code einarbeiten, suche gerade Rat bei folgender Fragestellung.

Erstmal damit Ihr mich besser versteht, erlautere ich die Sachlage ein wenig.

Ich habe eine Cachetabelle welche auf der Homepage aufgebaut und angezeigt wird. Der User kann je nach belieben nach verschiedenen id’s name’s date’s etc seine suche verfeinern. Das problem ist jedoch sobald er etwas erganzt hat zb. ein KOmmentar kehrt diese Seite zur ursprunglichen Seite zuruck. Vergisst die verfeinerten Suchoptionen. Jetzt kommt meine frage.

Wie wird diese Eingabe gespeichert? bzw dadurch das yii alles auch in der url anzeigt koennte ich nicht die letzte url in einem cookie speichern um diese dann beim nachsten besuch dieses Overwievs wieder verwenden zu konnen? Wie es generell mit cookies geht habe ich verstanden jedoch blick ich bei yii noch nicht ganz durch wo die eingaben des users eingegeben werden… wenn ich das wusste koennte ich die eingaben speichern und eine if(cookie vorhanden) dann nutze sie

else standart seite

und dann wurde die seite ja ganz normal laden

also kann mir jemand helfen?


Yii::app()->user->setState('key', 'value');


$value = Yii::app()->user->getState('key')

Wobei die Userklasse darüber entscheidet wo die Stateinfo gespeichert wird. CWebUser benutzt Sessions, was mMn aber auch besser ist als die Infos in nem Cookie zu speichern. Das nur als Ergänzung, falls es wichtig für dich ist.

Vielen dank erstmal fuer die ersten Antworten, es waere jedoch wirklich lieb wenn ihr einbisschen detaiierter es beschreiben koenntet. bin wirklich neu generell in Webapplikationen.

Wurde mir sehr entgegen kommen, falls es nicht anders geht muss ich halt noch warten bis ich weiter einen einblick bekommen habe.

Mit freundlichen Gruessen

Azrail

Wobei man unterscheien muss, ob die Daten Seitenspezifisch oder Userspezifisch sind.

Falls die Daten Seitenspezifisch sind(und von jedem gelesen werden dürfen), kann man direkt das Cookie-Objekt benutzen.




<?php

$cookies = Yii::app()->request->cookies;

$cookies['name'] = new CHttpCookie('name', 'value');

$cookies->add(new CHttpCookie('name','value', $arrayOfOptions)); // ODER ab Yii 1.1.11 (obrige Methode weiterhin möglich)



okay mein problem ist das programmieren verstehe ich ja nur verstehe ich nicht genau wo ich diesen code einbringen soll…

vllt ne kleine skizze um meine denkensweise naeher zu bringen…

jetzt muss ich wissen wo ich ansetzen muss… wo wird diese end URL an den browser weitergegeben? wie finde ich das raus?

es tut mir wirklich leid bin neu dabei :( bringts mir bei und ich verspreche euch das ich auch im forum anderen neulingen weiterhelfen werde :)