Wie gebe ich Sitzungsvariablen in PHP von einer Domäne an eine andere weiter?

8

Ich habe eine Situation festgestellt, in der ich $ _SESSION-Variablen von einer Domäne an eine iFrame-Seite einer anderen Domäne übergeben muss. Ich habe die letzten 16 Tage damit verbracht, verschiedene Methoden auszuprobieren, ohne Erfolg. Ich denke, dass der einzige logische Weg wäre, die Variablen in der URL zu verschlüsseln, die den iFrame aufruft und sie auf der iFrame-Seite dekodiert. Ich bin mir nicht sicher, wie ich das machen soll und ich suche nach Proben, Hilfe usw., die ich finden kann.

Danke für alle Vorschläge.

Hier ist ein Beispiel von dem, was ich versuche zu tun ...

Beispiel:

%Vor%

Von hier aus treffe ich die iframe_test.php und mache folgendes: PHP-Code:     Funktion StripSpecChar ($ val) {     return (preg_replace ('/ [^a-zA-Z0-9 "" -. @: / _] /', '', $ val));     }

%Vor%

und ich bekomme ein Session-Array, das so aussieht: Code:

%Vor%

Noch immer alles gut .... nenn den iFrame

Code:

%Vor%

Also, wie nehme ich ...

%Vor%

und verwandle es in die verschlüsselte URL, nach der ich suche? Weiter, wenn das erledigt ist, bekomme ich die Session-Vars zurück als Session-Vars auf der neuen Domain-iFrame-Seite ...

    
Dave 26.04.2010, 16:25
quelle

4 Antworten

2

Serialisieren Sie das sessiondata-Array, senden Sie es als Parameter und deserialisieren Sie es anschließend Ссылка

    
Jonas B 26.04.2010 16:31
quelle
1

Verwenden Sie serialize () und dann base64_encode () um die Daten zu übermitteln, ohne sie zu beschädigen und (meistens) ihre Struktur zu erhalten.

Es ist keine gute Übung, denn dann kann jeder, der herausfindet, wie es funktioniert, beliebige Daten injizieren, aber wenn es das ist, was Sie tun wollen, wird es funktionieren.

    
Abraham Vegh 26.04.2010 16:33
quelle
1

Warum senden Sie nicht einfach die Sitzungs-ID an die andere Domäne (und nehmen an, dass sie dasselbe Sitzungsspeichersubstrat lesen können), verwenden Sie diese als Sitzungs-ID dort, z. B.

%Vor%

C.

    
symcbean 26.04.2010 16:47
quelle
0

Sie können ein assoziatives Array verwenden und es in einen Abfrage-String mit der Funktion Ссылка

Hinweis: Das zweite von Ihnen gepostete Array ist nicht die korrekte Ausgabe eines Session-Arrays.

Nehmen Sie auf der empfangenden Seite / Domäne einfach die Abfragezeichenfolge und platzieren / bereinigen Sie die erwarteten Parameter in Ihr $ _SESSION-Array (oder was immer Sie damit tun müssen).

Dies ist sicherer als etwas zu verwenden, das serialisiert / unserialisiert, da nur Arrays verwendet werden.

    
webbiedave 26.04.2010 16:31
quelle