Forum » Izdelava spletišč » Koda za prijavo
Koda za prijavo
roky99 ::
Živjo!
Pri izvajanju kode za prijavo mi izpiše naslednje:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\htdocs\cms\login\prijavi.php:7) in C:\xampp\htdocs\cms\login\prijavi.php on line 31
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\cms\login\prijavi.php:7) in C:\xampp\htdocs\cms\login\prijavi.php on line 31
Prijavljen kot roky99
prijava.php
To se mi večkrat dogaja in ne pogruntam kje je problem oz. kaj delam narobe.
Pri izvajanju kode za prijavo mi izpiše naslednje:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\htdocs\cms\login\prijavi.php:7) in C:\xampp\htdocs\cms\login\prijavi.php on line 31
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\cms\login\prijavi.php:7) in C:\xampp\htdocs\cms\login\prijavi.php on line 31
Prijavljen kot roky99
prijava.php
<html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250" /> <title>Prijava</title> </head> <body> <?php include "../config.php"; if (isset($_POST['submit'])) { @$id = $_POST['id']; $uime = $_POST['uime']; $geslo = $_POST['geslo']; $ok = 0; $result = mysql_query("SELECT * FROM uporabniki"); while($row = mysql_fetch_array($result)) { $uime1 = $row['uime']; $geslo1 = $row['geslo']; if(($uime == $uime1) && ($geslo == $geslo1)) { $ok = 1; } } if($ok == 1) { session_start(); $_SESSION['uime'] = $uime; echo "Prijavljen kot <b>". $_SESSION['uime']."</b>"; ?> <script language="javascript"> alert("Pozdravljen <?php echo $uime ?>!"); window.location = "<?php echo URL."login" ?>" </script> <?php } else { ?> <script language="javascript"> alert("Prijava ni uspela!"); window.location = "<?php echo URL."login" ?>" </script> <?php } } ?> </body> </html>
To se mi večkrat dogaja in ne pogruntam kje je problem oz. kaj delam narobe.
don't drink and drive, just smoke and fly! ;)
Gost ::
Problem je, ker kličeš funkcijo session_start() za nekim izpisom datoteke. To je v tvojem primeru html koda na začetku. Torej malo moraš prestrukturirati datoteko (php kodo daj recimo na začetek, izpise pa v body tag).
roky99 ::
Hvala, bom poskusil pa se javim ce se kaj ne bo stimalo :)
don't drink and drive, just smoke and fly! ;)
roky99 ::
Spet imam en problem.
Napisal sem kodo za reigstracijo in prijavo, vendar se pojavi težava pri geslu. Uporabil sem funkcijo md5().
Registracija lepo uspe, pri prijavi pa se zatakne. Če iz baze skopiram md5 geslo je prijava uspešna, drugače ne.
registriraj.php
prijavi.php
Napisal sem kodo za reigstracijo in prijavo, vendar se pojavi težava pri geslu. Uporabil sem funkcijo md5().
Registracija lepo uspe, pri prijavi pa se zatakne. Če iz baze skopiram md5 geslo je prijava uspešna, drugače ne.
registriraj.php
<html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250" /> <title>Registracija</title> </head> <body> <?php include "../config.php"; if (isset($_POST['submit'])) { @$id = $_POST['id']; $uime = addslashes($_POST['uime']); $geslo = md5($_POST['geslo']); $email = addslashes($_POST['email']); $ok = 1; $result = mysql_query("SELECT * FROM uporabniki WHERE uime='$uime'"); while($row = mysql_fetch_array($result)) { $ok = 0; echo "Uporabniško ime <b>".$uime."</b> že obstaja<br>"; exit(); } $result = mysql_query("SELECT * FROM uporabniki WHERE email='$email'"); while($row = mysql_fetch_array($result)) { $ok = 0; echo "Uporabnik z email naslovom <b>".$email."</b> že obstaja<br>"; exit(); } if($ok == 1) { $sql = "INSERT INTO uporabniki (uime, geslo, email) VALUES ('$uime', '$geslo', '$email')"; if (!mysql_query($sql,$link)) { die('Error: ' . mysql_error()); } ?> <script language="javascript"> alert("Podatki so bili vnešeni v bazo.\n Hvala!"); window.location = "<?php echo URL."login" ?>" </script> <?php } } ?> </body> </html>
prijavi.php
<?php include "../config.php"; if (isset($_POST['submit'])) { @$id = $_POST['id']; $uime = addslashes($_POST['uime']); $geslo = $_POST['geslo']; $ok = 0; $result = mysql_query("SELECT * FROM uporabniki WHERE uime='$uime' AND geslo='$geslo'"); $rowc = mysql_num_rows($result); if($rowc > 0) { while($row = mysql_fetch_array($result)) { session_start(); session_register('uime'); ?> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250" /> <title>Prijava</title> </head> <body> <script language="javascript"> alert("Pozdravljen <?php echo $_SESSION['$uime']; ?>!"); window.location = "<?php echo URL."login" ?>" </script> <?php } } else { ?> <script language="javascript"> alert("Prijava ni uspela!"); window.location = "<?php echo URL."login" ?>" </script> <?php } } ?> </body> </html>
don't drink and drive, just smoke and fly! ;)
Zgodovina sprememb…
- spremenil: roky99 ()
schtr4jh ::
prijavi.php -> $geslo = md5($_POST['geslo']);
ps: priporočam, da si ogledaš funckijo mysql_real_escape_string
ps: priporočam, da si ogledaš funckijo mysql_real_escape_string
roky99 ::
prijavi.php -> $geslo = md5($_POST['geslo']);
Kam naj dam to?
don't drink and drive, just smoke and fly! ;)
roky99 ::
Tudi to sem poskusil vendar ne dela. Še kakšna fora, ki bi lahko pomagala?
don't drink and drive, just smoke and fly! ;)
alien01 ::
Problem je, ker kličeš funkcijo session_start() za nekim izpisom datoteke. To je v tvojem primeru html koda na začetku. Torej malo moraš prestrukturirati datoteko (php kodo daj recimo na začetek, izpise pa v body tag).
Lahko bi pa na začetek dal ob_start() in na konec ob_end_flush(), da mu ne bi bilo potrebno spreminjati kode.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Php register/login problemOddelek: Izdelava spletišč | 2773 (2184) | keworkian |
» | Javascript vprašanjeOddelek: Izdelava spletišč | 1146 (1060) | zigi |
» | [php-seje]Ali kdo pozna rešitev!Oddelek: Programiranje | 1392 (1218) | diovc |
» | unset cookieOddelek: Izdelava spletišč | 1876 (1683) | tomitza |
» | [php] Problem z dinamično stranjoOddelek: Izdelava spletišč | 1565 (1410) | Iskraman |