a ver si entendí, tu estas haciendo todo el proceso de pedir datos y comprobarlos en la misma pagina ¿correcto?, de ser así, lo del header no funcionaria, yo lo pondria en dos páginas
1.- index.php
Código PHP:
<form action='valida.php' method='post'>
<!-- codigo del formulario-->
<?php
if(!empty$_GET[x]){echo 'usuario o contraseña incorrecto';}
?>
</form>
2.- valida.php
Código PHP:
session_star();
$link=@mysql_connect("localhost","root","pass") or die('Error->'.mysql_error());;
@mysql_select_db("DB",$link) or die('Error->' .mysql_error());
$result=@mysql_query('aqui la consulta',$link) or die('Error->'.mysql_error());
if(mysql_num_rows($result)>0){
//existe el usuario
$_SESSION['autorizado']='si';
header ('LOCATION siguiente_pagina.php');
}
else{
//no existe el usuario
session_destroy();
header ('LOCATION index.php?x=1');
}
poner todo el código en la misma página, es mas complejo ya que no podrás utilizar el header, para mi, lo mejor es dividr.
espero que te sirva o te de una idea y si aun quieres usarlo en la misma página dimelo y con gusto te ayudaré a resolverlo.
suerte y saludos.