Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 32 ] Choď na stránku: 1, 2 ďalšia
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
Príspevok NapísalOffline : 03.01.2010 14:00

Č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
Bydlisko: Kosice
Príspevok NapísalOffline : 03.01.2010 14:03

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:05

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
Bydlisko: Bratislava ...
Príspevok NapísalOffline : 03.01.2010 14:14

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:16

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:16

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:17

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
Bydlisko: Bratislava ...
Príspevok NapísalOffline : 03.01.2010 14:17

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:19

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:21

á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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:24

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:26

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
Bydlisko: Brno
Príspevok NapísalOffline : 03.01.2010 14:29

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:32

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:34

Ď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
Bydlisko: Brno
Príspevok NapísalOffline : 03.01.2010 14:37

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:39

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:42

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
Príspevok Napísal autor témyOffline : 03.01.2010 14:46

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 14:48

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
Príspevok Napísal autor témyOffline : 03.01.2010 15:05

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
Príspevok Napísal autor témyOffline : 03.01.2010 15:24

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 15:38

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
Príspevok Napísal autor témyOffline : 03.01.2010 15:46

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 17:47

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
Príspevok Napísal autor témyOffline : 03.01.2010 17:55

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 17:56

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
Príspevok Napísal autor témyOffline : 03.01.2010 17:58

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
Bydlisko: Nové Zámky
Príspevok NapísalOffline : 03.01.2010 18:02

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
Príspevok Napísal autor témyOffline : 03.01.2010 18:04

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


je presne také isté ako v databáze


Odpovedať na tému [ Príspevkov: 32 ] Choď na stránku: 1, 2 ďalšia


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

449

18.07.2007 22:35

kajbo Zobrazenie posledných príspevkov

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

v Notebooky a netbooky

9

831

26.09.2007 16:36

Misisiak Zobrazenie posledných príspevkov

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

444

30.12.2009 19:04

klesco Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. PHP a zistenie loginu v intranete

v PHP, ASP

6

440

23.02.2008 13:50

sepo Zobrazenie posledných príspevkov

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

v Ostatné

4

441

26.10.2011 21:03

Millfox Zobrazenie posledných príspevkov

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

v PHP, ASP

5

647

30.07.2008 10:41

B.A.X.O Zobrazenie posledných príspevkov

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

v PC zostavy

12

525

02.07.2013 22:44

K4mil Zobrazenie posledných príspevkov

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

v PHP, ASP

7

648

16.03.2009 21:35

don jebot Zobrazenie posledných príspevkov

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

1270

01.10.2012 15:39

iNen Zobrazenie posledných príspevkov

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

v PC zostavy

5

488

23.12.2008 15:59

Romi Zobrazenie posledných príspevkov

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

v Mobilné zariadenia

2

3360

27.07.2010 8:31

martes25 Zobrazenie posledných príspevkov

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

v PC zostavy

5

402

14.08.2012 21:45

werwest Zobrazenie posledných príspevkov

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

v Grafické karty

2

324

01.03.2015 23:30

Kraliček Zobrazenie posledných príspevkov

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

v Pevné disky a radiče

9

642

14.08.2007 7:14

unkie Zobrazenie posledných príspevkov

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

v PC zostavy

7

415

21.05.2013 5:43

mirek587 Zobrazenie posledných príspevkov

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

v PC zostavy

10

435

09.11.2022 12:23

Cirky Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra