tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
538
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Raven280438 Raven280438 ist offline Mitglied Brokat
    Registriert seit
    Aug 2007
    Beiträge
    329
    Hi,

    da ich nicht mit der PHP-Session arbeiten will, speichere ich Variablen in einer MySQL-Datenbank. Dazu "missbrauche" ich die $_SESSION - Variable.
    Zu Beginn des Skripts werden die Variablen aus der Datenbank ausgelesen, und am Ende werden sie wieder in die Datenbank gespeichert. Dazu erstelle ich einen String. (Key1|Value1|Key2|Value2|... )

    Das funktioniert auch wunderbar. Aber wie kann ich jetzt ein Array damit speichern? Hat jemand ne Idee?

    Auslesen der Variablen:
    PHP-Code:
    if ($session_id) {
      
    $get_vars abfrage("SELECT variablen FROM session_website WHERE nummer='$session_id' LIMIT 1");
      list(
    $var) = mysql_fetch_row($get_vars);
      
    $tmp explode("|",$var);
        for (
    $i=0;$i<count($tmp);$i=$i+2) {
            if (
    $tmp[$i])
                
    $_SESSION[$tmp[$i]] = $tmp[$i+1];
        }

    Speichern in der Datenbank:
    PHP-Code:
    $var "";
    foreach(
    $_SESSION as $key => $value) {
        if (
    trim($key) && trim($value)) {
            
    $var .= $key."|".mysql_escape_string($value)."|";
        }
    }
    abfrage("UPDATE session_website SET variablen='$var' WHERE nummer='$session_id'"); 
    (Die Funktion abfrage() sendet einfach ein Query und gibt das Ergebnis zurück)



    Gruß
     

  2. #2
    Registriert seit
    May 2007
    Ort
    Köln / Bonn
    Beiträge
    844
    Blog-Einträge
    4
    Wenn du das so machen willst, verwende besser serialize() http://de.php.net/manual/de/function.serialize.php

    Damit kannst du auch Arrays wieder herstellen.
     
    Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

  3. #3
    Avatar von Hirnhamster
    Hirnhamster Hirnhamster ist offline Mitglied Gold
    Registriert seit
    Nov 2006
    Beiträge
    186
    Auch wenns OT ist:

    Was spricht gegen die PHP eigenen Sessions?
     

  4. #4
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ich würde direkt die PHP-eigene Sitzungsspeicherung ändern (siehe session_set_save_handler()-Funktion) und dann wie gewohnt mit den Sitzungen arbeiten. Siehe dazu auch Sessions in der Datenbank speichern.
     
    Markus Wulftange

  5. #5
    Moszeed Moszeed ist offline Rookie
    Registriert seit
    Aug 2007
    Beiträge
    7
    um arrays als string zu speichern am besten JSON nutzen ...
    json_encode() und json_decode()


    www.json.org
     

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 05.12.10, 23:07
  2. String-Array nach Int-Array sortieren
    Von Wolfy0013 im Forum Java
    Antworten: 5
    Letzter Beitrag: 06.05.10, 17:05
  3. Antworten: 4
    Letzter Beitrag: 11.06.07, 21:40
  4. LUA string aufteilen und in array speichern
    Von fightor im Forum Sonstige Sprachen
    Antworten: 0
    Letzter Beitrag: 22.05.06, 19:29
  5. String in einem Array speichern
    Von untread im Forum VisualStudio & MFC
    Antworten: 7
    Letzter Beitrag: 28.12.05, 19:50