Foros del Web » Programando para Internet » PHP »

acceso a variables desde un frame a otro frame

Estas en el tema de acceso a variables desde un frame a otro frame en el foro de PHP en Foros del Web. Espero que me puedan ayudar.mi problema es el siguiente: Tengo 2 frames:datos2 y tabla1_2.He obtenido valores a variables mediante un formulario en datos2 y quisiera ...
  #1 (permalink)  
Antiguo 27/03/2007, 08:05
 
Fecha de Ingreso: octubre-2006
Mensajes: 79
Antigüedad: 17 años, 6 meses
Puntos: 0
acceso a variables desde un frame a otro frame

Espero que me puedan ayudar.mi problema es el siguiente: Tengo 2 frames:datos2 y tabla1_2.He obtenido valores a variables mediante un formulario en datos2 y quisiera enviar los valores al frame tabla1_2.Hago click en el boton del formulario del primer frame y no me envia ningun valor.La variable register_globals ya esta en ON.GRACIAS



index.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Documento sin t&iacute;tulo</title>
</head>

<frameset rows="190,*" cols="*" framespacing="0" frameborder="NO" border="0">
<frame src="datos2.php" name="datos2" scrolling="auto" noresize >
<frame src="tabla1_2.php" name="tabla1_2">

</frameset><noframes></noframes>
<noframes>
<body>

</body>
</html>



datos2.php

<html>
<head>
<title>DATOS</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<body>

<form name="form1" method="post" action="tabla1_2.php" target="tabla1_2">

<table border="0" align="center">
<tr align="center" valign="middle">
<td >

<div align="center">
<table border="1" align="center">
<tr>
<td colspan="2" align="center"><label><strong>RENDICION</strong></label>
<strong></strong></td>
</tr>
<tr>
<td align="left"><label>Fondo:
<input type="text" name="txtFondo">
</label></td>
<td rowspan="2"><input type="button" name="btnOK" id="btnOK" value="OK">
</td>
</tr>
<tr>
<td align="left"><label>Rendici&oacute;n:
<input type="text" name="txtRendicion">
</label></td>
</tr>
<tr>
<td height="50" align="left"><label>Referencia:
<input type="text" name="txtReferencia">
</label></td>
</tr>
</table>
</div></td>
<td ><div align="center">
<table border="1">
<tr>
<td align="center"><label><strong>COMPROBANTE DE CAJA</strong></label></td>
</tr>
<tr>
<td align="left"><label><strong><br>
</strong></label>
<p>
<label>Fecha:
<input name="txtFechaCC" type="text" id="txtFechaCC">
</label>
</p></td>
</tr>
<tr>
<td align="left"><label>N&uacute;mero:
<input name="txtNumeroCC" type="text" id="txtNumeroCC">
</label>
<label></label></td>
</tr>
<tr>
<td align="left">&nbsp;</td>
</tr>
</table>
</div>
<label></label>

<p align="center">
<label></label></p> </td>
</tr>
</table>
</form>
</body>
</html>


tabla1_2.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<?
if (isset($_REQUEST["btnOK"])){
echo "BOTON";
extract($_REQUEST);//extraigo todos los tx a variables locales
$cid=odbc_connect("oracle3","CAJAWEB","123456");
if (!$cid)
{
exit("Connection Failed: " . $cid);
}
$sql="Select * from RENGLON where FON_COD='".$txtFondo."' AND REN_NRO='".$txtRendicion."'";
$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec()<br>$sql"));
echo "entro al isset";
?>

<table border="1" bordercolor="#666666">
<tr bgcolor="#FFFFFF">
<td height="17" colspan="9">
<div align="center"><strong>Tabla generada mediante un While</strong></div></td>
</tr>
<tr>
<td><div align="center"><strong>Tipo de Comprobante</strong></div></td>
<td><div align="center"><strong>Número de Comprobante</strong></div></td>
<td><div align="center"><strong>Serie de Comprobante</strong></div></td>
<td><div align="center"><strong>RUC</strong></div></td>
<td><div align="center"><strong>Fecha</strong></div></td>
<td><div align="center"><strong>Importe</strong></div></td>
<td><div align="center"><strong>Impuesto</strong></div></td>
<td><div align="center"><strong>Total</strong></div></td>
</tr>
<?
while(odbc_fetch_row($result)){
?>
<tr>
<td><? print odbc_result($result,"DOC_TIP"); ?></td>
<td><? print odbc_result($result,"FAC_NRO"); ?></td>
<td><? print odbc_result($result,"FAC_SER"); ?></td>
<td><? print odbc_result($result,"PRO_RUC"); ?></td>
<td><? print substr(odbc_result($result,"FAC_FEC"),0,10) ?></td>
<td><? print odbc_result($result,"IMPORTE"); ?></td>
<td><? print odbc_result($result,"IMPUEST"); ?></td>
</tr>


<?
}
?>
</table>
<?
}
?>


</body>
</html>
  #2 (permalink)  
Antiguo 27/03/2007, 08:34
 
Fecha de Ingreso: agosto-2006
Mensajes: 179
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: acceso a variables desde un frame a otro frame

Los formularios tienen una propiedad que se llama method, la cual puede ser GET y POST esta variable es la que debes extraer, es decir si tu formulario es POST entonces colocas extract($_POST); de lo contrario si tu formulario es GET entonces colocas extract($_GET);

Quedaria algo asi:

Nota: El formulario ademas tiene un target el cual debe apuntar al frame destino, es decir al frame tabla1_2.

Ejemplo para method=GET

tabla1_2.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<?
if (isset($_GET["btnOK"])){
echo "BOTON";
extract($_GET);//extraigo todos los tx a variables locales
$cid=odbc_connect("oracle3","CAJAWEB","123456");
if (!$cid)
{
exit("Connection Failed: " . $cid);
}
$sql="Select * from RENGLON where FON_COD='".$txtFondo."' AND REN_NRO='".$txtRendicion."'";
$result=odbc_exec($cid,$sql)or die(exit("Error en odbc_exec()<br>$sql"));
echo "entro al isset";
?>

<table border="1" bordercolor="#666666">
<tr bgcolor="#FFFFFF">
<td height="17" colspan="9">
<div align="center"><strong>Tabla generada mediante un While</strong></div></td>
</tr>
<tr>
<td><div align="center"><strong>Tipo de Comprobante</strong></div></td>
<td><div align="center"><strong>Número de Comprobante</strong></div></td>
<td><div align="center"><strong>Serie de Comprobante</strong></div></td>
<td><div align="center"><strong>RUC</strong></div></td>
<td><div align="center"><strong>Fecha</strong></div></td>
<td><div align="center"><strong>Importe</strong></div></td>
<td><div align="center"><strong>Impuesto</strong></div></td>
<td><div align="center"><strong>Total</strong></div></td>
</tr>
<?
while(odbc_fetch_row($result)){
?>
<tr>
<td><? print odbc_result($result,"DOC_TIP"); ?></td>
<td><? print odbc_result($result,"FAC_NRO"); ?></td>
<td><? print odbc_result($result,"FAC_SER"); ?></td>
<td><? print odbc_result($result,"PRO_RUC"); ?></td>
<td><? print substr(odbc_result($result,"FAC_FEC"),0,10) ?></td>
<td><? print odbc_result($result,"IMPORTE"); ?></td>
<td><? print odbc_result($result,"IMPUEST"); ?></td>
</tr>


<?
}
?>
</table>
<?
}
?>


</body>
</html>

Espero esto te sirva de ayuda.

Nos vemos...

NOTA: Ten en cuenta que tienes dos huecos en tu seguridad.

- Primero tener register_globals=ON;
- Segundo extraer todas las variables de un array como $_REQUEST, $_POST,$_GET,$_ENV etc. trate de no hacer esto. Solo es un consejo.

Última edición por rusinho; 27/03/2007 a las 08:40 Razón: Aclaración
  #3 (permalink)  
Antiguo 27/03/2007, 09:39
 
Fecha de Ingreso: octubre-2006
Mensajes: 79
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: acceso a variables desde un frame a otro frame

MUCHAS GRACIAS MAN.EL ERROR ESTABA QUE EL BOTON DE MI FORMULARIO ESTABA COMO TIPO:button y no como submit.GRACIAS......
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 14:41.