Ankündigung

Einklappen
Keine Ankündigung bisher.

SESSION des angemeldeten Benutzer anzeigen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • SESSION des angemeldeten Benutzer anzeigen

    Hallo habe ein Problem, ich will das der angemeldete User seinen Benutzernamen und eventuell die Email-Adresse im Berreich Profil angezeigt bekommt.

    Hier ist der Code, komme nicht weiter.

    Danke !

    PHP-Code:
    <?php
    Include('navbar.php');
    require_once 
    "DB.inc.php";

            
    $link mysql_connect($DB_server$DB_user$DB_password,$DB_name); 
            
    mysql_select_db('linux'$link) or die(mysql_error());

    $name $_POST['name'];

    if(!isset(
    $name))
       {
       
    $name "Gast";
       }

    $uid 0;
            if(isset(
    $_GET["id"]))
            {
                
    $lid $_GET["id"];
            }


      
    $profilname mysql_query("SELECT U_Benutzername U_ID FROM u_user WHERE U_ID = '$uid'");
      
      
    $_SESSION['profilname'] = $name;
     
     echo 
    "Hallo $name"
      
      
    ?>


  • #2
    PHP-Code:
    mysql_select_db('linux'$link)
    $profilname mysql_query("SELECT U_Benutzername U_ID FROM u_user WHERE U_ID = '$uid'"); 
    Bitte mysqli_* verwenden und dann noch Kommasetzung bei der Aufzählung der Spalten und Parameter beachten:

    PHP-Code:
    mysqli_select_db($link'linux')
    $profilname mysqli_query($link"SELECT U_Benutzername, U_ID FROM u_user WHERE U_ID = '$uid'"); 
    Kommt sonst noch eine Fehlermeldung?

    Kommentar


    • #3
      Moin, willkommen im Forum.

      Du solltest ein paar Tutorials durcharbeiten, dir bei solchen Kleinigkeiten die Lösungen vorzugeben würde dir nichts bringen.

      Du kannst dir auch die php.de-Wissenssammlung bookmarken, ein paar Sachen kann man immer wieder mal nachschlagen, andere sollte man sich einfach mal angesehen haben. http://php-de.github.io
      In der Quellensammlung sind auch Links zu Tutorials enthalten.

      Die mysql_* Erweiterung ist veraltet und wird in der nächsten PHP-Version entfernt.
      Durch einen Wechsel auf mysqli_* oder PDO greifst du auf die modernere API zu und hast die Möglichkeiten Prepared Statements zu benutzen die gegen Injections schützen.
      Ich persönlich bevorzuge PDO, schönes Tutorial: http://www.peterkropff.de/site/php/pdo.htm

      +
      komme nicht weiter.
      Mit solchen Aussagen kann niemand arbeiten. Versuch dein Problem zumindest grob zu beschreiben und den Fehler einzugrenzen.
      Relax, you're doing fine.
      RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

      Kommentar


      • #4
        Zitat von Spamversender Beitrag anzeigen
        PHP-Code:
        mysql_select_db('linux'$link)
        $profilname mysql_query("SELECT U_Benutzername U_ID FROM u_user WHERE U_ID = '$uid'"); 
        Bitte mysqli_* verwenden und dann noch Kommasetzung bei der Aufzählung der Spalten und Parameter beachten:

        PHP-Code:
        mysqli_select_db($link'linux')
        $profilname mysqli_query($link"SELECT U_Benutzername, U_ID FROM u_user WHERE U_ID = '$uid'"); 
        Kommt sonst noch eine Fehlermeldung?
        diese fehlermeldung kommt wenn ich mysqli benutze

        Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in D:\xampp\htdocs\Projekt\Profil.php on line 7

        Kommentar


        • #5
          Also mein Problem ist das ich bei dem regestrieten Nutzer den Benutzernamen im Bereich Profil sehen will, dass funktioniert nicht da mir der entsprechende session code fehlt ich habe schon ein bisschen gegoogelt aber keiner hat geholfen.

          Danke !

          Kommentar


          • #6
            Beachte die oberen Links und betreibe Debugging, dann kommst du auf den Fehler und kannst ihn beheben:

            http://php-de.github.io/jumpto/leitfaden/
            http://php-de.github.io/jumpto/sql/

            LG
            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Zitat von hausl Beitrag anzeigen
              Beachte die oberen Links und betreibe Debugging, dann kommst du auf den Fehler und kannst ihn beheben:

              http://php-de.github.io/jumpto/leitfaden/
              http://php-de.github.io/jumpto/sql/

              LG
              ok danke werde es versuchen

              Kommentar


              • #8
                Und weil ich es gerade sehe.. Du musst pro neuem Request die Session immer neu starten bevor du auf $_SESSION zugreifst.

                PHP-Code:
                session_start(); 
                Das sieht man oben in Beitrag #1 nicht, wenn es nicht in einem der Includes passiert, ist das auch ein Fehler.
                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Du musst vorher die entsprechende ID festlegen.

                  PHP-Code:
                  $uid 0
                          if(isset(
                  $_GET["id"])) 
                          { 
                              
                  $lid $_GET["id"]; 
                          } 


                    
                  $profilname mysql_query("SELECT U_Benutzername U_ID FROM u_user WHERE U_ID = '$uid'"); 
                  Der Server wird immer versuchen, die Daten für die UID 0 auszulesen, da die $uid auf Null gesetzt wurde. Wenn du per $_GET['id'] die Nutzer-ID festlegst, musst du auch im Query $lid verwenden. Beachte aber, dass der Nutzer dann ohne Absicherung die ID in der Adressleiste ändern und so seinen Account in den eines anderen wechseln könnte.

                  Wenn du mit Sessions arbeitest, lies doch die ID des Nutzers aus dem Session-Cookie aus, oder speichere gleich seinen Nutzernamen mit ab. So wie aktuell liest du aber den Nutzernamen aus der DB aus über eine bereits bekannte ID. Musst du schauen, was dir eher gefällt.
                  Übrigens, nur am Rande: Du brauchst die U_ID nicht mit abfragen, wenn sie schon bekannt ist.

                  Kommentar

                  Lädt...
                  X