Foros del Web » Programando para Internet » Javascript »

Paso de Variables - Perdidas =S en el IE

Estas en el tema de Paso de Variables - Perdidas =S en el IE en el foro de Javascript en Foros del Web. Hola Buenas las Tengan otra vez tengo duda como unos codigos, hace unas horas vi unos scrps para que saliera una ventanita y esciger la ...
  #1 (permalink)  
Antiguo 25/04/2009, 20:08
Avatar de ilydiego  
Fecha de Ingreso: febrero-2009
Ubicación: en mi Casa
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 0
Paso de Variables - Perdidas =S en el IE

Hola Buenas las Tengan otra vez tengo duda como unos codigos, hace unas horas vi unos scrps para que saliera una ventanita y esciger la fecha y la fecha apeciera en el text, bueno hasta ahi todo iba de maravilla hasta que quize jalar el contenido de estos text, me marca que no tienen, nada bueno les enseño codigo
Este es el Sript
Código PHP:
<script language="JavaScript"
   var 
nInput
   function 
calen(n){ 
    var 
oWnd
    
nInput n
    
oWnd open("calendario.html""fechas""location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no,width=180,height=200"); 
    
oWnd.focus(); 
   } 
   function 
fillDateField(){ 
    
with (document.frm
     if (
nInput == 1) {
      
fecha1.value dateResult.value;
      
fee1.value dataResult.value;}
      else{
      
fecha2.value dateResult.value;
      
fee2.value dateResult.value;}
   } 
</SCRIPT>

<form name="frm" method="post" action="newswa.php">

  <tr>
    <td>Fecha de Inicio:</td>
    <td><input name="fecha1" type="text" id="fecha1" size="11" maxlength="11" /> 
    <input type="button" value="..." onclick="calen(1)"> 
</td>
    <td>Fecha de Terminacion:</td>
    <td><input name="fecha2" type="text" id="fecha2" size="11" maxlength="11" /> 
    <input type="button" value="..." onclick="calen(2)"> 
</td>
  </tr> 
aja, hasta ahi todo bien bien hasta bonito diria yo pero ajaaaaaaaaaa

Código PHP:
<?
$nom1 
$HTTP_POST_VARS['nom'];
$des1 $HTTP_POST_VARS['des'];
$tli1 $HTTP_POST_VARS['tli'];
$cl1 $HTTP_POST_VARS['cl'];
$fe1 $HTTP_POST_VARS['fecha1'];
$fe2 $HTTP_POST_VARS['fecha2'];
.....
y que es lo que pasa, bueno en el cuando lo hago en el IE NOOOOO SALE
y cuando lo hago en el MOZILLA SI SALEE

y lo peor de caso que mi sistema es para una empresa que no utilizan otra cosa que no sea IE
asi que ayuda porfiiiiiii
  #2 (permalink)  
Antiguo 25/04/2009, 21:12
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 8 meses
Puntos: 1485
Respuesta: Paso de Variables - Perdidas =S en el IE

primero, para que PHP pueda leer los valores estos tienen que ser enviado por el formulario. segun veo en el codigo, ni siquiera existe un boton submit. segundo, donde quieres que aprezca el contenido? en la nueva ventana o en la misma que contiene el formulario? si quieres mostrar el contenido en la nueva ventana tienes que asignarle el target del formulario con el mismo nombre de la ventana. el siguiente tema puede que le ayude
forosdelweb.com/f13/propiedades-ventana-con-submit-693118/

Última edición por zerokilled; 25/04/2009 a las 21:17
  #3 (permalink)  
Antiguo 25/04/2009, 23:09
Avatar de ilydiego  
Fecha de Ingreso: febrero-2009
Ubicación: en mi Casa
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Paso de Variables - Perdidas =S en el IE

jejeje, grx pero no me sirve tu info, si se lo del sudmit, pero esta hasta abajo, el caso es que todas mis variables pasan, menos las de las fecha, en el formulario aparece la fecha, das sudmit y no pasan esas variables y el mozilla si,
  #4 (permalink)  
Antiguo 25/04/2009, 23:34
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 8 meses
Puntos: 1485
Respuesta: Paso de Variables - Perdidas =S en el IE

necesitaria ver algo mas completo porque de acuerdo a tu codigo la funcion fillDateField rellena los campos de fechas pero en ningun momento se utiliza dicha funcion.
  #5 (permalink)  
Antiguo 25/04/2009, 23:59
Avatar de ilydiego  
Fecha de Ingreso: febrero-2009
Ubicación: en mi Casa
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 0
Pregunta Respuesta: Paso de Variables - Perdidas =S en el IE

ok Aki estan todos los codigos que tilizo para esto

uno newsw.php


Código HTML:
<html>
<body>
<font color="#3366FF">
<br /><br />
<center>
<strong> Nuevo Software </strong>
<br /><br /><br />
  <script language="JavaScript"> 
   var nInput; 
   function calen(n){ 
    var oWnd; 
    nInput = n; 
    oWnd = open("calendario.html", "fechas", "location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no,width=180,height=200"); 
    oWnd.focus(); 
   } 
   function fillDateField(){ 
    with (document.frm) 
     if (nInput == 1) {
      fecha1.value = dateResult.value;
	  fee1.value = dataResult.value;}
	  else{
	  fecha2.value = dateResult.value;
	  fee2.value = dateResult.value;}
   } 
   function habilita(){
	   if(document.frm.tli.value!="Freeware"){
    document.frm.cl.disabled = false;
    document.frm.ne.disabled = false;

   }
else{
    document.frm.cl.disabled = true;
    document.frm.fecha1.disabled = true;
    document.frm.fecha2.disabled = true;
    document.frm.ne.disabled = true;
   }
   }

function esInteger(e){
var charCode
if (navigator.appName == "Netscape"){
charCode = e.which
}
else{
charCode = e.keyCode} 
if (charCode < 48 || charCode > 57){
alert("Por favor teclee solo números en este campo!"); 
return false
}
else{
return true}
}
</script>
 <font color="#3366FF">
<form name="frm" method="post" action="newswa.php">
<table width="600" border="0">
  <tr>
    <td>Nombre:</td>
    <td><input name="nom" type="text" id="nom" /></td>
    <td>Descripcion:</td>
    <td><input name="des" type="text" id="des" /></td>
  </tr>
  <tr>
    <td>Tipo de Licencia:</td>
    <td><select name="tli" id="tli" onChange="habilita()">
    <option></option>
    <option value="Freeware")>Freeware</option>
    <option value="OEM")>OEM</option>
    <option value="COA">COA</option> 
    <option value="Volumen">Volumen</option>  
    <option value="Copia">Copia</option>  
    </select></td>
    <td>Clave de Licencia: </td>
    <td><input name="cl" type="text" id="cl"/></td>
  </tr>
  <tr>
    <td>Fecha de Inicio:</td>
    <td><input name="fecha1" type="text" id="fecha1" size="11" maxlength="11" /> 
    <input type="button" value="..." onClick="calen(1)"> 
</td>
    <td>Fecha de Terminacion:</td>
    <td><input name="fecha2" type="text" id="fecha2" size="11" maxlength="11" /> 
    <input type="button" value="..." onClick="calen(2)"> 
</td>
  </tr>
  <tr>
    <td>No. Equipos: </td>
    <td>
<label>
<input name="ne" type="text" id="ne" onKeyPress='return esInteger(event)' size="2" maxlength="2"/></label>
    </td>
    <td>Status:</td>
    <td>
    <select name="status" id="status">
    <option> </option>
    <option>Activo </option>
    <option>Baja </option> 
    </select>
	</td>
  </tr>
</table>
<br />Proveedor:
<select name="prov" size="1" id="prov">
    <option> </option>
	<?
    mysql_select_db($database_invent_con, $invent_con);
	$result = mysql_query ("SELECT * FROM proveedor");
	while ($row = mysql_fetch_array($result)){
		$nom = $row['nombre'];
		echo "<option>$nom</option>";
		}
		?>
        </select>
<br /> <input type="hidden" name="dateResult">
 <br />
<label>
<input name="agregar" type="submit" value="Guardar"/></label>
</form> </font>
</center>
</font>
</body>
</html> 

Cierto este manda a llamar a uno para el calendario que es este

Calendario.html
Código PHP:
 
  
<script language="JavaScript"

   var 
dFec = new Date(); 
   var 
aMonthNames = new Array( 
                          
"Enero""Febrero""Marzo""Abril""Mayo""Junio"
                          
"Julio""Agosto""Septiembre""Octubre""Noviembre""Diciembre"); 

   function 
firstOfMonth(dFec){ 
    var 
dRes = new Date(); 
    
dRes.setYear(dFec.getYear()); 
    
dRes.setMonth(dFec.getMonth()); 
    
dRes.setDate(1); 
    return 
dRes
   } 

   function 
lastDayOfMonth(dFec){ 
    var 
dRes = new Date(); 
    var 
nYear dFec.getYear(); 
    var 
nMonth dFec.getMonth() + 1
    if (
nMonth == 12){ 
     
nMonth 0
     
nYear++; 
    } 
    
dRes.setYear(nYear); 
    
dRes.setMonth(nMonth); 
    
dRes.setDate(1); 
    return new 
Date(dRes.valueOf() - (24 60 60 1000)); 
   } 

   function 
dayToWrite(nDay){ 
    var 
dToday = new Date(); 
    var 
bisThisMonth = ((dFec.getYear() == dToday.getYear()) && (dFec.getMonth() == dToday.getMonth())); 
    var 
sDay String(nDay); 
    
sDay = (nDay == dFec.getDate() && bisThisMonth"<b><font color='red'>" sDay "</font></b>"sDay); 
    return 
sDay
   } 

   function 
selectDay(nDay){ 
    var 
sRessDaysMonsYea
    
sDay "0" String(nDay); 
    
sDay sDay.substr(sDay.length 22); 
    
sMon "0" String(dFec.getMonth() + 1); 
    
sMon sMon.substr(sMon.length 22); 
    
sYea String(dFec.getFullYear()); 
    
sRes sDay "/" sMon "/" sYea
    
opener.document.forms[0].dateResult.value sRes
    
opener.fillDateField(); 
    
close(); 
   } 

   function 
showCalenContents(){ 
    var 
dFec0 firstOfMonth(dFec); 
    var 
nDay 1
    var 
nLastDay lastDayOfMonth(dFec).getDate(); 
    var 
sWeek ""
    var 
bEnd false
    var 
bWri false
    var 
nDOW0 dFec0.getDay(); 
    for (var 
0; !bEndj++){ 
     
sWeek "<tr>"
     for (var 
0; (7) && !bEndi++){ 
      
bWri bWri || (== nDOW0); 
      if (
bWri
       
sWeek += "<td align='right' style='cursor: hand' onclick='parent.selectDay(" String(nDay) + ")'>" dayToWrite(nDaybWri) + "</td>"
      else 
       
sWeek += "<td>&nbsp;</td>"
      if (
bWrinDay++; 
      
bEnd = (nDay nLastDay); 
     } 
     if (
bEnd)  
      for (var 
i7k++) 
       
sWeek sWeek "<td>&nbsp;&nbsp;</td>"
     
window.usefull.document.writeln(sWeek "</tr>"); 
    } 
   } 

   function 
backMonth(){ 
    var 
nMonth dFec.getMonth(); 
    var 
nYear dFec.getFullYear(); 
    if (--
nMonth == -1){ 
     
nMonth 11
     
nYear--; 
    } 
    
dFec.setMonth(nMonth); 
    
dFec.setYear(nYear); 
    
calendary(); 
   } 

   function 
forthMonth(){ 
    var 
nMonth dFec.getMonth(); 
    var 
nYear dFec.getFullYear(); 
    if (++
nMonth == 12){ 
     
nMonth 0
     
nYear++; 
    } 
    
dFec.setMonth(nMonth); 
    
dFec.setYear(nYear); 
    
calendary(); 
   } 

   function 
backYear(){ 
    var 
nYear dFec.getFullYear(); 
    
dFec.setYear(--nYear); 
    
calendary(); 
   } 

   function 
forthYear(){ 
    var 
nYear dFec.getFullYear(); 
    
dFec.setYear(++nYear); 
    
calendary(); 
   } 

   function 
showCalen(){ 
    
with (window.usefull.document){ 
     
write("<table border='0' width='100%' height='100%'><tr><td><table border='0' width='100%'><tr>"); 
     
write("<td width='10'><input type='button' name='bckYear' value='<<' onclick='parent.backYear()'></td>"); 
     
write("<td width='10'><input type='button' name='bckMonth' value='<' onclick='parent.backMonth()'></td>"); 
     
write("<td align='center'><b>" aMonthNames[dFec.getMonth()].substr(03) + ", " String(dFec.getFullYear()) + "</b></td>"); 
     
write("<td width='10'><input type='button' name='ForMonth' value='>' onclick='parent.forthMonth()'></td>"); 
     
write("<td width='10'><input type='button' name='ForYear' value='>>' onclick='parent.forthYear()'></td>"); 
     
write("</tr></table></tr><tr><td>"); 
     
write("<center><table border='0'>"); 
     
write("<tr><td><b>D</b></td><td><b>L</b></td><td><b>M</b></td><td><b>M</b></td><td><b>J</b></td><td><b>V</b></td><td><b>S</b></td></tr>"); 
     
showCalenContents(); 
     
write("</table></center></td></tr></table>"); 
    } 
   } 

   function 
calendary(){ 
    
with (window.usefull.document){ 
     
open(); 
     
writeln("<html><head></head><body>"); 
     
writeln("<form name='frm'>"); 
     
showCalen(); 
     
writeln("</form></body></html>"); 
     
close(); 
    } 
   } 

  
</script> 
<html>
 <head> 
 <frameset rows="100%,*" border="0" frameborder="no" framespacing="0" onLoad="calendary()"> 
  <frame name="usefull" src="DummyPg.html" frameborder="no" marginheight="0" marginwidth="0" scrolling="no"> 
  <frame name="useless" src="DummyPg.html" frameborder="no" marginheight="0" marginwidth="0" scrolling="no"> 
 </frameset><noframes></noframes> 
</head>
</html> 
  #6 (permalink)  
Antiguo 26/04/2009, 00:03
Avatar de ilydiego  
Fecha de Ingreso: febrero-2009
Ubicación: en mi Casa
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Paso de Variables - Perdidas =S en el IE

y por ultimo mando todas mis variables
a newswa.php
Código PHP:

<?
$nom1 
$HTTP_POST_VARS['nom'];
$des1 $HTTP_POST_VARS['des'];
$tli1 $HTTP_POST_VARS['tli'];
$cl1 $HTTP_POST_VARS['cl'];
$fe1 $HTTP_POST_VARS['fecha1'];
$fe2 $HTTP_POST_VARS['fecha2'];
$ne1 $HTTP_POST_VARS['ne'];
$st1 $HTTP_POST_VARS['status'];
$pr1 $HTTP_POST_VARS['prov'];
echo 
"nombre".$nom1."des".$des1."clave".$cl1s;
echo 
$fe1."y ".$fe2;
echo 
$tli1;
if(empty(
$nom1)|| empty($des1) || empty($tli1) || empty($st1)|| empty($pr1)){
    echo
"<center>";
echo 
"Debe de Proporcionar lo Datos Completos";
echo 
"</center>";
}
else{
    if(
$tli1=="Freeware"){
        
$cl1 "N/A";
        
$ne1 0;
    }
    if(empty(
$fe1)){
        
$fe11 "0000-00-00";
        
$fe22 "0000-00-00";
}
    else{
        list(
$d,$m,$a) = explode("/",$fe1);
    
$fe11 $a."-".$m."-".$d; echo $fe11;
    list(
$d1,$m1,$a1) = explode("/",$fe2);
    
$fe22 $a1."-".$m1."-".$d1; echo $fe22;
    }
    echo 
$ne1;
    
mysql_select_db($database_invent_con$invent_con);
    
$result mysql_query("SELECT * FROM proveedor WHERE nombre='$pr1'");
    
$row mysql_fetch_array($result);
    
$id_prov1 $row['id_prov'];
    
$insertar "INSERT INTO software (nombre, des, licencia, lic_cla, nli, dispo, finicio, ffin, status, id_prov) VALUES ('$nom1', '$des1', '$tli1', '$cl1', '$ne1', '$ne1', '$fe11', '$fe22', '$st1', '$id_prov1')";
    
mysql_query ($insertar,$invent_con) or die (mysql_error());
    
$ide mysql_insert_id();
    if(empty(
$ide)){
             echo 
"no se agrego nada =()";
             echo 
"no se agrego nada =()";
             }
else{
    echo
"<center>";
    echo
"<br>";    echo"<br>";
    echo 
"Nombre: ".$nom1;
        echo
"<br>";    echo"<br>";
    echo 
"Descripcion: ".$des1;    
        echo
"<br>";    echo"<br>";
    echo 
"Tipo de Licencia: ".$tli1;    
        echo
"<br>";    echo"<br>";
        echo 
"Clave de Licencia: ".$cl1;    
        echo
"<br>";    echo"<br>";        
        echo 
"Fecha de Inico: ".$fe1;    
        echo
"<br>";    echo"<br>";
        echo 
"Fecha Fin: ".$fe2;    
        echo
"<br>";    echo"<br>";
        echo 
"No. de Equipos: ".$ne1;    
        echo
"<br>";    echo"<br>";
        echo 
"Status: ".$st1;    
        echo
"<br>";    echo"<br>";
        echo 
"Proveedor: ".$pr1;    
        echo
"<br>";    echo"<br>";    
    echo 
"Numero de Id de Hardware:".$ide;
        echo
"<br>";    echo"<br>";
    echo 
"<strong>EL Software se ha Agregado.</strong>";
    echo 
"</center>";
    }
}
?>

ok ahora si esta completo
  #7 (permalink)  
Antiguo 26/04/2009, 00:58
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 8 meses
Puntos: 1485
Respuesta: Paso de Variables - Perdidas =S en el IE

no se que errores estaras recibiendo... en mi caso hice la prueba en local sin PHP ni servidor HTTP. cuando abro el calendario, msie reporta un error de acceso denegado. pude corregirlo removiendo la fuente (atributo src) del frame usefull. asumo que quizas en tu caso tendras el archivo DummyPg.html. luego me muestra el calendario, selecciono una fecha y rellena el campo. por ultimo envio el formulario y compruebo si se enviaron los datos, especificamente las fechas. segun pude analizar los datos se envian correctamente en msie. por supuesto, para comprobarlo tuve que cambiar el metodo de envio, POST a GET.

no sabria indicarte exactamente donde esta el problema pero opino que no es al enviar los datos, sino que quizas PHP esta interpretando el valor de forma incorrecta. te sugiero que intentes lo mismo que hice a ver que resultado se te presenta. debo citar que mi conocimiento en PHP es escaso de modo que no sabria ayudarte en el aspecto de PHP.

Última edición por zerokilled; 26/04/2009 a las 01:08
  #8 (permalink)  
Antiguo 26/04/2009, 13:46
Avatar de ilydiego  
Fecha de Ingreso: febrero-2009
Ubicación: en mi Casa
Mensajes: 71
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Paso de Variables - Perdidas =S en el IE

Ya hise lo que mencionas, pero sigue sin funcionar, ya quiero llorar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:43.