| Autor | Zpráva | ||
|---|---|---|---|
| MartinM_93 Profil |
#1 · Zasláno: 16. 10. 2010, 10:51:25
Dobrý den,
mám problém. Udělal jsem v PHP redakční systém s přihlášením pomocí GET. Každopádně na mém PC to pomocí PHPTriad jede, na WZ.CZ mi to taky funguje a na IC.CZ jak by smet, ale na klientově doméně, nejde přihlášení a i když dodám heslo ručně do get, tak se mi zadna stranka nezobrazuje. Může to být tím, že jeho doména je tvořená IP adresou? A nebo tím, že heslo je v souboru, který se dosazuje funkce která porovnává GET s pravdou? Každopádně když si to zkopiruji na WZ, IC a nebo k sobě funguje to, ale u něj ne a to mu to kopiruji přímo ze serveru na server. Je to to samé beze změny a nefunguje to. Díky za rady! Martin |
||
| johnl Profil |
#2 · Zasláno: 16. 10. 2010, 11:15:18 · Upravil/a: johnl
Řekl bych že problém bude na třináctém řádku.! Pokud ne, tak sem dej kód toho přihlašování..
Možná bych to typl že místo $_GET["heslo"] používáš $heslo a na serveru je vyplé register_globals (protože na ic a wz toto věčinou bývá zapnuté, ovšem na placeném hostingu nee..) |
||
| MartinM_93 Profil |
#3 · Zasláno: 16. 10. 2010, 11:19:17
index.php
<link rel="stylesheet" type="text/css" href="_css/_css.css"> <div id="center"> <div id="login"> <center> <h4>PŘIHLÁŠENÍ DO ADMINISTRACE </h4> <form action="login.php" method="get"> <input type="text" name="XdfGoE" /> <input type="password" name="gUrfXz" /> <input type="submit" value="Přihlásit" /> </form> </center> </div> </div> login.php <link rel="stylesheet" type="text/css" href="_css/_css.css">
<?
$sbr_hsl = fopen("lock/enter.pass", "r");
$lock = fread($sbr_hsl, 30);
if($gUrfXz == $lock && $XdfGoE == "admin"): ?>
<?php include_once("administrace.php"); ?>
<? else: ?>
<b>Zadané heslo, nebo uživatelské jméno je chybné!</b> <br> Pokuste se přihlásit <a href=admin.php>znovu</a>.
<? endif ?>
|
||
| johnl Profil |
#4 · Zasláno: 16. 10. 2010, 11:21:37 · Upravil/a: johnl
MartinM_93:
Přečti si ještě jednou co jsem ti psal.. Nahraď $gUrfXz za $_POST["gUrfXz"] a $XdfGoE za $_POST["XdfGoE"] a vyzkoušej jestli to půjde.. ;-) Mimochodem, heslo je bezpečnější ukládat do hashe, třeba sha1(); |
||
| MartinM_93 Profil |
#5 · Zasláno: 16. 10. 2010, 11:43:13
Díky, měl jsi pravdu! Funguje to :)
Ještě dotaz: Na každou stránku odkaz vypadá přibližně takto: <a href=btn.php?XdfGoE=admin&gUrfXz=<?php echo $lock ?>>SPRÁVA POLOŽEK MENU</a> a díky GET se vyhodnotilo zda na tu stranku má přístup nebo ne. Jak to udělat teď pomocí POST? |
||
| Medvídek Profil |
#6 · Zasláno: 16. 10. 2010, 11:48:48
MartinM_93:
Udělej to pomocí SESSION, celkově předávat heslo (a ještě nešifrované) v GETu není moc dobré. |
||
| AM_ Profil |
#7 · Zasláno: 16. 10. 2010, 11:53:07
Má nějaký smysl pojmenovat pole XdfGoE a gUrfXz? nebylo by lepší "jmeno" a "heslo"?
|
||
| MartinM_93 Profil |
#8 · Zasláno: 16. 10. 2010, 14:58:24
AM_: Ne, nemá!
Nemohl by mi nekdo vysvetlit to SESSION ? Našel jsem si toto a nemuzu to pochopit: $_SESSION['heslo'] = 'qwert'; session_start(); if ($_SESSION['heslo'] == 'qwert') echo "Jo je to dobrý....." ; else "Chybné heslo!!!"; a nevim co s tím a jak na to, poradte prosim. Jo a co je to ten hash? |
||
| Alphard Profil |
#9 · Zasláno: 16. 10. 2010, 15:09:06
MartinM_93:
„Nemohl by mi nekdo vysvetlit to SESSION ?“ Prostředek pro přenášení dat mezi stránkami http://www.linuxsoft.cz/article.php?id_article=440 „Našel jsem si toto“ Session_start() dejte na začátek. Ale takhle na jedné stránce to stejně nemá smysl. „Jo a co je to ten hash?“ Hash je řetězec (číslo) vygenerovaný z původního řetězce tak, že zpětně nelze původní řetězec zjistit, viz http://cs.wikipedia.org/wiki/Hash |
||
| AM_ Profil |
#10 · Zasláno: 16. 10. 2010, 15:23:10 · Upravil/a: AM_
MartinM_93:
„AM_: Ne, nemá!“ tak proč to nepojmenuješ kulturně? „Našel jsem si toto a nemuzu to pochopit:“ ten kus kódu je příšerný, na něm není, co pochopit. Jinak je pěkný článek to co poslal Alphard, jen z toho kódu vynech všechny funkce session_register(), jsou zastaralé a nejen že není nutné je používat, ale ani se to už nedoporučuje. |
||
| MartinM_93 Profil |
#11 · Zasláno: 16. 10. 2010, 16:04:57
A co mám použít místo session_register ??
|
||
| AM_ Profil |
#12 · Zasláno: 16. 10. 2010, 16:14:25
nic, prostě ty funkce vynech, používaly se dřív kdy se k session přistupovalo jinak. V tomhle příkladu je zbytek kódu napsaný tak, že by je mělo jít prostě vynechat.
|
||
|
Časová prodleva: 16 let
|
|||
0