[ Príspevkov: 32 ] 1, 2
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
NapísalOffline : 03.01.2010 14:00 | Overenie loginu

Čavte. Urobil som si základný login ku admin kontu. Cez formulár zadávam nick a heslo, potom mi to overí či existujú aťď. takto vyzera ten kód
Kód:
<?php
include ("config.php")
?>
<?php
session_start();
?>
<?php
function jeadmin ($meno, $heslo, $link)
{
  $vysledek=mysql_query("select id from clen where meno='".$meno."' and heslo='".$heslo."'", $link);
  if (mysql_num_rows($vysledek)==0)
    return;
  else {
    $radek = mysql_fetch_array($vysledek);
    return $radek["id"];
  }

// tělo skriptu - nejprve si vytvoříme odkaz na databázi
$link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
mysql_select_db(SQL_DBNAME);

$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
  $id= jeadmin (htmlspecialchars(addslashes($_POST["meno"])), htmlspecialchars(addslashes($_POST["heslo"])),  $link);
  if (!$id) echo "Uživatelské jméno a/nebo heslo nesouhlasí";
  else
  {
    $BudemeZobrazovat=false;
    $_SESSION["id"]= $id;
    echo "si tam";
    include ("admin_uvod.php");
  }
}
?>

Neviem však, ako mám začať kód na ostatných stránkach (ktoré patria do admin konta... ) tak aby boli prístupné len vtedy, keď budem prihlásení.
Viem, že je to určite ľakhé, ale mohli by ste mi poradiť ?


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 29.10.09
Prihlásený: 06.02.11
Príspevky: 64
Témy: 25 | 25
Bydlisko: Kosice
NapísalOffline : 03.01.2010 14:03 | Overenie loginu

Na zaciatok kazdej includovanej stranky.

Kód:
session_start();
if(!isset($_SESSION['id']))
{
die('Neopravneny pristup');
}


_________________
Apple Macbook White
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:05 | Overenie loginu

dal som, prihlásil ale napíše neopravneny pristup


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 22.01.08
Prihlásený: 19.04.15
Príspevky: 492
Témy: 135 | 135
Bydlisko: Bratislava ...
NapísalOffline : 03.01.2010 14:14 | Overenie loginu

mal by som otázku, prečo includuješ Config.php do tej istej stránky kde máš už php pripojenie na databázu?
lebo config býva vacsinou connect súbor.


Naposledy upravil B.A.X.O dňa 03.01.2010 14:16, celkovo upravené 1

Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:16 | Overenie loginu

daj
Kód:
print_r($_SESSION);

nech vobec vieme, ci ti to session zapise


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:16 | Overenie loginu

asi áno ....keby som zadal zly nick tam mi napise ze zle heslo...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:17 | Overenie loginu

blackshadow: kde mám presne dať ten kód, či je to jedno ?


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 22.01.08
Prihlásený: 19.04.15
Príspevky: 492
Témy: 135 | 135
Bydlisko: Bratislava ...
NapísalOffline : 03.01.2010 14:17 | Overenie loginu

Tak sem hoď celý kód ako to máš, aj s tou upravou od tyra.
možno si sa niekde pomýlil len, a lepšie to tak uvidíme.


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:19 | Overenie loginu

skus pod to:
echo "si tam";

a vlastne, vypise ti "si tam" ?


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:21 | Overenie loginu

áno, a to tvoje vypísalo Array ( [id] => 6 ) ... id sedí s databázou...


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:24 | Overenie loginu

Do: admin_uvod.php
daj:
Kód:
if($_SESSION["id"]>0) {
 echo 'Vitaj v administracii';
} else {
 die('Nie si admin');
}


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:26 | Overenie loginu

vypísalo : Notice: Undefined variable: _SESSION in D:\Program Files\EasyPHP5.3.0\www\admin_uvod.php on line 2
Nie si admin


Offline

Čestný člen
Čestný člen
Overenie loginu

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 03.01.2010 14:29 | Overenie loginu

Chyba ti session_start()


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:32 | Overenie loginu

asi to funguje :) ešte malú prosbu. ako urobiť odhlásenie. aby sa zrušilo session ?


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:34 | Overenie loginu

Ďuri píše:
Chyba ti session_start()

preco do includovaneho suboru treba dat session_start ?
M1rcO_o píše:
ako urobiť odhlásenie. aby sa zrušilo session ?

Kód:
session_destroy();

Sprav si odkaz, napr:
Kód:
<a href="logout.php">odhlas</a>

a v logout.php:
Kód:
<?php
session_start();
session_destroy();
header("Location: index.php");
?>


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Čestný člen
Čestný člen
Overenie loginu

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 03.01.2010 14:37 | Overenie loginu

Blackshadow píše:
preco do includovaneho suboru treba dat session_start ?
Ja neviem, ja som tie kody ani nepozeral... ale ked mu vypisovalo hentu chybu... inu pricinu nepoznam. Ale teraz som to pozrel a cudujem sa rovnako ako ty. Ked to funguje, tak dobre, ale je to nejake divne.


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:39 | Overenie loginu

Tak ak si najdes cas, tak skus toto:
Tvoj hlavny subor
Kód:
<?php
session_start();
include ("config.php")

function jeadmin ($meno, $heslo, $link)
{
  $vysledek=mysql_query("select id from clen where meno='".$meno."' and heslo='".$heslo."'", $link);
  if (mysql_num_rows($vysledek)==0)
    return;
  else {
    $radek = mysql_fetch_array($vysledek);
    return $radek["id"];
  }
}
// tělo skriptu - nejprve si vytvoříme odkaz na databázi
$link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
mysql_select_db(SQL_DBNAME);

$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
  $id= jeadmin (htmlspecialchars(addslashes($_POST["meno"])), htmlspecialchars(addslashes($_POST["heslo"])),  $link);
  if (!$id) echo "Uživatelské jméno a/nebo heslo nesouhlasí";
  else
  {
    $BudemeZobrazovat=false;
    $_SESSION["id"]= $id;
    if($_SESSION["id"]>0) {
      echo 'Ides do administracie';
      define('ADMIN',true);
      include "admin_uvod.php";
    } else {
      echo 'Nastala chyba'; exit();
    }
  }
}
?>

subor "admin_uvod.php"
Kód:
<?php
if(ADMIN) {
  echo "Som v administracii";
}
if($_SESSION["id"]>0) {
  echo "Session zadane, ID: ".$_SESSION["id"];
} else {
  echo "Session nejde";
  print_r($_SESSION);
}
?>

a ze co ti vypise, ked sa prihlasis


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:42 | Overenie loginu

header("Location: index.php"); čo to presne znamená ? lebo vypisuje že noz found :(


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 14:46 | Overenie loginu

Ides do administracieSom v administraciiSession zadane, ID: 6


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 14:48 | Overenie loginu

M1rcO_o píše:
Ides do administracieSom v administraciiSession zadane, ID: 6

Dakujem, takze v includovanom subore netreba session_start();

M1rcO_o píše:
header("Location: index.php"); čo to presne znamená ? lebo vypisuje že noz found :(

ten header ti presmeruje stranku..
cize miesto index.php si daj subor/stranku,kam sa ma uzivatel presmerovat po tom, ako sa odhlasi.. (nemoze predsa zostat v administracii)


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 15:05 | Overenie loginu

ešte jeden problém. Dám odhlásiť od admin konta a skúsim či mi zobrazí stránku aj keď nie som prihlásený. a vypíše Notice: Undefined index: id in D:\Program Files\EasyPHP5.3.0\www\timy_zapis.php on line 3 ... dobre je že nezobrazí stránku ale tám poznámka by tam nemusela byť :(


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 15:24 | Overenie loginu

chcem sa všetkým poďakovať, najmä Blackshadow-i za pomoc... Funguje to dobre :) diki....


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 15:38 | Overenie loginu

co je v tom subore timy_zapis.php ?


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 15:46 | Overenie loginu

Doteraz som mal heslo ako varchar... dal som tam funkciu md5 ( aj v databaze )... lenže nejako to nereaguje... je chyba len v zápise ?
Kód:
<?php
include ("config.php")
?>
<?php
session_start();
?>
<?php
function jeadmin ($meno, $heslo, $link)
{
  $vysledek=mysql_query("select id from clen where meno='".$meno."' and heslo= md5('.$heslo.')", $link);
  if (mysql_num_rows($vysledek)==0)
    return;
  else {
    $radek = mysql_fetch_array($vysledek);
    return $radek["id"];
  }

// tělo skriptu - nejprve si vytvoříme odkaz na databázi
$link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
mysql_select_db(SQL_DBNAME);

$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
  $id= jeadmin (htmlspecialchars(addslashes($_POST["meno"])), md5($_POST["heslo"]),  $link);
  if (!$id) echo "Uživatelské jméno a/nebo heslo nesouhlasí";
  else
  {
    $BudemeZobrazovat=false;
    $_SESSION["id"]= $id;
    echo "Prihlasenie uspesne&nbsp;:&nbsp;";
    include ("admin_uvod.php");
  }
}
?>


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 17:47 | Overenie loginu

Kód:
$vysledek=mysql_query("select id from clen where meno='".$meno."' and heslo='.$heslo.'", $link);


toto tam daj. Ten md5 je tam zbytocny, pretoze heslo do tej funkcie uz zadavas ako md5 tu:
Kód:
$id= jeadmin (htmlspecialchars(addslashes($_POST["meno"])), md5($_POST["heslo"]),  $link);


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 17:55 | Overenie loginu

ani tak nefunguje :(


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 17:56 | Overenie loginu

V databaze si si prepisal to heslo na jeho md5 hash ?


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 17:58 | Overenie loginu

tak dal som do sql prikazu INSERT INTO `clen` ( `meno` , `heslo` )
VALUES (
'skuska', MD5( '123456' )
);


Offline

Užívateľ
Užívateľ
Overenie loginu

Registrovaný: 09.09.07
Prihlásený: 07.11.16
Príspevky: 3114
Témy: 233 | 233
Bydlisko: Nové Zámky
NapísalOffline : 03.01.2010 18:02 | Overenie loginu

tu funkciu si prepis na:
Kód:
function jeadmin ($meno, $heslo, $link)
{
 echo '<br>Heslo z funkcie je: '.$heslo.'<br>';
  $vysledek=mysql_query("select id from clen where meno='".$meno."' and heslo= md5('.$heslo.')", $link);
  if (mysql_num_rows($vysledek)==0)
    return;
  else {
    $radek = mysql_fetch_array($vysledek);
    echo '<br>Heslo z DB je: '.$radek['heslo'].'<br>';
    return $radek["id"];
  }

a uvidime, co mas v DB za heslo a ake tam vkladas


_________________
"It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.08.09
Prihlásený: 07.03.21
Príspevky: 152
Témy: 34 | 34
Napísal autor témyOffline : 03.01.2010 18:04 | Overenie loginu

Kód:
Heslo z funkcie je: e10adc3949ba59abbe56e057f20f883e
Uživatelské jméno a/nebo heslo nesouhlasí


je presne také isté ako v databáze


 [ Príspevkov: 32 ] 1, 2


Overenie loginu



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Uprava loginu

v Redakčné systémy

2

512

18.07.2007 22:35

kajbo

V tomto fóre nie sú ďalšie neprečítané témy.

Po zadaní loginu restart...

v Notebooky a netbooky

9

884

26.09.2007 16:36

Misisiak

V tomto fóre nie sú ďalšie neprečítané témy.

Ubuntu 9.04 - nastavenie loginu

v Operačné systémy Unix a Linux

4

497

30.12.2009 19:04

klesco

V tomto fóre nie sú ďalšie neprečítané témy.

PHP a zistenie loginu v intranete

v PHP, ASP

6

466

23.02.2008 13:50

sepo

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie

v Ostatné

4

483

26.10.2011 21:03

Millfox

V tomto fóre nie sú ďalšie neprečítané témy.

overenie

v PHP, ASP

5

684

30.07.2008 10:41

B.A.X.O

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie komponentov

v PC zostavy

29

930

30.08.2012 12:59

C1rca07

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie zostavy

v PC zostavy

3

485

12.06.2012 20:34

Mr.Bean10

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie komponentov.

v PC zostavy

12

569

02.07.2013 22:44

K4mil

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie zostavy

v PC zostavy

10

492

09.11.2022 12:23

Cirky

V tomto fóre nie sú ďalšie neprečítané témy.

overenie php

v PHP, ASP

7

688

16.03.2009 21:35

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie zostavy

v PC zostavy

12

658

14.07.2022 10:28

RomanBB

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie zostavy

v PC zostavy

5

515

23.12.2008 15:59

Romi

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie zostavy.

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PC zostavy

31

1343

01.10.2012 15:39

iNen

V tomto fóre nie sú ďalšie neprečítané témy.

Overenie mobilu

v Mobilné zariadenia

2

3397

27.07.2010 8:31

martes25

V tomto fóre nie sú ďalšie neprečítané témy.

overenie komponentov

v PC zostavy

5

442

14.08.2012 21:45

werwest



© 2005 - 2025 PCforum, edited by JanoF