Foros del Web » Programando para Internet » PHP »

No me ejecuta el comando php

Estas en el tema de No me ejecuta el comando php en el foro de PHP en Foros del Web. Cordial saludo. Tengo la siguiente duda: En la pagina tengo 8 campos y el principal es la Factura; Si digito La factura y presiono Enter ...
  #1 (permalink)  
Antiguo 28/02/2005, 16:18
 
Fecha de Ingreso: febrero-2005
Mensajes: 650
Antigüedad: 12 años, 9 meses
Puntos: 2
Pregunta No me ejecuta el comando php

Cordial saludo.

Tengo la siguiente duda:

En la pagina tengo 8 campos y el principal es la Factura; Si digito La factura y presiono Enter hago los select necesarios en otra pagina, me los hace bien y retorna bien los valores; mi problema es que debo tener un boton Submit para que lo haga, si se lo quito no hace nada.

y ademas cuando doy Enter en cualquier otro campo debe pasar al siguiente campo, me lo hace bien cuando no tengo ese boton, pero si lo pongo en el formulario grave

Este es el padazo de codigo que utilizo Php:

<td><input name="Factura" type="text" id="Factura" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaAfiliado.php";
if(isset($_REQUEST['Factura'])){
$VP_Factura = ValidaFactura($_REQUEST['Factura']);
$VL_TipIden = $VP_Factura[0];
$VL_NoIden = $VP_Factura[1];
$VL_PriApe = $VP_Factura[2];
$VL_SegApe = $VP_Factura[3];
$VL_PriNomb = $VP_Factura[4];
$VL_SegNomb = $VP_Factura[5];
}
?>&";}"
size="10" maxlength="10"> </td>

Como hago para que me ejecute esas instrucciones sin tener el boton??

Agradezco la ayuda que me puedan brindar.
  #2 (permalink)  
Antiguo 01/03/2005, 07:08
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por tattojk
Este es el padazo de codigo que utilizo Php:

<td><input name="Factura" type="text" id="Factura" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaAfiliado.php";
if(isset($_REQUEST['Factura'])){
$VP_Factura = ValidaFactura($_REQUEST['Factura']);
$VL_TipIden = $VP_Factura[0];
$VL_NoIden = $VP_Factura[1];
$VL_PriApe = $VP_Factura[2];
$VL_SegApe = $VP_Factura[3];
$VL_PriNomb = $VP_Factura[4];
$VL_SegNomb = $VP_Factura[5];
}
?>&";}"
size="10" maxlength="10"> </td>
antetodo una disculpa... no ví tu código, solo leí tus palabras... pero aún así sigo creyendo que tu solución es de parte de JavaScript ya que según entiendo solo son problemas de eventos, teclas y botónes... todo del lado del usuario.

Aunque no acabo de entender bien... en un principio tienes solo este textbox, ingrasas un # de factura, abres otra ventana y en esta se imprimes 8 campos con resultados de consultas de la otra ventana???... deberia aportar un poco más de código y datos... por ejemplo, la función que empleas epara abrir la otra ventana... cómo imprimes los demás campos??... pero bueno, será allá en JavaScript...

No me despido... nos vemos
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 01/03/2005, 10:21
 
Fecha de Ingreso: febrero-2005
Mensajes: 650
Antigüedad: 12 años, 9 meses
Puntos: 2
Este es el codigo:

Son 20 Campos no 8 como lo habia escrito.
"ConsultaAfiliados.php"
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form action="" method="post" name="form1">
<table width="75%" align="center">
<tr>
<td colspan="4"><div align="right">dfdfdf</div>
<div align="right"></div></td>
</tr>
<tr>
<td><div align="right">Factura</div></td>
<td><input name="Factura" type="text" id="Factura" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaAfiliado.php";
if(isset($_REQUEST['Factura'])){
$VP_Factura = ValidaFactura($_REQUEST['Factura']);
$VL_TipIden = $VP_Factura[0];
$VL_NoIden = $VP_Factura[1];
$VL_PriApe = $VP_Factura[2];
$VL_SegApe = $VP_Factura[3];
$VL_PriNomb = $VP_Factura[4];
$VL_SegNomb = $VP_Factura[5];
}
?>&";}"
value="<?php echo $Factura;?>" size="10" maxlength="10"> </td>
<td><div align="right">Medico</div></td>
<td><input name="Medico" type="text" id="Medico" value="<?php echo $VL_Medico;?>" size="30" maxlength="30" onKeyPress="if(event.keyCode==13){document.forms.f orm1.txtCodConsul.focus();}"></td>
</tr>
<tr>
<td><div align="right">Tipo Identificaci&oacute;n</div></td>
<td><input name="txtTipIden" type="text" id="txtTipIden" value="<?php echo $VL_TipIden;?>" size="2" maxlength="2" readonly=""></td>
<td><div align="right">N&uacute;mero Identificaci&oacute;n</div></td>
<td><input name="txtNoIden" type="text" id="txtNoIden" value="<?php echo $VL_NoIden;?>" size="16" maxlength="16" readonly=""></td>
</tr>
<tr>
<td><div align="right">Primer Apellido</div></td>
<td><input name="txtPriApel" type="text" id="txtPriApel" value="<?php echo $VL_PriApe;?>" size="20" maxlength="20" readonly=""></td>
<td><div align="right">Segundo Apellido</div></td>
<td><input name="txtSegApel" type="text" id="txtSegApel" value="<?php echo $VL_SegApe;?>" size="20" maxlength="20" readonly=""></td>
</tr>
<tr>
<td><div align="right">Primer Nombre</div></td>
<td><input name="txtPriNombre" type="text" id="txtPriNombre" value="<?php echo $VL_PriNomb;?>" size="20" maxlength="20" readonly=""></td>
<td><div align="right">Segundo Nombre</div></td>
<td><input name="txtSegNombre" type="text" id="txtSegNombre" value="<?php echo $VL_SegNomb;?>" size="20" maxlength="20" readonly=""></td>
</tr>
<tr>
<td><div align="right">C&oacute;digo Consulta</div></td>
<td><input name="txtCodConsul" type="text" id="txtCodConsul" size="5" maxlength="5" onKeyPress="if(event.keyCode==13){document.form1.t xtFechaConsul.focus();}" value="<?php echo $VL_CodConsul;?>"></td>
<td><div align="right">Fecha Consulta</div></td>
<td><input name="txtFechaConsul" type="text" id="txtFechaConsul" onKeyPress="if(event.keyCode==13){document.form1.t xtFinaConsul.focus();}"></td>
</tr>
<tr>
<td><div align="right">Finalidad Consulta</div></td>
<td><input name="txtFinaConsul" type="text" id="txtFinaConsul" size="2" maxlength="2" onKeyPress="if(event.keyCode==13){document.form1.t xtCausaExte.focus();}" value="<?php echo $VL_FinConsul;?>"></td>
<td><div align="right">Causa Externa</div></td>
<td><input name="txtCausaExte" type="text" id="txtCausaExte" size="2" maxlength="2" onKeyPress="if(event.keyCode==13){document.form1.D iagnostico.focus();}"></td>
</tr>
<tr>
<td height="24">
<div align="right">Diagnostico</div></td>
<td><input name="Diagnostico" type="text" id="Diagnostico" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaDiag.php";
if(isset($_REQUEST['Diagnostico'])){
$VP_NombDiag = ValidaDiagnos($_REQUEST['Diagnostico']);
$VL_NombDiag=$VP_NombDiag;}
?>&";}" value="<?php echo $Diagnostico;?>" size="4" maxlength="4"></td>
<td><div align="right">Nombre Diagnostico</div></td>
<td><input name="txtNombDiag" type="text" id="txtNombDiag" value="<?php echo $VL_NombDiag;?>" size="30" maxlength="30" readonly=""></td>
</tr>
<tr>
<td><div align="right">Diagnostico Relativo 1</div></td>
<td><input name="Diagnostico1" type="text" id="Diagnostico1" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaDiag1.php";
if(isset($_REQUEST['Diagnostico1'])){
$VP_NombDiag1 = ValidaDiagnos1($_REQUEST['Diagnostico1']);
$VL_NombDiag1 = $VP_NombDiag1;}
?>&";}" value="<?php echo $Diagnostico1;?>" size="4" maxlength="4" ></td>
<td><div align="right">Nombre Diagnostico</div></td>
<td><input name="txtNombDiag1" type="text" id="txtNombDiag1" size="30" maxlength="30" value="<?php echo $VL_NombDiag1;?>" readonly=""></td>
</tr>
<tr>
<td><div align="right">Diagnostico Relativo 2</div></td>
<td><input name="Diagnostico2" type="text" id="Diagnostico2" onKeyPress="if(event.keyCode==13){"&<?php include "ValidaDiag2.php";
if(isset($_REQUEST['Diagnostico2'])){
$VP_NombDiag2 = ValidaDiagnos2($_REQUEST['Diagnostico2']);
$VL_NombDiag2=$VP_NombDiag2;}
?>&";}" value="<?php echo $Diagnostico2;?>" size="4" maxlength="4"></td>
<td><div align="right">Nombre Diagnostico</div></td>
<td><input name="txtNombDiag2" type="text" id="txtNombDiag2" onKeyPress="if(event.keyCode==13){document.form1.t xtTipoDiag.focus();}" value="<?php echo $VL_NombDiag2;?>" size="30" maxlength="30" readonly=""></td>
</tr>
<tr>
<td><div align="right">Tipo Diagnostico</div></td>
<td><input name="txtTipoDiag" type="text" id="txtTipoDiag" size="1" maxlength="1" onKeyPress="if(event.keyCode==13){document.form1.E mpresa.focus();}"></td>
<td><div align="right">Empresa</div></td>
<td><input name="Empresa" type="text" id="Empresa" value="<?php echo $VL_Empresa;?>" size="30" maxlength="30"></td>
</tr>
<tr>
<td><div align="right">
</div></td>
<td>&nbsp;</td>
<td><div align="right"></div></td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>

"ValidaAfiliado.php"
<?php
function ValidaFactura($Factura)
{
if($Factura!="")
{
include "conexion.php";
if(mssql_select_db ("BD", $conexion))
{
$VL_Mes = date("m");
$VL_Ano = date("Y");
$VL_FechaIni = $VL_Mes."/01/".$VL_Ano;
$VL_UltDia = mktime(0,0,0,$VL_Mes+1,0,$VL_Ano);
$VL_FechaFin = $VL_Mes."/".$VL_UltDia."/".$VL_Ano;
if($consul=mssql_query("Select * from Afiliados afi, Reserva res where afi.AfiNumCarne=$Factura and afi.AfiNumCarne=
res.Afinumcarne and res.ReCumplio='SI' and convert(varchar(10),
ReFechaReserva, 101) between '".$VL_FechaIni."' and '".$VL_FechaFin."'",$conexion))
{
$reg = mssql_fetch_object($consul);
$VP_Factura[0] = $reg->AfiTipoIdenti;
$VP_Factura[1] = $reg->AfiNumIdenti;
$VP_Factura[2] = $reg->AfiPriApellido;
$VP_Factura[3] = $reg->AfiSegApellido;
$VP_Factura[4] = $reg->AfiPriNombre;
$VP_Factura[5] = $reg->AfiSegNombre;
return $VP_Factura;
}
}
mssql_close();
}
}
?>

Espero que hayan podido entender mi código.

Agradezco la ayuda y sugerencias que me puedan brindar.
  #4 (permalink)  
Antiguo 02/03/2005, 06:24
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... como dije... tema de JavaScript...
En principio dejame decirte que me resulta confuso lo que pretendes con:
Código:
onKeyPress="if(event.keyCode==13){"&<?php include "ValidaAfiliado.php";
...
Me resulta confuso porque no alcanzo a entender cómo una acción de PHP va a depender de JavaScript sin recargar la página... ¿¿¿??? estoy casi seguro que esto no funciona así... pero bueno... a tu caso en concreto...

Primero hice un cambio en las comillas porque al mandarte a imprimir no se cerraban... quizá chocaban con las de PHP... y segundo, simplemente agregué la función submit() quedandome tu campo factura así:
Código:
<input name="Factura" type="text" id="Factura" onKeyPress="if(event.keyCode==13){'&<?php include "Untitled2.php";
if(isset($_REQUEST['Factura'])){
$VP_Factura = ValidaFactura($_REQUEST['Factura']);
$VL_TipIden = $VP_Factura[0];
$VL_NoIden = $VP_Factura[1];
$VL_PriApe = $VP_Factura[2];
$VL_SegApe = $VP_Factura[3];
$VL_PriNomb = $VP_Factura[4];
$VL_SegNomb = $VP_Factura[5];
}
?>&'; submit(); }"
value="<?php echo $Factura;?>" size="10" maxlength="10">
... solución??? ojalá... suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 02/03/2005, 09:28
 
Fecha de Ingreso: febrero-2005
Mensajes: 650
Antigüedad: 12 años, 9 meses
Puntos: 2
Pregunta Mas dudas

No te entendi con
"Me resulta confuso porque no alcanzo a entender cómo una acción de PHP va a depender de JavaScript sin recargar la página... ¿¿¿??? estoy casi seguro que esto no funciona así... pero bueno... a tu caso en concreto..."

Las otras dudas son las siguientes:
Ahora coloque un boton para guardar los datos, como hay datos que se digitan.

Ahora si entro a un campo y digito los campos y digito Enter debe pasar al siguiente campo Ej:
<td><input name="txtCodConsul" type="text" id="txtCodConsul" size="5" maxlength="5" onKeyPress="if(event.keyCode==13){document.form1.t xtFechaConsul.focus();}" ></td>
Pero me ejecuta el boton y me sale error porque no he acabado de digitar los datos.

Hay alguna forma de controlar estos eventos de enter sin activar el Boton??

Me funciona el Código que me sugeriste, hay alguna forma de cuando mostro los datos vaya al otro campo??

Agradezco la ayuda que me has brindado.
  #6 (permalink)  
Antiguo 02/03/2005, 09:48
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... por partes:
1) según lo que entedí en tu código, tratas de incluir algo de PHP si se presionó el enter no?
if(event.keycode...etc) {" <? e insertas PHP ?>...

Me sorprendería que te funcionara... PHP trabaja del lado del servidor y no se ejecutará hasta que recargues o lo llames con una página nueva... Bueno que está la tecnologia JRSS (ó algo así ) pero no es lo que ocupas ¿ó sí?... tan simple, JavaScript trabaja sobre lo ya impreso en HTML... en tu caso no imprimes nada así que eso de condicionar a PHP mediante JS... si es lo que pretendes hacer (así lo entendí) creo esta mal... si te funciona es porque lo que hace es cargarse PHP de todas formas... precisamente, porque no respeta la condicional.

2) .. Ooook... cuando tienes un botón del tipo "Submit" siempre responderá al enter... lo que puedes hacer es cambiar el tipo del botón a eso... type="button" y crear una función al clickearlo; onClick="Submit()"

3) ... otra forma de controlar los eventos???... puedes crear una función que llegado a un número tal de carácteres, que llenarian el campo por ejemplo, pase al siguiente campo ... fluyen los datos sin necesidad de enter's...

4) me alegro que te haya sido útil... no era tan complicado ... pero como dije DESDE UN INICIO JavaScript! ... todo esto es JavaScript y si por ahí un moderador lo mueve estaria perfecto...

PD: me parece interezante lo que haces... espero cuando este finalizado me permites mirar su funcionamiento en pleno.. Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 02/03/2005 a las 09:52
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 18:31.