Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi,

Ich habe ein riesen session problem. Ich weiss dass wenn ein user sich einlogt wird dieser user erst gecheckt wenn er in DB existiert wird an den Datensatz die session_id() hinzugefüg bzw. upgedated. Dann fängt der session auf der nächsten seite die ich aufrufe an weil ich sehe im browser dass der PHPSESSID an den jeweiligen Seiten angehängt wird aber manchmal auch nicht. Ich muss zugeben ich habe vorher noch nie mit sessions gearbeitet und ich weiss nicht ob das so üblich ist dass die PHPSESSID im browser immer sichtbar sein muss. Tuts helfen bringen mich nicht viel weiter.

Da ist eine Suchroutine in meinem Projekt wo der user aussuchen kann nach welchen kriterien ein kunde gesucht werden soll. Nach firma, nach vornamen oder nach dem nachnamen. Dann wird er auf die entsprechende Seite gelinkt wo er dann die such daten eingeben kann. Die Ergebnisse werden als Link erzeugt wo von den

Kunden nur vor- und nachname sichtbar ist. Dieser link führt dann zum entsprechenden detail ausgabe von jeweiligen Kunden.

HIER BEGINNT AUCH DAS GANZE PROBLEM . Um den entsprechenden Kunden zu identifizieren hänge ich '.$row['ID'].' an den detail.php . Und im detail.php baue ich die '.$_REQUEST['rid'].'in meine sql Abfrage (siehe codeschnipsel unten)

select.php :

<?php

while ($row =mysql_fetch_assoc($result)):

echo("<a href=\"detail.php?rid=".$row['ID']."\">".$row['fname']." ".$row['lname']."</a>");

endwhile;

}

?>

detail.php:

<?php

$sql = "select customers.fname, customers.lname,

customers.number, customers.email, company.name,

city.name from customers,company,city

where customers.companyID=company.ID

AND customers.cityID=city.ID

AND customers.ID='" .$_REQUEST['rid']. "'";

$result = mysql_query($sql);

?>

Die details kriege ich angezeigt aber die PHPSESSID ändert

sich und ich verstehe einfach nicht warum ?

Kann mir bitte ein PHP GURU helfen ?

Geschrieben
Original geschrieben von tahir

Hi,

Ich muss zugeben ich habe vorher noch nie mit sessions gearbeitet und ich weiss nicht ob das so üblich ist dass die PHPSESSID im browser immer sichtbar sein muss.

das ist von den einstellungen in der php.ini abhängig.

wenn "session.use_cookies" auf "1" steht, dann sollte die session id nie auftauchen, da sie beim client per cookie hinterlegt wird.

es ist auch möglich per ini eine einstellung zu setzen, damit der webserver automatisch an jeden link die session id anhängt. aber wie der paramter heisst, fällt mir im moment nicht ein.

-----------------

anhand der session id etwas in der db zu speichern, ist auch nicht gerade sinnvoll, da die session wenn sie per cooklie gespeichert wird, ne bestimmte lebensdauer hat, und der user dann wenn er die site später mal besucht, ne neue session id bekommt, nicht mehr die welche er z.b. vor 6 wochen hatte als er auf deiner page war.

deshalb am besten beim einloggen des users, desssen user_id aus deiner db auslesen, diese in die session speichern, und bei jeder aktion, die dieser user dann ausführt, dessen user_id aus der session nehmen und mit in die db eintragen.

so hälst du dein system unabhängig von der session id.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...