Las variables de sesión no quedan disponibles hasta la próxima petición (recarga, link que salte a otro script .. etc) al servidor .. por ende, NUNCA se debería hacer la asiganción de variables que hacían . .en su defecto .. si a este script le llegan por $_POST ciertas variables y en el mismo flujo del script se ha de crear una variable de sesión + usar esa variable .. usala directamente:
Código PHP:
<?
session_start();
$_SESSION['Xl']=$_POST['txtl']; //txtl de acceso.php
$_SESSION['Xp']=$_POST['txtp']; //txtp de acceso.php
include('conexion.php');
$link = Conectarse();
$Rlogin = mysql_query("select * from acceso where login='".$_POST['Xl']."' and psw='".$_POST['Xp']."'",$link);
$FilaLog = mysql_fetch_array($Rlogin);
$Items = mysql_affected_rows($link);
if ($Items == 0)
{
Header("Location: acceso.php");
exit;
}
?>
<html>
<body>
<form action="transdatos.php">
.........
</form>
</body>
</html>
Por otra parte .. despues de un redireccionamiento tipo header("Location ...") .. la idea de usarlo es terminar la ejecución de script en ese punto y mandar al "navegador" (cliente) que cambie la página que está viendo por la que se le indica. Por ende .. hay que terminar expresamente la ejecución del script (con exit), sino, .. el script sigue su curso y seguirá ejecutandose lo que venga a continuación.
Cita: ahora esta pagina transdatos.php me guarda en $txtl y $txtp perfectamente pero cuando ejecuta lo de rojo: header("Location: manifprin.php"); no lo hace pues se pasa a acceso.php es como que si no recibiera esos datos.
Pero .. cual es el código completo que usas?. Mencionas un tal "acceso.php" que no se vé de donde sale. Haces otro redireccionamiento? .. Ten presente lo del "exit" que mencioné .. usalo en todo header("Location ...") a continuación.
Un saludo,