Que tal, espero me puedan apoyar.
Les comento un issue en un pequeño sistema que estoy desarrollando, verificar codigos de barras y compararlos con un registro de una base de datos, nada del otro mundo, la cuestión es la siguiente.
Tengo un archivo index.php con este codigo
Código PHP:
<title>Sistema</title>
<link rel="shortcut icon" href="images/favicon.ico" />
<frameset cols="0,*">
<frame name="oculto" src="oculto.html" noresize>
<frame name="MMS" src="index2.php">
</frameset>
<noframes>
Te recomendamos utilizar Internet Explorer para visualizar esta página correctamente.
</noframes>
Al abrir el index nos manda al index2.php que tiene esto:
Código PHP:
<html>
<!-- Created on: 6/14/2011 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Sistema</title>
<script type="text/javascript">
var pagina = 'control.php';
var segundos = 1;
function redireccion() {
document.location.href=pagina;
}
setTimeout("redireccion()",segundos);
</script>
</head>
<body>
</body>
</html>
Y este a su vez reedirecciona al archivo control.php que hace lo siguiente, por medio de este javascript
:
Código PHP:
<script language="javascript">
var gsUserName, gsComputerName, gsUserDomain;
gsUserName = Get_UserName();
gsComputerName = Get_ComputerName();
gsUserDomain = Get_UserDomain();
function Get_ComputerName(){
var WshNetwork = new ActiveXObject ("WScript.Network");
return (WshNetwork.ComputerName);
}
function Get_UserName(){
var WshNetwork = new ActiveXObject ("WScript.Network");
return (WshNetwork.UserName);
}
function Get_UserDomain(){
var WshNetwork = new ActiveXObject ("WScript.Network");
return (WshNetwork.UserDomain);
}
</script>
Toma el nombre del equipo local, usuario local de windows y dominio (como sistema de autenticación para saber quien esta en el sistema)
Y así es como toma los datos:
Código PHP:
if (isset($_GET['UserName']) AND isset($_GET['ComputerName']) AND isset($_GET['UserDomain'])) {
} else {
echo "<script language='javascript'>\n";
echo " location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
. "&UserName=\" + gsUserName + \"&ComputerName=\" + gsComputerName + \"&UserDomain=\" + gsUserDomain;\n";
echo "</script>\n";
exit();
}
El problema es el siguiente: algunos equipos/usuarios, al entrar al index que los manda al index2 y este los reedirecciona a control, el codigo de arriba no lee el usuario y no muestra nada a menos que entren directamente a control.php, sólo pasa en algunos equipos, no en todos.
Saludos.