php

02/04/2013 20:44 Online-Tube#1
Hey es soll halt ein Text für nicht "session" user verborgen bleiben. Wie genau stelle ich das an?

PHP Code:
    <reg>
    
         <a href="login.php"> <li> Anmelden </li> </a> <font color="white">|</font> <a href="register.php"> <li> Registrierung </li> </a> 
    <?php
        session_start
();
        require_once(
"connect.php");

    
        if (!empty(
$_SESSION[username])) 
        {
            <
font color="white">|</font> <a href="profil.php"> <liProfil bearbeiten </li> </a>
        
        else 
        {
        
        }

    
?>
    
      </reg>
echo funktioniert nicht. Kennt jemand einen anderen Tag?

Lg
02/04/2013 21:42 PseudoPsycho#2
echo ist schon richtig.
Du hast allerdings auch die Klammer zu } vergessen...
Desweiteren hast du die Anführungszeichen vergessen:
PHP Code:
$_SESSION['username'
Edit: Einen <reg>-Tag gibt's glaub' ich auch nicht...
02/04/2013 21:55 tayfe#3
Du hast da ein paar kleinere Fehler eingebaut:

1.) Deiner Webseite muss immer mitgeteilt werden, dass Sessions verwendet werden, bevor irgendetwas auf deiner Seite ausgegeben wird, egal ob HTML oder PHP! Dementsprechend muss das

PHP Code:
<?php
session_start
();
?>
ganz an den Anfang der Seite.


2.) Wenn du eine Session ansprechen willst, muss der Name der Session immer in so Hochkommas:

PHP Code:
$_SESSION['username'

3.) Der HTML Teil in der ersten Klammer muss per echo ausgegeben werden:

PHP Code:
echo'<font color="white">|</font> <a href="profil.php"> <li> Profil bearbeiten </li> </a>'

4.) Du hast, wie PseudoPsycho schon gesagt hat, nach dem ersten if eine Klammer vergessen, die den Teil wieder schließt.

Dein fertiger Code sollte dann so aussehen:

PHP Code:
<?php
session_start
();
?>

<reg>
  
<a href="login.php"> <li> Anmelden </li> </a> <font color="white">|</font> <a href="register.php"> <li> Registrierung </li> </a> 

<?
require_once("connect.php");

    
if (!empty(
$_SESSION['username'])) 
    {
    echo
'<font color="white">|</font> <a href="profil.php"> <li> Profil bearbeiten </li> </a>';
    }
        
else 
    {
        
    }
?>
    
</reg>

Ich hoffe, dass der Code so klappt und ich dir weiterhelfen konnte.

Mfg Tayfe
02/05/2013 13:04 Online-Tube#4
Ich danke euch beiden :)
02/05/2013 13:36 Mokiri15#5
Das muss ist falsch, geht auch ohne. Gibt aber ein STRICT ein Warning

Richtig ist, das alle Header Session, Cookies etc am Anfang vor jeglicher Ausgabe gesendet werden müssen. Umgehen kann man das mit Buffer wie ob, aber das ist hier nicht von nöten.


Als Tipp, Funktionen die du auf jeder Seite nutzt sollte in eine externe datei, die du dann includest (require_once). Bei mir sind das meist Sessionsysteme, MySQL Verbindungen sowie den Autoloader für Klassen.