[PHP] Session per Cookie übergeben

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Poncho, 9. Dezember 2006 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. Poncho
    Poncho Neu
    Stammnutzer
    #1 9. Dezember 2006
    Session per Cookie übergeben

    Hey.

    Ich bin jetzt fast am verzweifeln.

    Zuerst wird der Username und das Passwort mit der Datenbank abgeglichen, wenn die Login-Daten stimmen, wird die Session erstellt und in ein Cookie gespeichert:

    PHP:
         if( $row1 -> user_password  ==  $passmd5 )
            {
            
    session_start ();
            
    $_SESSION [ "username" ] =  $username ;
            
    setcookie ( session_name (),  session_id (),  time ()+ 3600 );
            
    $loginreport  "Erfolgreich" ;
            }
            else
            {
            
    $loginreport  "Fehlgeschlagen" ;
            }


    Und die Session wird auch vom Browser im Cookie anhand ihrer ID gespeichert.

    Wie kann ich jetzt die Session in ein anderes PHP-Script per Cookie übergeben/bzw rausholen?

    Nicht lachen, ich hätte es jetzt folgendermaßen probiert, aber klappt ja nicht.. ;)

    PHP:
    $_SESSION  $_COOKIE [ 'session_id' ];
     

  2. Anzeige
  3. harry1526
    harry1526 Neu
    Stammnutzer
    #2 9. Dezember 2006
    AW: Session per Cookie übergeben

    hi Poncho,

    wie sieht denn die übergabe an das andere script den aus??? machts du das per link??? ich vermute mal da liegt der fehler. denn du gibst es ja nicht an ein anderes script weiter. denn es fehlt in deiner if-bedingung.


    nice day!!!;)
     
  4. Poncho
    Poncho Neu
    Stammnutzer
    #3 9. Dezember 2006
    AW: Session per Cookie übergeben

    Hö?

    Ich wollte das Ganze ja über das Cookie lösen, dass ich das nicht direkt übergeben muss. Dafür wird ein Cookie erstellt und die Session-ID reingespeichert.

    Und jetzt soll das andere Script sich diese aus dem cookie holen.
     
  5. harry1526
    harry1526 Neu
    Stammnutzer
    #4 9. Dezember 2006
    AW: Session per Cookie übergeben

    sorry mein fehler.

    versuche das mal:

    if($row1->user_password == $passmd5)
    {
    session_start();
    $_SESSION["username"] = $username;
    setcookie(session_name("spass"), session_id(), time()+3600);
    $loginreport = "Erfolgreich";
    }
    else
    {
    $loginreport = "Fehlgeschlagen";
    }

    $_SESSION = $_COOKIE['spass'];
     
  6. Mr.dandy
    Mr.dandy Neu
    Stammnutzer
    #5 9. Dezember 2006
    AW: Session per Cookie übergeben

    $_SESSION = $_COOKIE['session_id']; ???
    Array = String?

    $_SESSION['hash'] = addslahes(bla);
    String = String

    $_SESSION = $_COOKIE
    Array = Array

    Poste doch mal dein gesamtes Script
     
  7. Poncho
    Poncho Neu
    Stammnutzer
    #6 9. Dezember 2006
    AW: Session per Cookie übergeben

    login.php

    PHP:

    <?php

        
        error_reporting
    ( E_ALL );
        

        
    # Login-informationen abholen

        
    $username  =   $_POST [ "username" ];
        
    $passwort  =   $_POST [ "passwort" ];
        
    $passmd5   =   md5 ( $passwort );


    if(isset(
    $_GET [ 'logout' ])) {
    $logout  =     $_GET [ "logout" ];
                               }

        
    # DB-Verbindung aufbauen

        
    include( "config.inc.php" );
        @
    mysql_connect ( $dbhost $dbuser $dbpass ) OR die( mysql_error ());
         
    mysql_select_db ( $dbname ) or die( mysql_query ());


        
    # DB-Informationen holen

        
    $abfrage  "SELECT user_password FROM phpbb_users WHERE ' $username ' = username" ;
        
    $passdb  mysql_query ( $abfrage ) or die( mysql_error ());
        
    $row1  mysql_fetch_object ( $passdb );
        
        
    # Authentifizierung & Session füllen
        
        
        
    if( $row1 -> user_password  ==  $passmd5 )
            {
            
    session_start ();
            
    $loginreport  "Erfolgreich" ;
            
    $_SESSION [ "username" ] =  $username ;    
            
    setcookie ( session_name (),  session_id (),  time ()+ 3600 );
            }
            else
            {
            
    $loginreport  "Fehlgeschlagen" ;
            }
        
        
        
    # Logout-Durchlauf
        
        #

        # Smarty-Durchlauf      
        
        
    define ( 'SMARTY_DIR' '/var/www/virtual/blablablaxxx1234567890.com/htdocs/' );
        require(
    SMARTY_DIR . 'Smarty.class.php' );
        
    $smarty  = new  Smarty ;
        
    $smarty -> display ( 'index.tpl' );


        

    ?>
                          

    index.php

    PHP:
    <? php
        error_reporting
    ( E_ALL );

    $_SESSION  $_COOKIE [ 'session_id' ];

            
    define ( 'SMARTY_DIR' '/var/www/virtual/blablablaxxx1234567890.com/htdocs/' );
            require(
    SMARTY_DIR . 'Smarty.class.php' );
            
    $smarty  = new  Smarty ;
            
    $smarty -> assign ( 'name' $smarty );
            
    $smarty -> assign ( 'sessionuser' '$_SESSION["username"]' );
            
    $smarty -> display ( 'index.tpl' );   


    Wie unschwer zu erkennen ist, ist das alles noch nicht richtig fertig ;)
     
  8. pleq
    pleq Neu
    Stammnutzer
    #7 10. Dezember 2006
    AW: Session per Cookie übergeben

    Also:

    cookie machen:

    setcookie($_SESSION['úsername']);

    und auslesen:

    if(isset($_COOKIE['name'])) { .... }

    Aber nen Cookie mit Username finde ich ziemlich unnützlich, aber so sollte es halt gehen! Und denk dran: Cookies und Session sind immer das erste in einer Datei nicht das du nachher mit "Header already send" kämpfst ;)+


    PS:

    In deiner Index:

    $_SESSION = $_COOKIE['session_id'];

    Das kann ja nicht gehen! $_SESSION ... da weiß php nicht was du ansprichst ... Dann musste schon sagen wie die Session heißen soll: $_SESSION['name_der_session'] = $_COOKIE ....
     

  9. Videos zum Thema
Die Seite wird geladen...
Similar Threads - Session Cookie übergeben
  1. Antworten:
    0
    Aufrufe:
    290
  2. Session nur per Cookies

    Terrorbeat , 16. Februar 2008 , im Forum: Webentwicklung
    Antworten:
    3
    Aufrufe:
    256
  3. Antworten:
    11
    Aufrufe:
    1.179
  4. Antworten:
    5
    Aufrufe:
    1.492
  5. Antworten:
    1
    Aufrufe:
    670