Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung PHP

GELÖST

Will Variable in Cookie schreiben und auslesen

Mitglied: Michi262

Michi262 (Level 1) - Jetzt verbinden

14.08.2008, aktualisiert 21.08.2008, 5048 Aufrufe, 12 Kommentare

Hi

ich hab wieder ne frage und zwar ich will ein Admincenter schreiben. Da es hierbei 3 verschiedene Adminklassen geben soll wollte ich via jedes mal abfrage wenn er eine Seite aufruft ob in dem Cookie seine Berechtigung für diese Seite vorhanden ist.

Doch leider gibt es shcon Probleme bie der erstelllung des Cookies. Kann mir bitte einer helfen? Bin am verzweifeln.

Hier meine zeile wie ich den Cookei erstelle

01.
setcookie("d-d_admincenter", $adminlevel, time()+(24*60*60));
das Adminlevel ist entweder 1, 2 oder 3.

Wäre nett wenn mir wer schreiben könnte iwe ich den Cookie richtig erstellt und wie ich das adminlevel auch wieder abfragen kann.

Gruß
Michi262
Mitglied: Fritzchen
14.08.2008 um 13:53 Uhr
Hallo Michi262

Also solche Adminsachen über Cockies zu regeln halte ich immer zu riskant. Es ist ja nicht immer davon auszugehen das jeder auch Cockies zuläßt.
Ich verwende hierfür immer eine Sessionverwaltung.

Tschau Fritzchen.
Bitte warten ..
Mitglied: Arano
14.08.2008 um 14:34 Uhr
Ich rate auch zu der Sessionvariante aber nicht weil die Möglichkeit besteht das die Benutzer sie nicht akzeptieren sondern weil die Cookies Clientseitig gespeichert werden.
Und weil sie Clientseitig gespeichert werden, könnte man sie ganz einfach mit einem Texteditor bearbeiten, den Adminlevel hochsetzen und schon hast du Benutzer in deinem Adminbereich die dort nicht zu suchen haben.

Die Sessions werden Serverseitig gespeichert, das heist also das der Benutzer keinen Zugriff auf die Datei hat, demnach kann der Adminlevel auch nicht geändert werden.

!! Um eine Session jedoch einem Benutzer zuzuordnen, wird dem Client die Session-ID übergeben, die er bei jedem neuem Request mitsendet.
Entweder wird die Session-ID als Seitenparameter übertragen oder, sofern aktiviert, per Cookie !!

Zu den Cookies in PHP: PHP-Cookies
Zu den Sessions in PHP PHP-Sessions

~Arano
Bitte warten ..
Mitglied: Michi262
14.08.2008 um 20:37 Uhr
ok. danke ich werd mir das mal anschaun

Gruß
Michi26206
Bitte warten ..
Mitglied: Michi262
15.08.2008 um 17:02 Uhr
sry wegen doppelpost aber sonst ließts keiner.

ich hab mir das mit den Sessions mal angeschaut (weil ich es so machen will) bin abe rnicht shclau daraus geworden kann mir da evtl. wer helfen?

Gruß
Michi262
Bitte warten ..
Mitglied: Arano
15.08.2008 um 19:34 Uhr
Wo hängt es denn ?

Vielleicht hilft dir dies hier ja etwas weiter:
01.
<?php 
02.
 
03.
// sessionmanagement aktivieren 
04.
// (muss vor der ersten ausgabe an den browser geschehen !) 
05.
session_start(); 
06.
 
07.
 
08.
// wenn die session geloescht werden soll 
09.
if(isset($_GET['logout'])){ 
10.
      $_SESSION['name'] = NULL; 
11.
      session_destroy(); 
12.
13.
 
14.
 
15.
// wenn das formular abgeschickt wurde, speichere "name" in eine Sessionvariable 
16.
if(isset($_POST['name']) && trim($_POST['name'])!=''){ 
17.
      $_SESSION['name'] = trim($_POST['name']); 
18.
19.
 
20.
 
21.
// pruefen ob eine sessionvariable namens "name" existiert... 
22.
if(isset($_SESSION['name'])){ 
23.
      // ...sessionvariable "name" exitier, gebe sie aus: 
24.
      echo 'Ihr Name lautet: <b>'.$_SESSION['name'].'</b><br><br> 
25.
            <a href="'.$_SERVER['PHP_SELF'].'?logout">l&ouml;schen</a><br>'
26.
} else
27.
      // ...sessionvariable existiert nicht, zeige formular: 
28.
      echo 'Keine Sessionvariable names "name" vorhanden !<br> 
29.
            <form action="'.$_SERVER['PHP_SELF'].'" method="POST"
30.
              <input type="text" name="name" value=""><br> 
31.
              <input type="submit" value="&Uuml;bernehmen"
32.
            </form><br>'; 
33.
34.
?>
..oder dies hier: PHP-Quake.net-Tutorials - Sessions

Gruß Arano
Bitte warten ..
Mitglied: Michi262
16.08.2008 um 15:08 Uhr
Hi

danke für die Anleitung funktioniert nun bestens.

Noch ne frage: Wie lang gilt die Session und ist es möglich Sie für 24h gültig zumachen?

Gruß
Michi262
Bitte warten ..
Mitglied: Arano
16.08.2008 um 18:32 Uhr
Gern geschehen.

Theoretisch schon.
Aber nur über Einstellungen in oder an der PHP.ini (ini_set()).
Und nur wenn der Browser in dieser Zeit nicht geschlossen wird, den eine Session ist nur innerhalb der Session (Seite aufrufen bis BROWSER geschlossen) gültig.

Zu der PHP.ini.
PHP hat eine Session Garbage Collection 1
  • "session.gc_probability"
  • "session.gc_divisor"
  • "session.gc_maxlifetime"
Aus den ersten beiden Direktiven wird ein wahrscheinlichkeitswert berchnet mit dem der GC beim aufrufen einer Seite ausgeführt wird.
Wenn der GC ausgeführt wird, werden die Session die älter als "gc_maxlifetime" sind gelöscht !

Eine andere Möglichkeit wäre in einem Cookie einen "Schlüssel" beim Besucher zu speichern über den du einen Besucher einmalig wiedererkennen kannst, worauf eine neue Session erstellt wird. Dieser Schlüssel wird natürlich mit der Neuerstellung der Session geändert.
(Diese Methode erfordert eine zusätzlich DB-Tabelle in der die Schlüssel und z.B. die ID des entsprechenden Benutzers stehen um ihn wieder einzuloggen).

Gruß Arano
Bitte warten ..
Mitglied: Michi262
16.08.2008 um 20:32 Uhr
Hi

danke für die Antowrt. Wärst du so lieb und könntest mir da auch noch ne Anleitung schreiben?

Gruß
Michi26206
Bitte warten ..
Mitglied: Arano
16.08.2008 um 23:47 Uhr
Nein sorry, da muss ich passen....

...so komisch es klingen mag, aber das habe ich selber noch nicht gemacht :D
Solange "Relogins" habe ich bis jetzt nicht gebraucht, schließlich steigt auch das Risiko je länger die Zeitspanne ist in der man sich nicht wieder Authentifizieren muss.
(Kommt natürlich auch auf den Verwendungszweck an)

~Tobias
Bitte warten ..
Mitglied: Michi262
17.08.2008 um 17:58 Uhr
Hi

macht nix habes andes hinbekommen.

Ich hab noch ne frage normal muss er mir doch so das datum in ne Session speichern oder?

01.
$time = date("y.m.d H:i:s ", time()); 
02.
$_SESSION['d-d_admincenter_login_time'] = trim($time);
Gruß
Michi26206
Bitte warten ..
Mitglied: Arano
17.08.2008 um 18:06 Uhr
Jap, normal schon, vorausgesetzt, am Anfang der Datei wird das Sessionmanagement gestartet !
( "session_start()" siehe erste Zeilen meines Beispiels weiter oben)

~Tobias
Bitte warten ..
Mitglied: Michi262
21.08.2008 um 00:23 Uhr
Hi

ja es steht am anfang. Geht jetzt auch ka warum es davor nicht ging.
Gruß
Michi262
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mehrere Ordnernamen auslesen und in eine Variable schreiben
gelöst Frage von schmithoBatch & Shell5 Kommentare

Hallo zusammen, ich versuche verzweifelt eine Lösung eines Problems zu finden, wie ich den Namen mehrere Ordner in eine ...

Batch & Shell
Variable per Batch auslesen und in Registry schreiben
gelöst Frage von ZendaraBatch & Shell3 Kommentare

Hallo, ich versuche gerade einen Batch zuerstellen der mir gewisse Werte ausliest und als Variable in die Registry schreibt. ...

Java
Mit Java SID des angemeldeten Benutzers auslesen und in Variable schreiben
gelöst Frage von reissaus73Java2 Kommentare

Wer kann mir bei folgenden Problem helfen. Wie kann man die SID des angemeldeten Users in Java auslesen und ...

Batch & Shell
Textdatei zeilenweise in Variable schreiben
gelöst Frage von goodbytesBatch & Shell20 Kommentare

Hallo, mit einer Batch möchte ich mehrere Laufwerke mappen, abhängig vom Usernamen. Klar könnte ich auch für jeden User ...

Neue Wissensbeiträge
Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 12 StundenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 13 StundenSicherheit7 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 14 StundenSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Sicherheit

Meltdown und Spectre: Die machen uns alle was vor

Information von Frank vor 14 StundenSicherheit12 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Heiß diskutierte Inhalte
Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von 92943Windows 1031 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
gelöst Frage von IngenieursBatch & Shell29 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
Frage von Windows10GegnerNetzwerkgrundlagen20 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...