Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
­Villagers
Člen
Avatar
­Villagers:31.7.2013 14:03

Ahoj. Potrebujem pomoc z príkazom if. Mám formulár z textovím okinekom do ktorého treba napísať heslo. Otvorí sa php subor ktorý ma za úlohu presmerovať klienta ktorí písal heslo na zadanú tránku podľa toho, aké heslo napísal. Všetko funguje okrem toho že neviem napísať kód ale opraviť, ktorí má za úlohu presmerovanie na zdanú stránku. Tu prikladám PHP kód ktorý spracúvava heslo potrebujem namiesto abc.html napísať kód ktorý klienta na stránku bac.html presmeruje.

<? $heslo = $_POST['heslo']; ?>

<?
if ($heslo==123 ) {abc.html;}
if ($heslo!=123 ) {bca.html;}
?>

Samozrejme že chyba je v štvrtom a piatom riadku.. potrebuje mkód dakujem.

Editováno 31.7.2013 14:04
 
Odpovědět
31.7.2013 14:03
Avatar
pehus
Člen
Avatar
pehus:31.7.2013 14:08
$heslo = $_POST['heslo'];

if($heslo=='123') {
  header("Location: abc.html");
}
elseif($heslo!='123') {
  header("Location: bca.html");
}
 
Nahoru Odpovědět
31.7.2013 14:08
Avatar
Kit
Tvůrce
Avatar
Odpovídá na ­Villagers
Kit:31.7.2013 14:12

Pokud bys ten kód chtěl místo přesměrování jen vložit, použij funkci readfile().

Nahoru Odpovědět
31.7.2013 14:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
­Villagers
Člen
Avatar
­Villagers:31.7.2013 14:48

Vyriešil som to takto a už to funguje:

if ($heslo==123 and $name==meno123) {header("Location: abc.html");}
if ($heslo!=123 and $name!=meno123) {header("Location: bca.html");}

ale predsa diki za radu

 
Nahoru Odpovědět
31.7.2013 14:48
Avatar
David Hynek
Tvůrce
Avatar
Odpovídá na ­Villagers
David Hynek:31.7.2013 16:05

nic ve zlém, ale tohle je funkčně nesmysl...

Nahoru Odpovědět
31.7.2013 16:05
Čím víc vím, tím víc věcí nevím.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hynek
Kit:31.7.2013 16:11

Představ si, že tento nesmysl jede. Sice mi to vyhazuje 4 noticky, ale když jsou blokovány (default), tak se nevypíše nic a normálně to pošlape.

Nahoru Odpovědět
31.7.2013 16:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hynek
Tvůrce
Avatar
Odpovídá na Kit
David Hynek:31.7.2013 22:07

o tom, že to šlape nepochybuji. Přesměrování, není nic těžkého. Mne spíš zarazila kombinace, kdy vyžaduji heslo a pak přesměruji. Na tu stránku kam je uživatel po zadání hesla přesměrován, se dá dostat i bez znalosti hesla.

Tedy když už po uživateli vyžaduji heslo, použil bych po ověření hesla Session, kde by se uložilo právo uživatele k přístupu k citlivým datum.

Pak použít klidně i přesměrování, ale na každé stránce, by na začátku muselo být ověření, zda je Session platná pro vstup a v případě, že není, přesměrovat na přihlašovací stránku a vyžadovat přihlášení.

Ale to jen tak na okraj :)

Nahoru Odpovědět
31.7.2013 22:07
Čím víc vím, tím víc věcí nevím.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hynek
Kit:31.7.2013 22:22

V jednom programu dodnes používám obyčejnou HTTP autentizaci a také to stačí. Je to mnohem lepší řešení než tohle.

Nahoru Odpovědět
31.7.2013 22:22
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 20:21

Vím že je to nebezpečné ale neumím dobre udelat MySql takže nemuzu udelat normálne prihlasovani... Stránky na ktoré su ludia presmerovan maju číselné kódy takže je velmi malá šanca že ho niekto uhádne. A kód funguje ale hral som sa zním celý deň kedže z php len začínam.

 
Nahoru Odpovědět
1.8.2013 20:21
Avatar
Odpovídá na ­Villagers
Michal Žůrek - misaz:1.8.2013 20:28

to tě má právě popohnat aby ses to naučil.

http://www.itnetwork.cz/…sql-databazi

 
Nahoru Odpovědět
1.8.2013 20:28
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 20:32

Diki za link.... je to tam nejako zložite rozpisané :D

 
Nahoru Odpovědět
1.8.2013 20:32
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 20:34

Jedna otázka: Ked budeme robit masql musím meniť všetky svoje html/php kódy ?

 
Nahoru Odpovědět
1.8.2013 20:34
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na ­Villagers
David Hartinger:1.8.2013 20:56

Z charakterů tvých dotazů máš před sebou ještě spoustu práce.

Nahoru Odpovědět
1.8.2013 20:56
You are the greatest project you will ever work on.
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 21:23

AHOJ LIDI POTREBUJU POMOC. Tento kód hoe prestal fungovať dôvod fakt neviem prosím pomožte nejako... :/

 
Nahoru Odpovědět
1.8.2013 21:23
Avatar
Kit
Tvůrce
Avatar
Odpovídá na ­Villagers
Kit:1.8.2013 21:27

Moc se tady nerozkřikuj. Nemáme to rádi.

Nahoru Odpovědět
1.8.2013 21:27
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 21:29

Tak promiň...neumíš nejak pomoct ?

 
Nahoru Odpovědět
1.8.2013 21:29
Avatar
Odpovídá na ­Villagers
Neaktivní uživatel:1.8.2013 21:34

Umí, ale zkus nějak popsat problém, nevíme co s tím je ... vyhazuje php nějaký errory?

Nahoru Odpovědět
1.8.2013 21:34
Neaktivní uživatelský účet
Avatar
­Villagers
Člen
Avatar
­Villagers:1.8.2013 21:35

Tohle jekó ketrý šel a už nejde... :(

<? $heslo = $_POST['heslo']; ?>


<?

if ($heslo==123 and $name==xxx) {header("Location: xxx1.html");}
if ($heslo!=123 and $name!=xxx) {header("Location: xxx.html");}

?>
 
Nahoru Odpovědět
1.8.2013 21:35
Avatar
Odpovídá na ­Villagers
Neaktivní uživatel:1.8.2013 21:38

Na to nebudu nic říkat ... dobrou noc :)

Nahoru Odpovědět
1.8.2013 21:38
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na ­Villagers
Kit:1.8.2013 21:39

Především se nauč všechny stringy psát do apostrofů nebo do uvozovek. Na tento způsob zápisu vůbec nejsme zvyklí, protože nám to hlásí chyby. A ty nemáme rádi.

Nevidím tam nikde definici proměnné $name. Bez ní to fungovat nebude.

Nahoru Odpovědět
1.8.2013 21:39
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
­Villagers
Člen
Avatar
­Villagers:2.8.2013 18:11

Kit vím že tam mám všechno zle proto se ptám aby ste mi pomohli vyresit to... jak vidím tak asi mi neporadíte.

 
Nahoru Odpovědět
2.8.2013 18:11
Avatar
­Villagers
Člen
Avatar
­Villagers:2.8.2013 18:16

Takže...Našiel som chybu jediné čo od vás žiadam je jedna vecička. Tento k=ód čo som vám dal hore funguje lenže ja tam chem pridať viac hesiel... Vidím že to nejde len tak pretože sa tie riadky if ked ich tam je viac automaticky blokujú...Preto chcem jedinú vec. Kód ktorý mi tie riadky if oddelí. Každý clovek ktorí saprihlasuje má svoje meno a heslo teda jeden riadok na heslo a nick ked sa odpoved rovná a druhá ked nie .... Potrebuje mich nejako oddelit... Prosím vás.

 
Nahoru Odpovědět
2.8.2013 18:16
Avatar
Odpovídá na ­Villagers
Neaktivní uživatel:2.8.2013 23:23

Nauč se základy jazyka a nesnaž se lepit hotový části do sebe, z toho vzejde prasárna, která nebude fungovat jak chceš, nic z toho nebudeš mít a my budeme zbytečně plýtvat časem ;)

Nahoru Odpovědět
2.8.2013 23:23
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na ­Villagers
Kit:2.8.2013 23:27

Proč bychom ti měli radit, jak se máš střílet do nohy? Místo PHP si raději udělej HTTP autentizaci. Je to mnohem jednodušší a nepotřebuješ k tomu vůbec žádné PHP.

Nahoru Odpovědět
2.8.2013 23:27
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
vodacek
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
vodacek:3.8.2013 6:58

lepení hotových částí do sebe je dle mě relativně dobrej způsob jak se něco naučit má-li dotyčný pak i vůli si s tím pohrát a vyzkoumat cože to vlastně ve skutečnosti dělá

 
Nahoru Odpovědět
3.8.2013 6:58
Avatar
Odpovídá na vodacek
Neaktivní uživatel:3.8.2013 7:25

Mno nevím, myslím, že by bylo lepší se učit přímo objektovou formu...

Nahoru Odpovědět
3.8.2013 7:25
Neaktivní uživatelský účet
Avatar
David Hynek
Tvůrce
Avatar
Odpovídá na ­Villagers
David Hynek:3.8.2013 7:38

jestli ti stačí něco prostého budiž

// před tímto kódem, nesmí být žádný výstup!!
$hesla = array(
"Honza" => array("Heslo","abc.html"),
"Jarda" => array("Takyheslo","abcd.html"),
"Monika" => array("Jineheslo","abcde.html"),
);

if($hesla[$_POST['jmeno']][0] == $_POST['heslo']) header("location: ".$hesla[$_POST['jmeno']][1]);
else header(location: neznam.html);
Nahoru Odpovědět
3.8.2013 7:38
Čím víc vím, tím víc věcí nevím.
Avatar
­Villagers
Člen
Avatar
­Villagers:4.8.2013 19:26

Díki David

Editováno 4.8.2013 19:27
 
Nahoru Odpovědět
4.8.2013 19:26
Avatar
jan.vencl
Tvůrce
Avatar
jan.vencl:8.8.2013 19:40

Dovolím si přidat trošku bezpešnosti :D když už to chce takhle tak dodám sleep a nějak ještě ošetřit post ne?

// před tímto kódem, nesmí být žádný výstup!!
$hesla = array(
"Honza" => array("Heslo","abc.html"),
"Jarda" => array("Takyheslo","abcd.html"),
"Monika" => array("Jineheslo","abcde.html"),
);
sleep(2);
if($hesla[$_POST['jmeno']][0] == $_POST['heslo']) header("location: ".$hesla[$_POST['jmeno']][1]);
else header(location: neznam.html);
 
Nahoru Odpovědět
8.8.2013 19:40
Avatar
Nahoru Odpovědět
8.8.2013 20:22
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Kit:8.8.2013 20:39

To tam asi zůstalo z nějakých pokusů. Také občas zapomenu vyhodit z ukázky balast.

Nahoru Odpovědět
8.8.2013 20:39
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Martin Konečný (pavelco1998):8.8.2013 20:48

Mně nepřijde, že je to "zbytek z pokusů", převážně kvůli této části věty: "když už to chce takhle tak dodám sleep ...". Z toho soudím, že je to tam záměrně, ale nevím proč. :-)

Nahoru Odpovědět
8.8.2013 20:48
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
David Hynek
Tvůrce
Avatar
Odpovídá na jan.vencl
David Hynek:8.8.2013 20:49

to neřeš, k tomu dojde časem.

Nahoru Odpovědět
8.8.2013 20:49
Čím víc vím, tím víc věcí nevím.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Kit:8.8.2013 20:50

To asi neví nikdo...

Nahoru Odpovědět
8.8.2013 20:50
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
jan.vencl
Tvůrce
Avatar
jan.vencl:9.8.2013 0:13

Zamezí to použití Brute-Force:)

 
Nahoru Odpovědět
9.8.2013 0:13
Avatar
Odpovídá na ­Villagers
Neaktivní uživatel:9.8.2013 6:27

Jestli chceš v PHP pomoct, tak mi napiš, nějak ti určitě pomůžu. Takové kódy mi dávají pěstí do obličeje. :D

Nahoru Odpovědět
9.8.2013 6:27
Neaktivní uživatelský účet
Avatar
­Villagers
Člen
Avatar
 
Nahoru Odpovědět
13.8.2013 11:31
Avatar
Odpovídá na ­Villagers
Neaktivní uživatel:13.8.2013 12:07

Nemáš zač, jsem na chatu, jestli máš teda zájem.

Nahoru Odpovědět
13.8.2013 12:07
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 38 zpráv z 38.