SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 31.08.2002, 18:04:32
Magnus Magnus ist offline
Anfänger
 
Registriert seit: Aug 2002
Beiträge: 7
Magnus eine Nachricht über AIM schicken
Variablen mit session_id übergeben?

Hallo,

ich tüftel hier nun schon ein paar tage rum ohne so recht zufriedenstellende Ergebnisse.

Es geht um einen Login-Bereich und die weitere Behandlung der übergebenen Daten.

So dachte ich mir das:

1. User + Login eingeben und Abfrage des Table "login" ob diese vorhanden sind.

2. Im Table "login" ist dem User/Login-Datensatz eine eindeutige User_id zugeortnet, welche sich im Table "user" wieder findet um z.B. auf die Adressdaten zuzugreifen.

Zudem werden die User vom Admin in Statusgruppen (0,1,2,3,4) unterteilt. Dieser Status ist ebenfalls im Table login vorhanden.

Es soll nun folgendes passieren:

Sind die Zugangsdaten des Users vorhanden, soll die User_ID und dessen Status durch den gesamten Memberbereich "mitgeschleppt" werden.

Je nach Status darf der User verschiedene Seiten angezeigt bekommen. Bsp:
Status 0 = (ungeprüfter User) Willkommen-Seite mit allgemeinen Infos + eigenes Profil
Status 1 = (geprüfter User)Willkommen-Seite, Link zum Profil, User-Links/Seiten
Status 2 = (Support) Willkommen-Seite, Link zum Prof., User-Links/Seiten, Support-links/Seiten
Status 3 = (Co-Admin) alles von Status 2 + Statistiken
Status 4 = (Admin) alles

Meine Probs sind nun:

- Wie schlepp ich die User_ID und vorallem den Status unveränderbar durch die Seite, ohne auf Cookies zurückzugreifen.
Keine Kekse eben halt wegen der Browser-Einstellungsproblematik.
Der Status soll auch nicht mit datei.php?status=0&... übergeben werden. Wegen der Sicherheit versteht sich.

Ich möchte jedoch auch vermeiden, auf jeder neuen Seite den Status aus dem Table "login" zu lesen.

Gibt es ne Möglichkeit diese Daten zu verschlüsseln bzw. versteckt weiter zu geben .... spontan fiel mir da was in richtung sessions ein, oder?

- Wie müste dann der Status auf jeder Seite gegen den $status geprüft werden. Also, falls der User wie auch immer einen direkten Link zu einer Seite bekommt oder hat, zu der ihm die Berechtigung fehlt. Er dürfte dann nur eine Fehlermeldung sehen bzw. müsste weiter geleitet werden auf eine Seite die er sehen darf.

Wie kann ich evtl. das einblenden der Links / Navigation vom Status abhängig machen?
Normal würde ich das ja so machen:

"Profil"
if ($status > 0) {
Link zu den Userseiten
}
elsif ($staus > 1){
Links zum support
}
u.s.w.

Aber wie kann man (falls das überhaupt geht) den Status dann aus der session auslesen?

Boah...soviel auf einmal...
nuja... vielleicht hat ja jemand auch ein paar gute Links wo sowas aufgebaut und erklärt ist.
Mein 1200 Seiten PHP-Buch ist zwar ganz nett, jedoch mitunter etwas schlecht beschrieben bzw. wenig komplexe Demo-Listings.

So.. nu ihr :-)
Mit Zitat antworten
  #2  
Alt 31.08.2002, 18:40:42
Benutzerbild von CyberAge
CyberAge CyberAge ist offline
Junior Member
 
Registriert seit: Apr 2002
Alter: 42
Beiträge: 282
CyberAge eine Nachricht über ICQ schicken CyberAge eine Nachricht über AIM schicken CyberAge eine Nachricht über Yahoo! schicken
also während des logins müßtest du mit

session_start();

die session starten. danach kannst du mit

$_SESSION[name] = "inhalt";

inhalte in die session schreiben. Auslesen kannst du die werde auf dem selben Weg.

echo $_SESSION[name];

würde in diesem fall ein "inhalt" ausgeben. Das Problem mit den Cokkies löst sich bei Sessions von alleine! Es setzt, falls es geht ein Cookie, um die aktuelle Session-ID zu speichern. Falls es nicht geht, wird automatisch am Ende der URL die session-id in form von ?sid=....... angehangen, damit auch die nachfolgenden seiten die session-id erhalten. das einzige, was in jeder seite als erstes gemacht werden sollte ist das session_start(); denn ohne erhält man keinen zugriff auf die in der session gespeicherten daten!
__________________
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Im Leben ist nichts umsonst!
Selbst der Tod kostet das Leben!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mit Zitat antworten
  #3  
Alt 31.08.2002, 19:27:08
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
also ich würde es auch mit sessions aufbauen. so hast du eine gewisse sicherheit was den userstatus angeht, aber ohne cookies hast du wieder das problem das der user für den du ihn hälst nicht der richtige ist...

bsp.:

der user hat sich mit den daten registiert:

namen: Max Mustermann
usernamen: M@X
passwort: 123456

zu geteilter status: 3

nun kommt aber ein schlaues kerlchen und verschafft sich durch irgendwelche wege die zugangs daten von M@X somit könnte er sich ein loggen und als M@X mit dem status 3 umher irren und eventuell scheisse bauen...

aber ich denke mal nicht das du eine seite fürs pentagon schreibst :-}
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #4  
Alt 31.08.2002, 20:55:03
Benutzerbild von CyberAge
CyberAge CyberAge ist offline
Junior Member
 
Registriert seit: Apr 2002
Alter: 42
Beiträge: 282
CyberAge eine Nachricht über ICQ schicken CyberAge eine Nachricht über AIM schicken CyberAge eine Nachricht über Yahoo! schicken
@ |Coding:

Dieses Problem besteht aber bei allen Einlogg-vorgängen! Sobald man Benutzername und Password hat kommt man rein! Wenn ich jetzt dein password herausfinden würde, könnte ich auch mit deinem namen in diesem Forum (und falls du das password noch woanders verwendest dort ebenfalls) schaden anrichten, da du ja schließlich hier ein paar rechte hast als mod. Das einzig sichere wäre eine Anmeldung über biologische parameter wie daumenabdruck, Iriserkennung, stimmprüfung oder DNA test. Allerdings währe das für eine internetseite schlecht herzustellen und vor allem auch überflüssig!
__________________
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Im Leben ist nichts umsonst!
Selbst der Tod kostet das Leben!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mit Zitat antworten
  #5  
Alt 31.08.2002, 21:03:52
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
ok, das ist jetzt über trieben...

aber auch mit biologischen login mitteln kann ich rein kommen, ich muss dir nur nen finger abscheiden, ein haar ausreissen oder dir eine auge zocken.. :-)

aber ich denke mal auf kurz oder lang werden biologische login mittel sicher mal in gebrauch kommen... selbst jetzt wir schon mit biologischem material getestet... z.b. geldautomaten oder so und wenn die nicht sicher sind dann weis ich auch net...

aber wir kommen vom thema ab...

einen 100% sicheren login gibt es nicht das weis man... das mit den cookies war ein denkfehler meinerseits... sorry


ps: ich bin kein mod.... ich bin super mod. :-) darauf bestehe ich *g* (kleiner scherz am rande)
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #6  
Alt 01.09.2002, 02:16:02
Viper Viper ist offline
Anfänger
 
Registriert seit: Jun 2002
Beiträge: 75
Hi!

Also mit Sessions und einer Anmeldung ohne Cookies ist es immer noch am sichersten.
Einloggen auf der Seite und die Daten in der Session schreiben. Würde das ganze mit Cookies gemacht dann wären Benutzername und Passwort in diesem Cookie auf dem Client Rechner gespeichert und jeder der Zugang zum Rechner hat käme ohne Probleme auf die Seite und somit an die Benutzerdaten.
Zwar wird immer noch ein Cookie auf dem Client Rechner gespeichert aber nur mit der Session ID bzw. dem was man sonst noch da rein schreiben könnte.

Gruss, Viper
Mit Zitat antworten
  #7  
Alt 01.09.2002, 05:33:24
Benutzerbild von CyberAge
CyberAge CyberAge ist offline
Junior Member
 
Registriert seit: Apr 2002
Alter: 42
Beiträge: 282
CyberAge eine Nachricht über ICQ schicken CyberAge eine Nachricht über AIM schicken CyberAge eine Nachricht über Yahoo! schicken
außerdem funktionieren sessions auch ohne cookies! dann wird halt die session-id mit der URL übergeben! das einzige, was wirklich auf jeder seite gemacht werden muß ist das "session_start();" , da man sonst nicht an die $_SESSION - Daten kommt!
__________________
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Im Leben ist nichts umsonst!
Selbst der Tod kostet das Leben!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mit Zitat antworten
  #8  
Alt 01.09.2002, 12:10:18
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
wo steht den das mit dem "cookiezwang" bei sessions, das hab ich irgendwie überlesen...
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #9  
Alt 01.09.2002, 13:07:11
Ben20
Guest
 
Beiträge: n/a
Willst Du wissen, wie man die verwendung von Cookies abstellt oder meinst Du was anderes?

Letztes geht so:

ini_set ("session.use_cookies","0");
Mit Zitat antworten
  #10  
Alt 01.09.2002, 15:03:36
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
nö das wollte ich nicht wissen... ich wollte wissen wer gesagt/geschrieben hat, das bei sessions unbedingt cookies nötig sind.
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:31:54 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt