Te faltó colocarla sentencia exit; después del header
Código PHP:
<?php
if (($compra)=="si"){ // ya está abierta la sesion por lo tanto $compra="si"
header ("Location: detalle2.php"); // se supone que deberia enviarme automaticamente a detalle2.php
exit;
// pero no lo hace me da un error
// echo "<a href=\"detalle2.php\">ir a pagina B</a>"; // al usar esto es poco estetico
}
else // pide ingresar datos, pero el cliente ya paso por aki previamente
{
?>
<FORM ACTION="sesion.php" method="post">
<input type="text" name=var_usu value="<? echo $var_usu?>" size="20"><br>
<input type="text" name=var_con value="<? echo $var_con?>" size="20"><br>
<input type="submit" name="Submit2" value=" abrir sesion ">
</form>
Un beso