wie erzeugt eindeutige Sitzungs-ID, ohne die Verwendung von session_id()?
Möchte ich zum generieren einer session-ID. Diese einzigartige sessionId stellt einige verschiedene Daten für alle anderen Benutzer.
Mein code bis jetzt:
-
onclick-und onload einer Seite rufe ich eine Funktion
create_session_id();
function create_session_id() { //This function sends a string to a PHP page using ajax post. }
-
Auf meiner PHP-Seite habe ich diese Daten empfangen und dann legen Sie es:
session_start(); $a = session_id(); $object->insert_sessionid($a);
Meine Frage
Ist es möglich, mit nur session_start()
(keine session_id()
) und speichern einige eindeutige Sitzungs-ID-Wert, den ich später verwenden können, wenn ich Daten abrufen und werfen Daten auf meiner web-Seite. Ich will keine Klicks zu registrieren sessionid. Sollte es passieren beim laden der Seite und ohne Funktion create_session_id()
.
Ich bin am überlegen, einige cookies auf dem Bild.
Hinweis: Meine website nicht zulassen, anmelden.
- uh, wenn Sie darüber nachdenken, bringen cookies, sollten Sie erkennen, dass PHP-sessions standardmäßig verwenden cookies sowieso. So verwenden Sie einfach ein session_start(), dann verwenden Sie
session_id()
um die session-ID, die erstellt wurde (oder wird wiederverwendet). - Sie können einige Art von Schalter?
- session_start() können auf jeder beliebigen php-Seite ohne die Notwendigkeit für zusätzliche Interaktion mit dem Benutzer darüber hinaus Sie einfach die Seite anfordern. ABER-nicht mit einem "login" oder einfach die Verwendung von cookies ist von Natur aus unsicher, und Benutzer-clearing-cookies erzeugen würde, eine neue "eindeutige" session -, so würden Sie nicht in der Lage sein zu verfolgen, eine "user" - dies nur wiederholen-Sitzungen vom gleichen browser, die akzeptiert haben, und nicht gelöscht, die cookies.
- Er könnte wahrscheinlich, würde aber nicht verursachen, dass eine potentielle Bedrohung der Sicherheit, wie session-ids, könnte leicht zu erraten ist?
- nicht brauchen, um die Wiederverwendung session-id..die Sache ist Die bin-tracking user-Verhalten auf einer Webseite.Jeder user kommt auf website-landing-page gegeben werden sollte, eine session-id.offensichtlich muss jeder Benutzer das Verhalten wird anders sein.Mir wurde gesagt, dass Sie tun können dieses nur durch die Verwendung von session_start().Können Sie mir einen kleinen Schnipsel.Die Sache ist die, ich brauche eine Funktion wie create_session_id() und generieren möchten, die session-id auf laden??wie macht man das?
- uh, session_id() erzeugt eine Zufalls-Id für neue Benutzer, und speichert ihn in einem clientseitigen cookie. Wiederkehrende Nutzer schicken über die ID die Sie zugewiesen wurden, und session_start() verwenden, die ID. Sie müssen nicht ALLES tun, um dieses Verhalten, es ist die standard-PHP.
Du musst angemeldet sein, um einen Kommentar abzugeben.
verwenden Sie eine Funktion wie
- und pass-return Wert im session-id
Dem obigen code ist ein bisschen buggy, da
user669677
bearbeitet hat.Hier ist der richtige code: