Foros del Web » Programación para mayores de 30 ;) » Programación General »

Traspasar valor a un CGI

Estas en el tema de Traspasar valor a un CGI en el foro de Programación General en Foros del Web. Hola gente Como que ando volada últimamente, expuse un problema en el foro equivocado, así que para reparar mi error lo publico acá, que es ...
  #1 (permalink)  
Antiguo 20/05/2003, 09:10
Avatar de tilu  
Fecha de Ingreso: agosto-2002
Ubicación: u-l-d-m
Mensajes: 1.885
Antigüedad: 21 años, 8 meses
Puntos: 5
Traspasar valor a un CGI

Hola gente

Como que ando volada últimamente, expuse un problema en el foro equivocado, así que para reparar mi error lo publico acá, que es donde corresponde

Cita:
Se reirán de mi, pero ya me hice un lio bárbaro, así que recurro a ustedes para que me ayuden a desliarme

Necesito que me ilustren de que manera podría traspasar un valor a un cgi, en las faqs encontré un script que podría ayudarme, pero como ya les dije el traspaso no es a otra página sino a un cgi, hasta ahora los formularios me han sido muy útiles, pero me es imposible usar uno, ya que tendría que anidarlos

Este es el Scrip que les mencionaba:

<script language="JavaScript">
function disparaPopUp(str){
open("popup.htm?Prm=" + str);
}
</script>

Cualquier comentario será bueno para encausar nuevamente mi camino
Ojalá puedan orientarme, pues desde ayer que no he querido retomar este problema esperando vuestros comentarios
__________________
"Casualidad es el juego favorito del destino", Tilu
  #2 (permalink)  
Antiguo 20/05/2003, 19:02
 
Fecha de Ingreso: mayo-2003
Mensajes: 328
Antigüedad: 21 años
Puntos: 0
Como le estas haciendo esta bien, te voy a poner otro ejemplo para ayudarte más:

Código:
<script language="JavaScript">
   function mandarInfo(nombre,email,pwd){
     window.location = "http://misitio.com/cgi-bin/elcgi.cgi?nombre=" + nombre + "&email=" + email + "&pwd=" + pwd;
    }
</script>
Claro que en el CGI tienes que poner para que lea el "query" en el método de "GET".

Si quieres saber como se hace eso avisame...

Saludos
  #3 (permalink)  
Antiguo 22/05/2003, 10:19
Avatar de tilu  
Fecha de Ingreso: agosto-2002
Ubicación: u-l-d-m
Mensajes: 1.885
Antigüedad: 21 años, 8 meses
Puntos: 5
Muchas gracias kidd por tu ayuda, pero debo confesar que me has dejado peor que al comienzo

Lo que necesito pasar es un texto fijo a un cgi, lo que hace este cgi es buscar ese texto en una base de datos.

Tendrías la paciencia de indicarme con manzanas los pasos que debo seguir.

Hasta ahora lo he intentado de varias maneras, pero no consigo que el CGI obtenga ese valor. Actualmente he seguido este script (obtenido de las faqs) como ejemplo:


<html>
<head>
<script languaje="JavaScript">

var parmetro; // Nombre de la variable que va a recibir el valor

function valParam(url, prmName){
var prmUpper = prmName.toUpperCase();
var prmPosic = url.indexOf(prmUpper);
var sepPos;
if (prmPosic != -1){
var sepPos = url.indexOf("&", prmPosic);
if (sepPos != -1){
return url.substring(prmPosic + prmUpper.length + 1, sepPos);
} else {
return url.substring(prmPosic + prmUpper.length + 1, url.length);
}
} else {
return "";
}
}

function getParameters(){
var remplaza = /+/gi;
var url = window.location.href;
var variable;
url = unescape(url);
url = url.replace(remplaza, " ");
url = url.toUpperCase();
parametro = valParam(url, "Prm"); // Lectura y asignación del valor
}

function muestra(){
document.frm.parm.value = parametro;
}

</script>
</head>
<body onload="getParameters()">
<form name="frm">
<input type="text" name="parm">
<input type="button" value="Leer parámetro" onclick="muestra()">
</form>
</body>
</html>
__________________
"Casualidad es el juego favorito del destino", Tilu
  #4 (permalink)  
Antiguo 22/05/2003, 12:46
 
Fecha de Ingreso: mayo-2003
Mensajes: 328
Antigüedad: 21 años
Puntos: 0
Hola...

Viendo tu forma yo lo que haría seria lo siguiente:


Código:
<html>
<head>

<script language="javascript">

function mandarP(){

var url = "http://www.misitio.com/micgi.gi"; //url del cgi

var param = document.frm.parm.value;
    document.location = url + "?param=" + param;
}
</script>

</head>
<body>

<form name="frm">
<input type="text" name="parm">
<input type="button" value="Leer parámetro" onclick="mandarP()">
</form>

</body>
</html>
Este código te debe de ayudar a enviar la información al CGI
  #5 (permalink)  
Antiguo 22/05/2003, 17:09
Avatar de tilu  
Fecha de Ingreso: agosto-2002
Ubicación: u-l-d-m
Mensajes: 1.885
Antigüedad: 21 años, 8 meses
Puntos: 5
Gracias nuevamente kidd

Sabes he conseguido llevar el texto a otra página, pero no consigo que este lo procese (por ahora deje de lado el cgi en cuestión para ir paso a paso)

te cuento, este es el código que actualmente estoy usando para llevar el valor:


<html>
<head>
<script language="JavaScript">
<!--
function buscar() { //v2.0
frmLOV = open("../../wxis/dicc01.htm?Prm=" + "ti=");
window.frmLOV.focus();
}
//-->
</script>
</head>
<body>
<a href="JavaScript: buscar()">T&iacute;tulo:</a>
</body>
</html>



Y este código lo lee y supuestamente lo traspasa al form, cosa que no ocurre en esta aplicación, pero si en otra que no usa frames, probé sacando los marcos, pero tampoco funcionó.

<html>
<head>
<script languaje="JavaScript">
var parmetro; // Nombre de la variable que va a recibir el valor
function valParam(url, prmName){
var prmUpper = prmName.toUpperCase();
var prmPosic = url.indexOf(prmUpper);
var sepPos;
if (prmPosic != -1){
var sepPos = url.indexOf("&", prmPosic);
if (sepPos != -1){
return url.substring(prmPosic + prmUpper.length + 1, sepPos);
} else {
return url.substring(prmPosic + prmUpper.length + 1, url.length);
}
} else {
return "";
}
}

function getParameters(){
var remplaza = /\+/gi;
var url = window.location.href;
var variable;
url = unescape(url);
url = url.replace(remplaza, " ");
url = url.toUpperCase();
parametro = valParam(url, "Prm"); // Lectura y asignación del valor
document.form02.from.value = parametro;
}

function muestra(){
document.form02.from.value = parametro;
}
</script>
</head>

<body topmargin="0" leftmargin="10" onload="getParameters();muestra();javascript:docum ent.form01.submit();">

<form name="form01" action="http://127.0.0.1/cgi-bin/wxis/wxis.exe" method="post" target="abajo">
<input type="hidden" name="IsisScript" value="/xis/dicc.xis">
<input type="hidden" name="from" >
</form>

<form name="form02" action="http://127.0.0.1/cgi-bin/wxis/wxis.exe" method="post" target="abajo">
<input type="hidden" name="IsisScript" value="/xis/dicc.xis">
Desde: <input type="text" name="from" size="20">
<input type=submit value="Procesar">
</form>

</Body>
</html>


No se si tú alcanzas a ver el error que yo tantas veces he pasado por alto

Me explique bien ??
__________________
"Casualidad es el juego favorito del destino", Tilu
  #6 (permalink)  
Antiguo 23/05/2003, 08:08
 
Fecha de Ingreso: mayo-2003
Mensajes: 328
Antigüedad: 21 años
Puntos: 0
Hola tilu:

Quizá te pueda ayudar más si me envias la forma de HTML y el CGI para que te los corrija y te los reenvie...

Si te parece bien mandamelos a [email protected]

Saludos
__________________
Uriel Lizama, Perl Developer

Aprende Perl en Perl en Español.
  #7 (permalink)  
Antiguo 23/05/2003, 16:35
Avatar de tilu  
Fecha de Ingreso: agosto-2002
Ubicación: u-l-d-m
Mensajes: 1.885
Antigüedad: 21 años, 8 meses
Puntos: 5
Hecho !!

Muchas gracias
__________________
"Casualidad es el juego favorito del destino", Tilu
  #8 (permalink)  
Antiguo 23/05/2003, 17:15
 
Fecha de Ingreso: mayo-2003
Mensajes: 328
Antigüedad: 21 años
Puntos: 0
__________________
Uriel Lizama, Perl Developer

Aprende Perl en Perl en Español.
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 22:50.