Autor Zpráva
Fastman
Profil
Dobrý den,

Chtěl bych do:
elseif (isset($_SESSION['steamid']))

zadat ještě jednu $_SESSION do stejného řádku. Například: $_SESSION[cas]. Jak to lze udělat? Děkuji za odpověď.
xROAL
Profil
Asi máš na mysli niečo takéto:
elseif(isset($_SESSION['steamid']) && isset($_SESSION['cas']))

Pozri si logické operátory.
Fastman
Profil
Děkuji za odpověď.

Bohužel mi to nefunguje. Tady je zdroják.


<head>
<link rel="stylesheet" href="./style.css" type="text/css"/>
<link href='http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz' rel='stylesheet' type='text/css' />
<meta http-equiv="content-type" content="text/html"; charset=UTF-8" />
</head>

<?php
$path = "/wp/skin/2/";  // máte-li stránky v rootu, nechte bezezměny, pokud je provozujete v nějakém podadresáři, zadejte jeho jméno
              // např. stránky mám na moje-domena.cz/adresar/, tak zadám $path = "/adresar/";
 
// funkce pro ošetření vstupních dat od uživatele
// viz http://cz.php.net/manual/en/info.configuration.php#ini.magic-quotes-gpc
function db_escape($str) 
{ 
    return mysql_real_escape_string(@get_magic_quotes_gpc() ? stripslashes($str) : $str);
} 
 
 
include "connect.php"; // soubor pripojeni_db.php zajistí připojení k databázi a výběr databáze, se kterou pracujeme
session_start();  // tohle je nezbytné a je nutné uvést tuto funkci na všech stránkách, kam se přihlášený uživatel dostane
                  // možnost nastavit automatické spouštění session_start() nechávám stranou
 
// zjistíme, co chce uživatel dělat
if (isset($_SESSION['steamid']) && isset($_GET['logout']))
{
    // uživatel je přihlášen a chce se odhlásit, takže smažeme údaje o přihlášení
    $_SESSION = array();
    if (isset($_COOKIE[session_name()]))
    {
        setcookie(session_name(), '', time()-42000, '/');
    }
    session_unset();
    session_destroy();
    // a přesměrujeme na index.php
    header("location:.$path."index.php].$path."index.php]http://".$_SERVER['SERVER_NAME'].$path."index.php", TRUE, 303);
    exit;
}
elseif(isset($_SESSION['steamid']))
{
    //session_regenerate_id(); // ochrana před session fixation, lze vynechat
    // uživatel je přihlášen a nechce se odhlásit, zde zobrazíme obsah pro registrované
    // můžeme využit include apod.
 
    // tohle informuje uživatele, že je přihlášen a vypíše odkaz pro odhlášení
    // můžeme to ale přemístit do includovaného souboru (kam se nám hodí)
    echo "<div class=\"info\"><p>Vítejte v administraci VIP CMG 1.0. <br> Momentálně jste přihlášen jako:<b> $_SESSION[steamid] </b><a href=\".$path."index.php?logout=1\">odhlásit</a></p></div>\n].$path."index.php?logout=1\">odhlásit</a></p></div>\n]http://".$_SERVER['SERVER_NAME'].$path."index.php?logout=1\">odhlásit</a></p></div>\n";
     echo '<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
 $(function() {
        /* For zebra striping */
        $("table tr:nth-child(odd)").addClass("odd-row");
        /* For cell text alignment */
        $("table td:first-child, table th:first-child").addClass("first");
        /* For removing the last border */
        $("table td:last-child, table th:last-child").addClass("last");
});
</script>';

  echo '<div id="content">

    <table cellspacing="0">
    <tr><th>STAV SLUŽEB</th><th></th>
    <tr><td>Zaplacený skin:</td><td>$zaplaceno</td></tr>
    <tr><td>Datum vypršení:</td><td>$cas</td></tr>
    <tr><td>Nastaveno:</td><td>$stavnastaveni</td></tr>

    </table>

</div>';
    
    
}
else
{
    // uzivatel není přihlášen
    // pokud odeslal přihlašovací údaje, snaží se přihlásit
    if (isset($_POST['steamid']) && isset($_POST['heslo']))
    {
        // ošetříme vstupní údaje od uživatele
        // funkce trim() má význam hlavně u hesla, ořeže bílé znaky (např. mezery) na začátku a konci řetězce
        $steamid = db_escape(trim($_POST['steamid']));
        $heslo = db_escape(trim($_POST['heslo']));
 
        // zjistíme, jestli je v databázi daný uživatel a jestli se prokazuje platným heslem
        // více o ukládání hesel, např. o tzv. solení, najdete na http://php.vrana.cz/ukladani-hesel.php
        $result = mysql_query("SELECT COUNT(*) FROM seznam WHERE steamid = '$steamid' AND heslo = sha1('$heslo')");
        if (mysql_result($result, 0))  // předpokládáme, že dotaz proběhl úspěšně, pokud ne, bude stejně vráceno false
                                       // true (a splnění podmínky) nastane pouze tehdy, když v databázi existuje správná kombinace uživatelského jména a hesla
        {
            // uložíme potřebné SESSION proměnné
            $_SESSION['steamid'] = $steamid;
            $_SESSION['cas'] = $cas;
            $_SESSION['cas_prihlaseni'] = time(); // čas, kdy se uživatel přihlásil, pozor, nejedná se o čas poslední akce, nevím, jestli ho využijete, může být smazán
            // po přihlášení uživatele přesměrujeme na index.php
            header ("location:.$path."index.php].$path."index.php]http://".$_SERVER['SERVER_NAME'].$path."index.php", TRUE, 303);
            exit;  // aby bylo pravidlům učiněno zadost, zde stejně končí podmínka a jiná nemůže být splněna
        }
        else
        {
            // uživatel zadal neplatné přihlašovací údaje
            // přesměrujeme ho na index.php a zobrazíme chybovou hlášku
            header ("location:.$path."index.php?incorrect_login=1].$path."index.php?incorrect_login=1]http://".$_SERVER['SERVER_NAME'].$path."index.php?incorrect_login=1", TRUE, 303);
            exit;
        }
    }
    else
    {
      // uživatel není přihlášen a ani neodeslal přihlašovací formulář, tak mu ho zobrazíme
      echo "<div>";
      if (isset($_GET['incorrect_login']))
      {
          echo '<div class="error">Zadali jste neplatné uživatelské jméno nebo heslo.</div>';
      }
      // zobrazíme formulář pro přihlášení
      ?>
      <form action="index.php" method="post"> 
         <h1><center>Administrace VIP CMG</center></h1>
        <fieldset id="user-details">            
 
        <label for="steamid">Tvoje SteamID:</label>
        <input type="text" name="steamid" value="" /> 
 
        <label for="heslo">Heslo:</label> 
        <input type="password" name="heslo" value=""  /> 
      
      <input type="submit" value="Přihlásit" name="submit" class="submit" />    
      <br>
 
        </fieldset> <!--end user-details-->
 
          
 
        </fieldset> <!-- end user-message -->
 
</form>
      <?php
    }
}
?>




 

Momentálně jste přihlášen jako: $_SESSION[steamid] tohle funguje (ukáže se jeho ID pomocí něhož se přihlásil). Jak ale přidám do tabulky ( po přihlášení, jako je to u $_SESSION[steamid]), aby to vypsalo z databáze hodnotu "cas", proměnná $cas nebo jiné hodnoty, například: "zaplaceno" ; "stavnastaveni".

Děkuji za odpověď.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: