devileyes Posted August 30, 2006 Share Posted August 30, 2006 I have a very simple login script everything is working great but when i try to put 'header' in the 'else' conditiont it doesn't work, where is my mistake and how to work it?.Here is my script:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head><body bgcolor="#000000" text="#FF0000" link="#FFFF00" vlink="#FFFF00" alink="#FFFF00"><div align="center"> <?phpinclude "connect.php";// connect to the mysql server$link = mysql_connect($server, $db_user, $db_pass)or die ("Could not connect to mysql because ".mysql_error());// select the databasemysql_select_db($database)or die ("Could not select database because ".mysql_error());$match = "select id from $table1 where username = '".$_POST['username']."'and password = '".$_POST['password']."';"; $qry = mysql_query($match)or die ("Could not match data because ".mysql_error());$num_rows = mysql_num_rows($qry); if ($num_rows <= 0) { echo "wrong username or password !<br>";echo "<p>";echo "<a href=adminlogin.html>Go Back</a>";} else {echo "<a href=adminarea.html target=_parent>Enter</a>"; [color=red]// I wont here to be header ("Location: adminarea.html");[/color]}?></div></body></html> Quote Link to comment Share on other sites More sharing options...
ronverdonk Posted August 30, 2006 Share Posted August 30, 2006 You cannot have a header sent after you have outputted anything to the screen, not even a blank!So you usually put the header() call before all the html stuff.Ronald 8) Quote Link to comment Share on other sites More sharing options...
devileyes Posted August 30, 2006 Author Share Posted August 30, 2006 If i cannot have a header sent after i have outputted anything to the screen, how the script should look like? What do i have to do? What to change? Pls explain me Quote Link to comment Share on other sites More sharing options...
ronverdonk Posted August 30, 2006 Share Posted August 30, 2006 Here it is: header before any HTML or other output:[code]<?php include "connect.php";if (logIn($_POST['username'], $_POST['password']) ) header("Location: adminarea.html");else die; function logIn($uid, $pwd) { // connect to the mysql server $link = mysql_connect($server, $db_user, $db_pass) or die ("Could not connect to mysql because ".mysql_error()); // select the database mysql_select_db($database) or die ("Could not select database because ".mysql_error());$match = "select id from $table1 where username = '$uid' AND password = '$pwd'"; $qry = mysql_query($match) or die ("Could not match data because ". mysql_error()); $num_rows = mysql_num_rows($qry); if ($num_rows <= 0) { ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head><body bgcolor="#000000" text="#FF0000" link="#FFFF00" vlink="#FFFF00" alink="#FFFF00"><div align="center"> <?php echo "<p>wrong username or password !</p>"; echo "<a href=adminlogin.html>Go Back</a>"; return false; } else return true;}?>[/code]Ronald 8) Quote Link to comment Share on other sites More sharing options...
AndyB Posted August 30, 2006 Share Posted August 30, 2006 Dammit - why is this problem posted twice. PLEASE do NOT post the same thing in different forums - it confuses and wastes people's time. Quote Link to comment Share on other sites More sharing options...
devileyes Posted August 30, 2006 Author Share Posted August 30, 2006 [quote author=ronverdonk link=topic=106221.msg424581#msg424581 date=1156939508]I put it like this but it sas - Could not select database because No Database Selected[/quote] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.