PHP problem ultra hitno

poruka: 5
|
čitano: 901
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
16 godina
neaktivan
offline
PHP problem ultra hitno

Imam mali problem s jednim PHP kodom koji je radio na starijoj verziji MySqla ali na novoj ne radi pa pomozite. Error koji dobivam je "Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\checklogin.php:6) in C:\xampp\htdocs\checklogin.php on line 38". A linija 38 glasi "header("location:admin.php");". BTW. Ovi podatci su moj doma server testni tak da se ne uzbuđujte.

 

<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Debug Crew - Login</title>

</head><?php

$host="localhost"; // Host name 

$username="root"; // Mysql username 

$password="patka"; // Mysql password 

$db_name="testingfield"; // Database name 

$tbl_name="members"; // Table name

 

// Connect to server and select databse.

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 

mysql_select_db("$db_name")or die("cannot select DB");

 

// username and password sent from form 

$myusername=$_POST['myusername']; 

$mypassword=$_POST['mypassword'];

 

// To protect MySQL injection (more detail about MySQL injection)

$myusername = stripslashes($myusername);

$mypassword = stripslashes($mypassword);

$myusername = mysql_real_escape_string($myusername);

$mypassword = mysql_real_escape_string($mypassword);

 

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);

 

// Mysql_num_row is counting table row

$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row

 

if($count==1){

// Register $myusername, $mypassword and redirect to file "login_success.php"

$_SESSION["myusername"];

$_SESSION["mypassword"]; 

header("location:admin.php");

}

else {

echo "Krivo korisnicko ime/lozinka!";

}

?><body>

</body>

</html>

[url=http://profile.mygamercard.net/IgorFastGun][img]http://card.mygamercard.net/gelsig/IgorFastGun.png[/img][/url]
Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
RE: PHP problem ultra hitno

Nije stvar s mysql-om, nego tvojom logikom. Kada definiras html tagove ti saljes header informacije. Ne mozes ih poslati opet sa header() funkcijom u php-u. Nacin s kojim ces to rijesiti je da pozivas header prije nego definiras cijelu stranicu u html-u.

15 godina
neaktivan
offline
PHP problem ultra hitno

header() mora biti ispred izlaza koji je poslan pregledniku ako me razumiješ. U tvom slučaju to bi bilo 


<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Debug Crew - Login</title></head>

Također mora biti i session_start() kojeg baš i ne vidim kod tebe a koji ti je potreban da koristiš $_session varijable.

Sada možeš promijeniti kod tako da  header() (i session_start) budu ispred html koda.

Moj PC  
0 0 hvala 0
16 godina
neaktivan
offline
PHP problem ultra hitno

Puno hvala, sad radi. SAmo mi je bilo glupo sto dok sam imao stariji MySql onda mi je kod radio onako kako je bilo, samo sto prije nije bilo $_SESSION nego session_register.

[url=http://profile.mygamercard.net/IgorFastGun][img]http://card.mygamercard.net/gelsig/IgorFastGun.png[/img][/url]
Moj PC  
0 0 hvala 0
17 godina
offline
RE: PHP problem ultra hitno
LordShgi kaže...

Puno hvala, sad radi. SAmo mi je bilo glupo sto dok sam imao stariji MySql onda mi je kod radio onako kako je bilo, samo sto prije nije bilo $_SESSION nego session_register.

zato moraš čitati dokumentaciju prije nego "podigneš" sustav na noviju verziju.

;-)

1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice