Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

php + mysql + cookies (autorizacija korisnika) = problemi...

[es] :: PHP :: php + mysql + cookies (autorizacija korisnika) = problemi...

[ Pregleda: 2091 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

NenadS
Nenad Strainovic
Beograd

Član broj: 857
Poruke: 910
*.smin.sezampro.yu.

Sajt: www.strainovic.com


+7 Profil

icon php + mysql + cookies (autorizacija korisnika) = problemi...17.05.2006. u 17:02 - pre 219 meseci
Napravio sam sledecu vrlo prostu scriptu koja treba da radi sledece:

Na pocetnoj strani treba da prikaze ime korisnika koji je ulogovan i da prikaze link za logout, a ako nije ulogovan, onda da stoji link za login.

Klikom na link za login dobija da upise user i pass i onda ide provera iz baze podataka. Ako je sve u redu upisuje cookie i vraca na index kako bi tamo napisao da je korisnik ulogovan i iz baze procitao username. To radi tako sto proverava da li je cookie upisan i uporedjuje vrednosti sa onima iz baze. I to kao sve radi kako treba... osim dela kada kliknem da se izlogujem. Tada se samo obrise username, dok i dalje pise da sam ulogovan, a u stvari nisam jer je i cookie obrisan klikom na logout.

Da li neko moze da mi kaze gde gresim i zasto mi cookie_check stalno vraca true vrednost, a nikad false...

Hvala unapred.

p.s.
Ako mislite da ovo moze da se napise drugacije ali da radi isto ovako, to bi bilo jos bolje :)

Code:
<?php

include('includes/db.php');

$cookie_length = 3600;
$hostname = "127.0.0.1";

$userdata = get_userdata($_COOKIE['test_user_id']);
$logged_in = cookie_check();

$q = ( isset($HTTP_GET_VARS['q']) ) ? $HTTP_GET_VARS['q'] : $HTTP_POST_VARS['q'];

switch( $q )
{
    case 'index':
    default:
        index();
    break;

    case 'login':
        login();
    break;

    case 'login_check':
        login_check($username, $password);
    break;

    case 'cookie_check':
        cookie_check();
    break;

    case 'logout':
        logout();
    break;
}

function index() {

    global $userdata, $logged_in;

    if ( $logged_in == true ) {

        echo 'Vi (' . $userdata['username'] . ') ste ulogovani!<br /><a href="?q=logout">Izlaz</a><br />';
    }
    else
    {
        echo '<a href="?q=login">Logovanje</a>';
    }
}

function login() {

    echo '<form name="login_form" method="post" action="?q=login_check">
  Username: 
  <input name="username" type="text" id="username">
  <br>
  Password: 
  <input name="password" type="password" id="password">
  <br>
  <input type="submit" name="Submit" value="Submit">
</form>';
}

function login_check($username, $password) {

    global $cookie_length, $hostname;

    $username = stripslashes($username);
    $password = stripslashes($password);

    $sql = mysql_query("SELECT * FROM user WHERE username = '$username' AND password = '$password'");

    $login_check = mysql_num_rows($sql);

    if( $login_check > 0 ){

        $row = mysql_fetch_array($sql);

        setcookie('test_user_id', $row['user_id'], time() + $cookie_length, '/', $hostname, 0);
        setcookie('test_user_passwd', $row['password'], time() + $cookie_length, '/', $hostname, 0);

        header("Location: ?q=index");
    }
    else
    {
        echo "Uneti podaci nisu tacni!";
    }
}

function get_userdata($user_id)
{
    $user_id = intval($user_id);

    $sql = "SELECT * FROM user 
            WHERE user_id = $user_id";
    if ( !($result = mysql_query($sql)) )
    {
        die("Trazeni korisnik ne postoji!");
    }

    return ( $row = mysql_fetch_array($result) ) ? $row : false;
}

function cookie_check() {

    $cookie_user_id = $_COOKIE['test_user_id'];
    $cookie_passwd = $_COOKIE['test_user_passwd'];

    $userdata = get_userdata($cookie_user_id);

    if ( ( $userdata['user_id'] == $cookie_user_id ) && ( $userdata['password'] == $cookie_passwd ) ) {
        $logged_in_check = 1;
    }
    else
    {
        $logged_in_check = 0;
    }
    return ( $logged_in_check == 1 ) ? true : false;
}

function logout() {

    global $cookie_length, $hostname;

    setcookie('test_user_id', '', time() - $cookie_length, '/', $hostname, 0);
    setcookie('test_user_passwd', '', time() - $cookie_length, '/', $hostname, 0);

    header("Location: ?q=index");
}

?>


[Ovu poruku je menjao NenadS dana 17.05.2006. u 18:03 GMT+1]
Pozdrav, NenadS!
 
Odgovor na temu

w3bl0rd
Varaždin, Hrvatska

Član broj: 82659
Poruke: 380
*.cmu.carnet.hr.



+26 Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...17.05.2006. u 19:36 - pre 219 meseci
a što se događa ako refreshaš stranicu nakon logouta?
there's no place like 127.0.0.1
 
Odgovor na temu

Davor Grubelić
Davor Grubelić

Član broj: 46879
Poruke: 280
*.cmu.carnet.hr.

Jabber: nameless21@elitesecurity.org
ICQ: 341103380


Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...17.05.2006. u 22:23 - pre 219 meseci
evo ja sam to na malo drugačiji način riješio:

prvi kod je skripta za provjeru stanja korisnika.....

Code:

<?php

class userLog {
    
    public  $username;
    private $db;
    public  $login;
    private  $login_required = true;
    
    public function SessionStart() {
        if (!isset($_SESSION['login'])) {
        session_start();
        }
    }
    
    public function SessionStop(){
        if (isset($_SESSION['login'])) {
            unset($_SESSION['login']);
        }
        session_destroy();
    }
    
    public function __construct() {
        
        $this->SessionStart();
        global $db;
        $this->db =& $db;
    }
    
    public function check_status() {
        if ($this->login_required == true) {
            $login = $this->session_check_status();
        }
        else {
            $login = false;
        }
        if ($login == true) {                
            echo "Uspješno ste ulogirani."."<br>";
            echo "<br>";
            echo "[&nbsp;<a href=".$_SERVER['PHP_SELF']."?logout>Odjavi me...</a>&nbsp;]<br><br>";                    
        }
        else {        
            echo "Logiranje nije uspjelo"."<br>"."<br><br>";        
        }
        
        
    }
        
    private function session_check_status() {
        if (isset($_SESSION['login'])         and 
            !isset($_POST['username'])         and 
            !isset($_POST['password'])         and 
            !isset($_GET['logout'])) {
                return true;
        }
        elseif (isset($_SESSION['login'])    and 
                isset($_POST['username'])    and 
                isset($_POST['password'])) {
                    return $this->try_to_login($_POST['username'], $_POST['password']);
                }
        elseif (isset($_POST['username'])     and 
                isset($_POST['password'])) {
                    return $this->try_to_login($_POST['username'], $_POST['password']);
                    
        }
        elseif (isset($_GET['logout'])) {
            $this->user_deactivate();
            $this->SessionStop();
            return false;
            
        }
        else {
            return false;
        }
    }
    
    private  function try_to_login($username1, $password) {    
        $passScr = md5(crc32($password));    
        $kod = "SELECT DG_nick, DG_ime, DG_prez
                FROM dg_users
                WHERE dg_username = \"$username1\" 
                AND dg_password = \"$passScr\"";        
        $rs = $this->db->GetAll($kod);        
        $rs_count = count($rs);        
        
        if ($rs_count == 1) {
            if ($rs[0]['DG_nick'] == "Administrator") {
                $_SESSION['admin'] = $rs[0]['DG_nick'];
                $_SESSION['login'] = $rs[0]['DG_nick'];
                $_SESSION['ime'] = $rs[0]['DG_ime'];
                $_SESSION['prez'] = $rs[0]['DG_prez'];
                $this->username = $rs[0]['DG_nick'];
            } else {
                $_SESSION['login'] = $rs[0]['DG_nick'];
                $_SESSION['ime'] = $rs[0]['DG_ime'];
                $_SESSION['prez'] = $rs[0]['DG_prez'];
                $this->username = $rs[0]['DG_nick'];
            }        
            $this->login = true;            
            return true;
        }        
        else {                            
            $this->login = false;            
            return false;
        }        
    }

    /*private function user_activate() {
        if (isset($_SESSION['login'])) {
            $login_time = date("Y-m-d H:i:s");
            $kod_activeate = 'INSERT INTO users_online (user, log_time) VALUES ("'.$_SESSION['login'].'", "'.$login_time.'")';
            $this->db->Execute($kod_activeate);
        }
    }*/
    
    private function user_deactivate() {
        if (isset($_SESSION['login'])) {
            $kod_deactivate = 'DELETE FROM users_online WHERE user = "'.$_SESSION['login'].'"';
            $this->db->Execute($kod_deactivate) or die(mysql_error());
        }
    }

}


?>


a ovim sam u index.php provjerio šta treba log skripta radit...

Code:

if (isset($_SESSION['login']) or $loginUser->login == true) {
        echo "Korisnik:<p id=\"redtext\"><b><br>".$_SESSION['login']."</b></p>";
        echo $_SESSION['ime']." ".$_SESSION['prez']."<br><br>";
        ?>
        
        
        <form action="<?php echo $_SERVER['PHP_SELF']?>" method="POST">
        <table>
                <tr><td><input type="hidden" name="post_ime" value="<?php echo $_SESSION['login']?>"></td>
                </tr>
                <tr>
                    <td><p id="other_text">Upišite vašu poruku:</p></td>
                </tr>
          </table>
                <table width="15%" height="30%">
                <tr><td><textarea name="post_poruka" cols="20" rows="10" id="textarea"></textarea></td></tr>    
                <tr><td align="right"><input type="submit" name="send" value="Pošalji" id="button"></td></tr> 
            </table>
        </form>
        
        
        
            
            <?php        
        }


/**
*
*
*/

if (!isset($_SESSION['login']) and $loginUser->login == false and !isset($_GET['to_register']))  {

    ?>
        <form action="<?php echo $_SERVER['PHP_SELF']?>" method="POST">
            <table>
                    <tr><td id="other_text">Username:</td></tr><td><input type="text" name="username" size="15" id="textboxovi"></td></tr>
                    <tr><td id="other_text">Password:</td><tr><td><input type="password" name="password" size="15" id="textboxovi"></td></tr>
                    <tr><td><input type="submit" name="posalji" value="Prijavi me" id="button"></td></tr>
            </table>
        </form>
        <a href="<?php $_SERVER['PHP_SELF']?>?to_register">Registrirajte se!</a>
<?php
}



pa si lijepo pogledaj i prilagodi kako ti odgovara. način je nešto drugačiji, ali ovo radi.
 
Odgovor na temu

Davor Grubelić
Davor Grubelić

Član broj: 46879
Poruke: 280
*.cmu.carnet.hr.

Jabber: nameless21@elitesecurity.org
ICQ: 341103380


Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...17.05.2006. u 22:36 - pre 219 meseci
kako ovaj moj kod radi možeš provjerit na http://davor.webit.hr/
 
Odgovor na temu

NenadS
Nenad Strainovic
Beograd

Član broj: 857
Poruke: 910
*.smin.sezampro.yu.

Sajt: www.strainovic.com


+7 Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...20.05.2006. u 10:46 - pre 219 meseci
Na refresh nista se ne desava, sve ostaje isto... a ovaj primer sto si mi ti dao, on koristi sesije, a one traju dok je browser otvoren, a meni treba cookie koji ce da traje onoliko koliko ja podesim... ali hvala u svakom slucaju na dobroj volji.

Poz
Pozdrav, NenadS!
 
Odgovor na temu

Davor Grubelić
Davor Grubelić

Član broj: 46879
Poruke: 280
*.cmu.carnet.hr.

Jabber: nameless21@elitesecurity.org
ICQ: 341103380


Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...20.05.2006. u 17:28 - pre 219 meseci
pa ti samo zamjeni sve session-e sa cookie-ima. mislim da bi trebalo funkcionirat.
 
Odgovor na temu

NenadS
Nenad Strainovic
Beograd

Član broj: 857
Poruke: 910
*.smin.sezampro.yu.

Sajt: www.strainovic.com


+7 Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...21.05.2006. u 20:25 - pre 219 meseci
Evo, posle jos malo razmisljasnja i kucanja, napravio sam scriptu koja radi ono sto treba da radi :)

E sad, ako bi neko mogao da je pogleda, da kaze sta bi izmenio, sta dodao, sta je suvisno i sto me najvise zanima, a to je sigurnost varijabli i SQL upita, jer ne bih voleo da neko za username ukuca
Code:
'); DROP users; ('

i da tako obrise celu users tabelu ili uradi nesto drugo...

Znaci, koji je najbolji nacin da se varijable koje korisnik unosi osiguraju... addslashes, trim i ili nesto deseto u kombinaciji?

A evo i code-a koji sada radi :)

Code:
<?php

include('db.php');

$is_logged = login_check();
$user_data = get_userdata();

switch ($_REQUEST['q']) {
    
    default:
    case 'index':
            index();
    break;
    case 'login_form':
            login_form();
    break;
    case 'login':
            login();
    break;
    case 'logout':
            logout();
    break;
}

function index() {
    
    global $is_logged;
    
    if($is_logged !== false) {
        echo 'Zdravo ' . $_COOKIE['test_username'] . '!<br />
        <a href="' . $_SERVER['PHP_SELF'] . '?q=logout">Logout</a>';
    }
    else
    {
        login_form();
    }
}

function login_form() {
    
    echo '<form name="login_form" action="' . $_SERVER['PHP_SELF'] . '?q=login" method="post">
    Username: <input type="text" name="username"><br />
    Password: <input type="password" name="password"><br />
    <input type="submit" value="Login">
    </form>';
}

function login() {
    
    global $is_logged;
    
    $form_username = str_replace("\'", "''", trim($_POST['username']));
    $form_password = addslashes($_POST['password']);
    
    if ( !($form_username) || !($form_password) ) {
        echo 'Niste uneli username i/ili password!';
        login_form();
    }
    else
    {
        $sql = mysql_query("SELECT * FROM users
                            WHERE user_name = '$form_username'
                            AND user_password = '$form_password'");
        $login_check = mysql_num_rows($sql);
    
        if ($login_check > 0) {
            setcookie ('test_username', $form_username, time() + 3600);
            setcookie ('test_password', $form_password, time() + 3600);
            $is_logged = true;
        
            echo 'Zdravo ' . $form_username . '!<br />
            Povratak na <a href="' . $_SERVER['PHP_SELF'] . '?q=index">index</a><br />
            <a href="' . $_SERVER['PHP_SELF'] . '?q=logout">Logout</a>';
        }
        else
        {
            echo 'Uneseni podaci nisu tacni!<br />Molimo vas da pokusate ponovo.';
            login_form();
        }
    }
}

function logout() {
    
    global $is_logged, $user_data;
    
    if( isset($_COOKIE['test_username']) && isset($_COOKIE['test_password']) ) {
        setcookie ('test_username', '', time() - 3600);
        setcookie ('test_password', '', time() - 3600);
        $is_logged = false;
        unset($user_data);
        
        echo $_COOKIE['test_username'] . ', uspesno ste izlogovani!<br />
        Ako zelite ponovo da se ulogujete, kliknite <a href="' . $_SERVER['PHP_SELF'] . '?q=login_form">ovde</a>';
    }
    else
    {
        index();
    }
}

function login_check() {
    
    $cookie_username = str_replace("\'", "''", trim($_COOKIE['test_username']));
    $cookie_password = addslashes($_COOKIE['test_password']);
    
    $sql = mysql_query("SELECT * FROM users 
                        WHERE user_name = '$cookie_username'
                        AND user_password = '$cookie_password'");
    $login_check = mysql_num_rows($sql);
    
    if ($login_check > 0) {
        return true;
    }
    else
    {
        return false;
    }
}

function get_userdata() {
        
        $username = ( isset($_COOKIE['test_username']) ? $_COOKIE['test_username'] : $_POST['username'] );

        $sql = "SELECT * FROM users 
                WHERE user_name = '$username'";
        if ( !($result = mysql_query($sql)) )
        {
            die("Trazeni korisnik ne postoji!");
        }
        return ( $row = mysql_fetch_array($result) ) ? $row : false;
}

echo '<br />';
echo ( ($is_logged !== false) ? 'Vi ste clan sa statusom ' . ( ( $user_data['user_status'] == 1 ) ? 'Administratora' : 'Korisnik' ) . '!': 'Vi ste gost!' );

?>


Hvala :)

[Ovu poruku je menjao NenadS dana 21.05.2006. u 22:11 GMT+1]
Pozdrav, NenadS!
 
Odgovor na temu

Davor Grubelić
Davor Grubelić

Član broj: 46879
Poruke: 280
*.cmu.carnet.hr.

Jabber: nameless21@elitesecurity.org
ICQ: 341103380


Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...21.05.2006. u 22:13 - pre 219 meseci
evo sad sam malo provukao skriptu kroz "ruke".
funkcionira.
a što se tiče sigurnosti.....

trebao bi kriptirati lozinku jer je dosta izložena "pogledima". --> preko cookie-ja

Citat:

....jer ne bih voleo da neko za username ukuca

Code:

'); DROP users; ('


probao --> ne fercera.

trebao bi i dodati funkciju za registraciju.
morao sam ručno u phpMyAdmin-u dodavati username i password.




[Ovu poruku je menjao dgrubel dana 21.05.2006. u 23:14 GMT+1]
 
Odgovor na temu

NenadS
Nenad Strainovic
Beograd

Član broj: 857
Poruke: 910
*.smin.sezampro.yu.

Sajt: www.strainovic.com


+7 Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...21.05.2006. u 23:15 - pre 219 meseci
Da bih proverio sigurnost iskljucio sam magic_quotes_gpc u php.ini i sta se desava...

Ako za username ukucam recimo Nenad'# test i tacnu sifru, to prolazi kao tacno i cookie upise taj user, a na sajtu dobijam Zdravo Nenad'# test bez obzira sto imam proveru
Code:
str_replace("\'", "''", trim($_POST['username']));

kao i proveru za cookie
Code:
str_replace("\'", "''", trim($_COOKIE['test_username']));


E sad, probao sam sa addslashes() ali desava se istva stvar...

Jedino kako lepo radi i ne dozvoljava te gluposti jeste ako varijable 'provucem' kroz funkciju mysql_escape_string() e u tom slucaju niti mogu da se ulogujem, a kada se ulogujem sa tacnim podacima i promeni vrednost u cookie, on me izloguje sam, dok u ova dva slucaja, mogu da promenim vrednost cookie-a i pisace mi neki drugi username...

Po defaultu magic_quotes_gpc je ukljucen ali opet, zanima me kako addslashes ne odradjuje posao kako treba?

p.s.
I ja sam rucno napravio bazu i ubacio par usera... posto mi taj deo nije bio toliko bitan za testiranje :)

Ovo je sad kao nesto malo sigurnija verzija scripte...

Code:
<?php

include('db.php');

$is_logged = login_check();
$user_data = get_userdata();

switch ($_REQUEST['q']) {
    
    default:
    case 'index':
            index();
    break;
    case 'login_form':
            login_form();
    break;
    case 'login':
            login();
    break;
    case 'logout':
            logout();
    break;
}

function index() {
    
    global $is_logged;
    
    if($is_logged !== false) {
        echo 'Zdravo ' . $_COOKIE['test_username'] . '!<br />
        <a href="' . $_SERVER['PHP_SELF'] . '?q=logout">Logout</a>';
    }
    else
    {
        login_form();
    }
}

function login_form() {
    
    echo '<form name="login_form" action="' . $_SERVER['PHP_SELF'] . '?q=login" method="post">
    Username: <input type="text" name="username"><br />
    Password: <input type="password" name="password"><br />
    <input type="submit" value="Login">
    </form>';
}

function login() {
    
    global $is_logged;
    
//    $form_username = str_replace("\'", "''", trim($_POST['username']));
//    $form_password = addslashes($_POST['password']);
    $form_username = mysql_escape_string($_POST['username']);
    $form_password = mysql_escape_string($_POST['password']);
    
    if ( !($form_username) || !($form_password) ) {
        echo 'Niste uneli username i/ili password!';
        login_form();
    }
    else
    {
        $sql = mysql_query("SELECT * FROM users
                            WHERE user_name = '$form_username'
                            AND user_password = '$form_password'");
        $login_check = mysql_num_rows($sql);
    
        if ($login_check > 0) {
            $form_username = stripslashes($form_username);
            $form_password = stripslashes($form_password);
            setcookie('test_username', $form_username, time() + 3600);
            setcookie('test_password', $form_password, time() + 3600);
            $is_logged = true;
        
            echo 'Zdravo ' . $form_username . '!<br />
            Povratak na <a href="' . $_SERVER['PHP_SELF'] . '?q=index">index</a><br />
            <a href="' . $_SERVER['PHP_SELF'] . '?q=logout">Logout</a>';
        }
        else
        {
            echo 'Uneseni podaci nisu tacni!<br />Molimo vas da pokusate ponovo.';
            login_form();
        }
    }
}

function logout() {
    
    global $is_logged, $user_data;
    
    if( isset($_COOKIE['test_username']) && isset($_COOKIE['test_password']) ) {
        setcookie('test_username', '', time() - 3600);
        setcookie('test_password', '', time() - 3600);
        $is_logged = false;
        unset($user_data);
        
        echo $_COOKIE['test_username'] . ', uspesno ste izlogovani!<br />
        Ako zelite ponovo da se ulogujete, kliknite <a href="' . $_SERVER['PHP_SELF'] . '?q=login_form">ovde</a>';
    }
    else
    {
        index();
    }
}

function login_check() {
    
//    $cookie_username = str_replace("\'", "''", trim($_COOKIE['test_username']));
//    $cookie_password = addslashes($_COOKIE['test_password']);
    $cookie_username = mysql_escape_string($_COOKIE['test_username']);
    $cookie_password = mysql_escape_string($_COOKIE['test_password']);
    
    $sql = mysql_query("SELECT * FROM users 
                        WHERE user_name = '$cookie_username'
                        AND user_password = '$cookie_password'");
    $login_check = mysql_num_rows($sql);
    
    if ($login_check > 0) {
        return true;
    }
    else
    {
        return false;
    }
}

function get_userdata() {
        
        $username = ( isset($_COOKIE['test_username']) ? mysql_escape_string($_COOKIE['test_username']) : mysql_escape_string($_POST['username']) );

        $sql = "SELECT * FROM users 
                WHERE user_name = '$username'";
        if ( !($result = mysql_query($sql)) )
        {
            die("Trazeni korisnik ne postoji!");
        }
        return ( $row = mysql_fetch_array($result) ) ? $row : false;
}

echo '<br />';
echo ( ($is_logged !== false) ? 'Vi ste clan sa statusom ' . ( ( $user_data['user_status'] == 1 ) ? 'Administratora' : 'Korisnik' ) . '!': 'Vi ste gost!' );

?>


[Ovu poruku je menjao NenadS dana 22.05.2006. u 00:49 GMT+1]
Pozdrav, NenadS!
 
Odgovor na temu

Davor Grubelić
Davor Grubelić

Član broj: 46879
Poruke: 280
*.cmu.carnet.hr.

Jabber: nameless21@elitesecurity.org
ICQ: 341103380


Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...21.05.2006. u 23:58 - pre 219 meseci
evo sad baš malo gledam po php manual-u i pronašao slijedeće:

Citat:

The PHP directive magic_quotes_gpc is on by default, and it essentially runs addslashes() on all GET, POST, and COOKIE data. Do not use addslashes() on strings that have already been escaped with magic_quotes_gpc as you'll then do double escaping.


što bi značilo da nemoraš pravit addslashes() na GET, POST i COOKIE varijablama....jer onda radi dupli posao i umjesto "Tom\'s comp." ti dobiješ
"Toms\\' comp.".
ako već hoćeš radit addslashes() onda prvo GPC varijable spremi u neke proizvoljne varijable pa onda pravi addslashes().


evo i mojih preinaka tvog koda. malo mi je bilo dosadno pa sam se bacio u dodavanje nekih sitnica. gruba registracija....

switch.......(dodatak)

Code:

case 'register':
            register();
    break;
case 'register_form':
                register_form();
    break;



i dvije nove funkcije....

Code:

function register_form() {
    echo '<form name="login_form" action="' . $_SERVER['PHP_SELF'] . '?q=register" method="post">
    Username: <input type="text" name="reg_username"><br />
    Password: <input type="password" name="reg_password"><br />
    <input type="submit" value="Register">
    </form>';
}

function register() {
    $reg_name = $_POST['reg_username'];
    $reg_passwd = $_POST['reg_password'];
    
    $sql_query = 'INSERT INTO 'table name' (username, password) VALUES ("' . $reg_name . '", "'. $reg_passwd . '")';
    mysql_query($sql_query);
    echo '<a href="' . $_SERVER['PHP_SELF'] . '?q=login_form" method="post">Login</a>';
}




[Ovu poruku je menjao dgrubel dana 22.05.2006. u 03:29 GMT+1]
 
Odgovor na temu

NenadS
Nenad Strainovic
Beograd

Član broj: 857
Poruke: 910
*.smin.sezampro.yu.

Sajt: www.strainovic.com


+7 Profil

icon Re: php + mysql + cookies (autorizacija korisnika) = problemi...26.05.2006. u 15:49 - pre 219 meseci
Hvala ti, radi ovo kako treba :)

Sve najbolje
Pozdrav, NenadS!
 
Odgovor na temu

[es] :: PHP :: php + mysql + cookies (autorizacija korisnika) = problemi...

[ Pregleda: 2091 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.