| |||
En PHP no puedes definir una variable "global" para usarlo entre script .. Cuando tu ejecutas un script, toda variable y datos que generó el script "muere". Ahora, en PHP tienes lo que denominan "Sesiones" (www.php.net/session) para guardar N variables en tu servidor y que queden asociadas a una sesión inicia .. es decir desde que la creas en algún instante hasta que expira o la "mates" manualmente. También puedes usar "cookies" .. en este caso tus variables quedarían en el "cliente". Y además de todo esto .. puedes inventarte tus própios médios para simular una "sesión" guardando tus datos en una BD .. o en un archivo de texto plano que guardes/leas sus datos de el. Un saludo, |
| |||
En sintesis mi problema es esto Tengo lo siguiente Código PHP: Tome el valor que me arroja <?php $codcuenta = $lista; ?> Si se puede ????? Gracias.... |
| |||
No entendí tu proceder ... pero en princio la cosa cambia (nada que ver con tu pregunta original). Aquí se trata de que PHP "gener" ese código "javascript" dinámicamente: Código PHP: |
| |||
No funciona .... .... no funciona .. seria asi: Código PHP: Lo que pasa es lo siguiente: necesito que el valor <?php $codcuenta = $lista; ?> que contiene el $codcuenta en PHP lo tome de alguna forma la funcion function envia() que esta en JavaScript atraves de opener.document.forma.codcuenta.value = codcuenta; Como es ??? no enteneder ?? |
| |||
Creo que el problema que tienes es con Javascript principalmente .. Indica el código completo de tu página "padre" (para ver tus formularios -completos-, javascript que uses y demás) y de tu código que se abre en tu ventana .. Un saludo, |
| |||
Como paso un valor de php a javascrip Hola tengo el siguiente codigo : Código PHP: Tengo un valor en PHP que se encuetra en una variable ="<? echo $lista; ?> se desea que el valor que tiene se pase a una variable que esta en javascrip var codcuenta = (Aqui pasa el valor). Dicho valor que toma la varible lo envio atraves de un btoon que ejecuta una funcion llamada function envia() que contine el codico opener.document.forma.codcuenta.value = codcuenta; .... como lo hago .... |
| |||
Lo que no entiendo es por qué quieres almacenar ese valor en una variable javascript : var codcuenta = <? echo $codcuenta; ?>; si en el formulario ya estás cargando ese valor: <input name="codcuenta" type="text" id="codcuenta" value="<? echo $lista; ?>" size="8" maxlength="8"> y para recuperar ese valor con javascript, usar el value del campo correspondiente del formulario: opener.document.forma.codcuenta.value |
| |||
Al enviar el formulario, ya estás enviando el valor que hay en $lista, porque lo has cargado en un campo del formulario: <input name="codcuenta" type="text" id="codcuenta" value="<? echo $lista; ?>" size="8" maxlength="8"> Solo tienes que recoger ese valor en la nueva ventana con $_POST['codcuenta'] (si el method del formulario lo definiste como 'post') |
| |||
Como lo hago.. El valor lo capturo de esta forma Código PHP: Y lo paso de esta forma: Código PHP: <? if (isset($_POST['seleccion'])){ // Generamos una lista de los ID's (campo value= ..) que tenemos en nuestro array. foreach ($_POST['seleccion'] as $lista){ ?> <input name="codcuenta" type="text" id="codcuenta" value="<? echo $lista; ?>" size="8" maxlength="8"> <?php $codcuenta = $lista; ?> <script language="JavaScript"> var codcuenta = $lista; function envia(){ opener.document.forma.codcuenta.value = codcuenta; } </script> <? }// fin foreach }else{ ?> <input name="codcuenta" type="text" id="codcuenta" value="<? echo $lista; ?>" size="8" maxlength="8"> <?php $codcuenta = $lista; ?> <script language="JavaScript"> var codcuenta = 5; function envia(){ opener.document.forma.codcuenta.value = codcuenta; } </script> <? }// fin del if ... Si asi no es entonces como ??? |
| |||
No entiendo muy bien lo que deseas, pero he hecho algo que tal vez te aclare las cosas. Parto desde un archivo html donde quieres conseguir el valor de $lista, llamado envio.html, el cual al realizar el envío ejecuta el archivo php llamado prueba1.php En este archivo obtengo el valor de lista dentro de un campo de texto, y con un botón lo envío a otro campo de texto de otro formulario. Dices que lo que quieres es enviarlo a otra ventana, pero eso sería fácil, cambiándolo por: nombreventana.document.form1.miCampoTexto.value Te dejo los dos archivos: envio.html Código HTML: <html> <head> <title>Envío de variable lista a archivo PHP</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form name="form1" method="post" action="prueba1.php"> <p> <input type="text" name="lista"> </p> <p> <input type="submit" name="Submit" value="Enviar"> </p> </form> </body> </html> Código HTML: <html> <head> <title>Obtención de variable por PHP y reenvio por JavaScript</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php $lista = $_POST["lista"]; ?> <script language="JavaScript" type="text/JavaScript"> function envia(){ var codcuenta = document.form1.codcuenta.value document.form2.textfield2.value = codcuenta } </script> <h2>Formulario de entrada:</h2> <form name="form1" method="post" action=""> <p> <input type="text" name="codcuenta" id="codcuenta" value="<?php echo $lista ?>"> </p> <p> <input type="button" name="Submit" value="Enviar" onClick="javascript: envia()"> </p> </form> <p> <h2>Campo de salida:</h2> <form name="form2" method="post" action=""> <input type="text" name="textfield2"> </form> </body> </html> |
| |||
Cita: Bueno .. si así lo crees .. por mi parte hasta aquí llegué. Intenta aclara tu situación (si no indicas el código completo que uses es complicado hacerse una idea de lo que pretendes hacer) y suerte.
Iniciado por higi Lo que me haces es confundir mas ... No te entendi. Aque te refieres ??? Un saludo, |
| |||
En detalle esto es lo que necesito Si tomas la pagina envio.html y cambias el boton submit por este tedaras cuenta lo que pasa... Código PHP: |
| |||
Mejor indica el código aquí para que cualquier persona te asesore .. Cada vez estás poniendo más "Trozos" de código .. esto hay que verlo en su contenxto ... Pero no sé si donde quieras pasar tu varible será a "prueba1.php" que abres en una ventana: Código PHP: |
| |||
Hay va ... La pagina donde va el formulario es: Código PHP: Código PHP: Última edición por Cluster; 23/09/2005 a las 14:21 |
| |||
Que pena a qui va la pagina pasarvalorcuentacod.php Código PHP: Última edición por Cluster; 23/09/2005 a las 14:20 |
| |||
Me podrías explicar que sentido tiene esto: Código PHP: No domino mucho de javascript .. pero si que sé que esto NO debes hacerlo: var codcuenta = 5; function envia(){ opener.document.forma.codcuenta.value = codcuenta; Tu vas a tomar lo que esté ingresado en ese campo vía javascript .. así que tendrás que hacerte referencia a el tipo document.formulario_nombre.codcuenta.value o algo así y por ningún concepto "fijar var=algo" .. no tiene sentido. En tu primer script ("forma", podrías ponerle nombres para aclararnos) no debes hacer: Código PHP: Insisto que tu problema principal está con javascript. Un saludo, |
| |||
Explicacion ... Uso el Código PHP: Tengo un valor en $lista dentro de mi ventana pasarvalorcuentacod.php este lo debe pasar a otra ventana donde tengo mi formulario ingresarcontabcegreso.php... El script es lo unico que me ha permitido pasar un dato sin problema. Cuando uso funciones PHP este valor se me carga dentro de la misma ventana de mi consulta... mejor dicho es como si actualizara dicha ventana y cargara dentro de ella todo el pantallazo de mi formulario ... todo es todo y la ventana donde tengo el formulario no se actualiza ni toma valores ... Entendiste ahora si ... |
| |||
No me refería al hecho de usar esa función .. sino a que si te fijas en tu código .. la estás generando muchas veces, con una vez que lo definas al principio de tu código HTML (mejor en tu <head>) sobraría. Insisto que deberías resolver el problema que tienes con javascript (no sé si has probado lo que te he mencionado en mi anterior mensaje). Ahora, el problema lo vas a tener si usas lo que te propongo en que te tomará sólo el último valor generado .. Para eso vía javascript puedes hacer referencia a elmentos por ID u otras técnicas, realmente ese tema ya se me escapa mucho .. es puro Javascript. Te hago una sugerencia .. olvidate de PHP .. toma unos valores fijos y simula el funcionamiento en HTML/javascript estático .. para ello te puedes ayudar tomando el HTML/javascript que generan tus scripts (insisto: ver código fuente en tu navegador). Un saludo, |
| |||
Oye la verdad no te entendi Oye la verdad no te entendi... es pasar un valor de PHP a javascrip ... Cuando uso el ejemplo con PHP este se me carga en la misma ventana. osea la ventana donde consulto se carga con los datos de donde deseo enviarlo ... todo todo el formulario. .... No se que pasa ... |
| |||
Bueno .. tu ves así de simple el tema "de PHP a javascript" pero es que ese no ees tu caso .. Tu abres ventanas . . y de lo que obtienes en esa ventana se lo piensas pasar a tu ventana padre (la que abristes) .. Y si no es así lo que pretendes hacer .. por favor explica que deseas hacer .. Otra cosa sería que generases link's que abran tus ventanas y ahí le pasas tu valor ¿Se puede ver tu código funcionando (por lo menos para aclarar que es lo que haces?) Un saludo, |
| |||
Formulario ... ingresarcontabcegreso.php Código PHP: |
| |||
La pagina donde consulto pasarvalorcuentacod.php Código PHP: |
| |||
La base de datos -- phpMyAdmin SQL Dump -- version 2.6.3-rc1 -- http://www.phpmyadmin.net -- -- Servidor: localhost -- Tiempo de generación: 16-09-2005 a las 15:21:47 -- Versión del servidor: 4.0.24 -- Versión de PHP: 5.0.3 -- -- Base de datos: `sigdoc` -- CREATE DATABASE `sigdoc`; USE sigdoc; -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `admin` -- CREATE TABLE `admin` ( `loginadmin` varchar(15) NOT NULL default '', `passadmin` varchar(10) NOT NULL default '', PRIMARY KEY (`loginadmin`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `admin` -- INSERT INTO `admin` VALUES ('sistemas', 'jrlohc'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `beneficiario` -- CREATE TABLE `beneficiario` ( `nit` varchar(11) NOT NULL default '', `descripbenef` varchar(40) NOT NULL default '', `tipobenef` varchar(10) default NULL, `direccion` varchar(25) default NULL, `ciudad` varchar(12) default NULL, `telefono` varchar(15) default NULL, PRIMARY KEY (`nit`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `beneficiario` -- INSERT INTO `beneficiario` VALUES ('94495359', 'Oscar Higinio', 'EMPLEADO', 'Cra 26j No 124-46', 'Cali', '4039751'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `contabilizacion` -- CREATE TABLE `contabilizacion` ( `idcont` int(11) NOT NULL auto_increment, `numdoc` varchar(5) NOT NULL default '', `codcuenta` varchar(8) NOT NULL default '', `nitcontab` varchar(11) NOT NULL default '', `indcucontab` char(2) NOT NULL default '', `debito` double default NULL, `credito` double default NULL, `detacontab` text, `vrbase` double default NULL, `naturaleza` char(1) default NULL, PRIMARY KEY (`idcont`), KEY `numdoc` (`numdoc`), KEY `codcuenta` (`codcuenta`) ) TYPE=InnoDB AUTO_INCREMENT=1 ; -- -- Volcar la base de datos para la tabla `contabilizacion` -- -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `cu` -- CREATE TABLE `cu` ( `indcu` char(2) NOT NULL default '', `descripcu` varchar(15) NOT NULL default '', `direccion` varchar(25) default NULL, `ciudad` varchar(12) default NULL, `departamento` varchar(12) default NULL, `pais` varchar(12) default NULL, `telefono` varchar(15) default NULL, `fax` varchar(15) default NULL, PRIMARY KEY (`indcu`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `cu` -- INSERT INTO `cu` VALUES ('01', 'Planta Venecia', 'Calle 13 No 5-01', 'Cali', 'Valle', 'Colombia', '8833669', '8873669'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `cuentas` -- CREATE TABLE `cuentas` ( `codcuenta` varchar(8) NOT NULL default '', `nomcuenta` varchar(25) NOT NULL default '', `tasa` int(2) NOT NULL default '0', `destino` varchar(8) NOT NULL default '', PRIMARY KEY (`codcuenta`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `cuentas` -- INSERT INTO `cuentas` VALUES ('10', 'Caja', 10, '01'); INSERT INTO `cuentas` VALUES ('11', 'Bancos', 5, '01'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `documento` -- CREATE TABLE `documento` ( `numdoc` varchar(5) NOT NULL default '', `tipo` char(2) NOT NULL default '', `planilla` char(2) NOT NULL default '', `anolapso` char(2) default NULL, `meslapso` char(2) default NULL, `nit` varchar(11) NOT NULL default '', `indcu` char(2) NOT NULL default '', `anodoc` char(2) default NULL, `mesdoc` char(2) default NULL, `diadoc` char(2) default NULL, `vrdoc` double default NULL, `detadoc` text, `descripuser` varchar(15) NOT NULL default '', PRIMARY KEY (`numdoc`), KEY `indcu` (`indcu`), KEY `nit` (`nit`), KEY `tipo` (`tipo`,`planilla`), KEY `descripuser` (`descripuser`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `documento` -- -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `tipodocum` -- CREATE TABLE `tipodocum` ( `cpte` char(2) NOT NULL default '', `tipo` char(2) NOT NULL default '', `planilla` char(2) NOT NULL default '', `detatipo` varchar(25) NOT NULL default '', PRIMARY KEY (`tipo`,`planilla`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `tipodocum` -- INSERT INTO `tipodocum` VALUES ('04', 'CP', '01', 'COMPROBANTE DE EGRESO'); INSERT INTO `tipodocum` VALUES ('04', 'CP', '02', 'COMPROBANTE DE EGRESO'); INSERT INTO `tipodocum` VALUES ('04', 'CP', '03', 'COMPROBANTE DE EGRESO'); INSERT INTO `tipodocum` VALUES ('04', 'CP', '04', 'COMPROBANTE DE EGRESO'); INSERT INTO `tipodocum` VALUES ('04', 'CP', '05', 'COMPROBANTE DE EGRESO'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '06', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '07', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '08', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '09', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '10', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'LR', '11', 'LEGALIZACION'); INSERT INTO `tipodocum` VALUES ('04', 'SR', '12', 'CAJA MENOR'); INSERT INTO `tipodocum` VALUES ('04', 'SR', '13', 'CAJA MENOR'); INSERT INTO `tipodocum` VALUES ('04', 'SR', '14', 'CAJA MENOR'); INSERT INTO `tipodocum` VALUES ('04', 'SR', '15', 'CAJA MENOR'); INSERT INTO `tipodocum` VALUES ('04', 'SR', '16', 'CAJA MENOR'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `usuario` -- CREATE TABLE `usuario` ( `descripuser` varchar(15) NOT NULL default '', `empresa` char(2) NOT NULL default '', `passuser` varchar(10) NOT NULL default '', `banco` varchar(10) NOT NULL default '', PRIMARY KEY (`descripuser`) ) TYPE=InnoDB; -- -- Volcar la base de datos para la tabla `usuario` -- INSERT INTO `usuario` VALUES ('Oficina central', 'II', 'ind.inte', 'Bancafe'); -- -- Filtros para las tablas descargadas (dump) -- -- -- Filtros para la tabla `contabilizacion` -- ALTER TABLE `contabilizacion` ADD CONSTRAINT `contabilizacion_ibfk_1` FOREIGN KEY (`numdoc`) REFERENCES `documento` (`numdoc`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `contabilizacion_ibfk_2` FOREIGN KEY (`codcuenta`) REFERENCES `cuentas` (`codcuenta`) ON DELETE CASCADE ON UPDATE CASCADE; -- -- Filtros para la tabla `documento` -- ALTER TABLE `documento` ADD CONSTRAINT `documento_ibfk_1` FOREIGN KEY (`indcu`) REFERENCES `cu` (`indcu`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `documento_ibfk_2` FOREIGN KEY (`nit`) REFERENCES `beneficiario` (`nit`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `documento_ibfk_3` FOREIGN KEY (`tipo`, `planilla`) REFERENCES `tipodocum` (`tipo`, `planilla`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `documento_ibfk_4` FOREIGN KEY (`descripuser`) REFERENCES `usuario` (`descripuser`) ON DELETE CASCADE ON UPDATE CASCADE; |
| ||||
Cita: Concuerdo con Cluster en esto.... creo que no estás explicando muy bien tu problema... y un ejemplo sería genial.
Iniciado por Cluster ¿Se puede ver tu código funcionando (por lo menos para aclarar que es lo que haces?) ¿Hay alguna web que ya haga lo que quieres hacer? Saludos |