Prihlasovaci script se nenapoji a nepreda promennou – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Prihlasovaci script se nenapoji a nepreda promennou – PHP – Fórum – Programujte.comPrihlasovaci script se nenapoji a nepreda promennou – PHP – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
Wasew
~ Anonymní uživatel
4 příspěvky
9. 7. 2012   #1
-
0
-

Snazim se napsat nektery scripty pro svuj web . Kvuli zjednoduseni a zamezeno chyb jsem pouzil hotovy scripty na registraci a prihlasovani. Registrace funguje bez problemu, ale prihlasovani ani omylem. Obvykle kdyz skusim zadat jmeno a heslo, tak se script bez niceho vrati zpet . Kod prikladam.

<?php
 require("config.php") ;
 $connection = mysql_connect($dbhost, $dbuser, $dbpass)or die ("Nemohu otevrit server");
 $db = mysql_select_db("$dbname", $connection) or die ("Nemohu otevrit vybrat datab?zi");
$_SESSION['login'] = 'login';
$_SESSION['password'] = 'password';
$_SESSION['opravneni'] = 'opravneni';
if (isset($_POST['submit'])) {

$select = mysql_query("SELECT `login`,`password`,`opravneni` FROM `uzivatel` WHERE `login`='".addslashes($_POST['login'])."' AND
`password`='".md5(trim($_POST['password'])."'")) or die (mysql_error());
$udaje = mysql_fetch_assoc($select);

if (mysql_num_rows($select)==1) {
session_regenerate_id();
$_SESSION['login'] = $_POST['login'];
$_SESSION['password'] = md5($_POST['password']);
$_SESSION['opravneni'] = $udaje['opravneni'];






if($udaje == 1){
header("Location:admin/index.php");}
elseif($udaje == 2){
header("Location:index.php");}


}
}

/*odhlaseni*/

if (isset($_GET['logout'])) {
unset($_SESSION['login']);
unset($_SESSION['password']);
unset($_SESSION['opravneni']);
session_destroy();
}

isset($_GET['code']) && $_GET['code']=="401" ?
$title = "Neautorizovaný přístup (Chyba 401)" :
$title = "Přihlášení";




?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs"> 
<head>

  <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
  <title><?php echo $title ?></title>
 
</head>
<body>

<form action="#" method="post">
  <fieldset>
    <legend><b><?php echo $title ?></b></legend>
    <p><input name="login" size="20" tabindex="1" type="text" /> <label>Jmeno</label></p>
    <p><input name="password" size="20" tabindex="2" type="password" /> <label>Heslo</label></p>
    <p><input name="submit" type="submit" tabindex="3" value="Odeslat" /></p>
  </fieldset> 
</form>
  
<?php if (isset($_GET['logout'])) { ?> 
  
  <p>Byli jste odhlášeni ze systému.</p>
  
<?php } ?>
  
<p><a href="./register.php">Zaregistrovat</a></p>
  
</body>
</html>
Nahlásit jako SPAM
IP: 83.240.55.–
yetty
~ Redaktor
+5
Super člen
9. 7. 2012   #2
-
0
-

Tohle se mi zdá podezřelé: 

<form action="#" method="post">

Místo # tam dej adresu toho skriptu.

Taky není nejlepší nápad ukládat si heslo do SESSION. Už jen z principu.

Nahlásit jako SPAM
IP: 90.180.203.–
wasew
~ Anonymní uživatel
4 příspěvky
10. 7. 2012   #3
-
0
-

Skusil jsem. Vysledek stejnej. Navic script nevyhodi ani 401 , ani nepresmeruje. Cely pripojeni, vcetne volani DB mam vzity z jinyho scriptu, kde funguje. SQL dotaz mi pri nahrani v admineru vyhodi spravny data.

Nahlásit jako SPAM
IP: 199.64.72.–
CZechBoY+4
Věrný člen
10. 7. 2012   #4
-
0
-

co znamená if($udaje==1) elseif($udaje==2), když $udaje=mysql_fetch_assoc($select)...

mysql_fetch_assoc vrací pole nebo false

Nahlásit jako SPAM
IP: 213.192.10.–
Řešení
wasew
~ Anonymní uživatel
4 příspěvky
11. 7. 2012   #5
-
0
-
Vyřešeno Nejlepší odpověď

Nakonec jsem to cely udelal jinak. POkud to muze moderator uzavrit.

Diky

Nahlásit jako SPAM
IP: 199.64.72.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 18 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý