Autor Tema: JavaScript tener un formulario que dirija a distintas urls según botón pulsado  (Leído 5346 veces)

ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Buenas estimados amigos, necesito su ayuda para los siguiente...

abajo escribiré mi codigo SCRIPT con ese codigo quiero que cuando haga click en el boton haga su propia funcion, que es de enviarme a un formulario .PHP ese formulario hace el proceso debido

Código: [Seleccionar]
<script src="jquery-1.12.4.min.js"></script>
    <script>
$(document).ready(function()
{
$('.btnGestionarDatos').click(
function()
{
var _tr=$(this).parents('tr:eq(0)');
var _id = $('#txtidusuario'); //_tr.find('input.paq-pub-id').val();
header("location:frm_gestionarDatos.php?Id_Logueo=_id");

}
)
});
</script>

como pueden ver hay un "header" es porque el formulario recibe un dato que es un valor "Id_Logueo"

Código: [Seleccionar]
header("location:frm_gestionarDatos.php?Id_Logueo=_id");
txtidusuario es un campo text es donde se encuentra el valor que tengo que enviar al formulario "frm_gestionarDatos.php"

no me ejecuta el header que problema tendre que no me ejecuta, espero que me hayan entendido mi problemita
« Última modificación: 26 de Agosto 2016, 20:27 por César Krall »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #1 en: 24 de Agosto 2016, 17:03 »
Hola ing_jp.

En este script usas Ajax a través de jQuery.

header() es una función de PhP y el interprete javaScript no la reconocerá, así que te tendría que dar un error, para mandar los datos podrías usar la siguiente línea:

Código: [Seleccionar]
$.post("frm_gestionarDatos.php",{ Id_Logueo: _id});
y en la línea :

Código: [Seleccionar]
var _id = $('#txtidusuario');
debería quedar así:

Código: [Seleccionar]
var _id = $('#txtidusuario').val();
de lo contrario no tomará el contenido del input.


Habría mas formas de mandar los datos con jQuery, pero prueba con eso a ver si te vale.
También se podría hacer directamente usando Ajax, en el siguiente enlace podrás aprender a usarlo:

https://www.aprenderaprogramar.es/index.php?option=com_content&view=category&id=83&Itemid=212

Saludos. ;D

« Última modificación: 24 de Agosto 2016, 17:32 por pedro,, »

ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #2 en: 24 de Agosto 2016, 21:10 »
gracias amigo pedro,,

ahora como hago para el receptor del valor
es de esta forma o de otra forma

asi lo envio
Código: [Seleccionar]
           var _id = $('#txtidusuario').val();
           $.post("frm_gestionarDatos.php",{ Id_Logueo: _id});

pero como lo recibo en el otro formulario yo lo tengo de esta manera pero no lo funciona me sale basura
Código: [Seleccionar]
<?php
include 'cls_conexion.php';
$Id_Logueo $_GET['Id_Logueo'];
?>


pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #3 en: 24 de Agosto 2016, 21:24 »
En el archivo PhP en vez de con $_GET hazlo con $_POST.

Saludos.

ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #4 en: 24 de Agosto 2016, 21:53 »
Estimado amigo pedro,,

no envia el valor de esa variable me sigue enviando basura...

con esta linea NO me direcciona al otro formulario "frm_gestionarDatos.php"
Código: [Seleccionar]
$.post("location:frm_gestionarDatos.php",{Id_Logueo: _id});
con esta linea SI me direcciona al otro formulario "frm_gestionarDatos.php"
Código: [Seleccionar]
window.location='frm_gestionarDatos.php?Id_Logueo=$_id';
en ambos me envían basura no el valor de la variable, donde no puedo observar si mi $_POST agarra el valor adecuado

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #5 en: 24 de Agosto 2016, 22:06 »
No es:

Código: [Seleccionar]
$.post("location:frm_gestionarDatos.php",{Id_Logueo: _id});
sino ...

Código: [Seleccionar]
$.post("frm_gestionarDatos.php",{ Id_Logueo: _id});

ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #6 en: 24 de Agosto 2016, 22:21 »
estiamdo amigo pedro,,

Código: [Seleccionar]
<script>
$(document).ready(function()
{
$('.btn-GestionarDatos').click(
function()
{
var _tr=$(this).parents('tr:eq(0)');

var _id = $('#txtidusuario').val();
$.post("frm_gestionarDatos.php",{ Id_Logueo: _id});
alert(_id);
}
)
               });
</script>


asi lo escribo pero no me redirecciona a parte de eso no me envia el valor que deseo enviar...

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #7 en: 24 de Agosto 2016, 22:35 »
Creo que el error puede estar en alguna parte del código que no se muestra, como la parte html.

Te dejo un ejemplo.

archivo html:
Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".btn-GestionarDatos").click(function(){
var _id = $('#txtidusuario').val();
alert(_id);
$.post("frm_gestionarDatos.php", {Id_Logueo: _id});
});
});
</script>
</head>
<body>
<form>
<label>Id: <input id="txtidusuario" type="text" /></label>
<label><input class="btn-GestionarDatos" type="button" value="Enviar"/></label>
</form>
</body>
</html>

archivo PhP:
Código: [Seleccionar]
<?php
$Id_Logueo $_POST['Id_Logueo'];
echo "Id: $Id_Logueo";
?>

Eso me funciona correctamente.
Si no puedes resolverlo, pon tu código completo para que pueda revisarlo.



ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #8 en: 24 de Agosto 2016, 22:52 »
Estimado amigo

si o si tiene q ser archivo html

yo lo estoy haciendo en un archivo php


en el caso de php como tendría que usar funcionar esa linea???

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #9 en: 24 de Agosto 2016, 23:33 »
Podría ser un archivo php, pero en realidad empiezo a dudar si te es necesario usar ajax para lo que quieres hacer.

Porque si lo único que quieres es enviar un formulario de una página php a otra, hay otros medios mas sencillos, pero sin ver tu código es complicado saber exactamente lo que pretendes hacer.


ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #10 en: 24 de Agosto 2016, 23:48 »
te explico amigo pedro,,

tengo un formulario llamado frm_perfil.PHP y varios botones con diferentes funciones como cambiar contraseña, registrar datos personales, registrar empresa, donde hay datos y yo tengo que enviar si o si el ID del usuario para cada función que eh mencionado.

quiero registrar datos personales llamo al formulario frm_GestionarDatos.php enviándole el valor del ID del usuario desde el formulario frm_perfil.php.
quiero modificar mi password llamo al formulario frm_ModificarPassword.php enviándole el valor del ID del usuario desde el formulario frm_perfil.php.
quiero registrar una empresa llamo al formulario frm_GestionarDatos.php enviándole el valor del ID del usuario desde el formulario frm_perfil.php.


y así sucesivamente de repente en el futuro tenga otras funciones pues lo mejor es usando <script> yo solo cargo ese nuevo formulario y listo es mas fácil de usarlo

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #11 en: 25 de Agosto 2016, 00:05 »
Bueno, entonces es mucho mas fácil.

En el archivo perfil.php tendrías que mandar el formulario de la siguiente forma:

Código: [Seleccionar]
<form action="frm_gestionarDatos.php" method="post">
<label>Introducir Id: <input name="Id_Logueo" type="text" /></label>
<label><input type="submit" value="Enviar"/></label>
</form>

Y en el archivo frm_GestionarDatos.php recoges el id de la  forma que lo hacías:

Código: [Seleccionar]
<?php
$Id_Logueo $_POST['Id_Logueo'];
?>

Creo que ahora ya podrás solucionarlo, o eso espero. ;D


ing_jp

  • Sin experiencia
  • *
  • Mensajes: 21
    • Ver Perfil
Re:como usar el header en script
« Respuesta #12 en: 25 de Agosto 2016, 00:19 »
Estimado amigo eso esta super pero eso es cuando se usa un solo boton pero yo usa 3 botones y solo quiero usar un solo formulario

dejare el formulario que tengo para ve si te puedo aclarar las cosas mejor

(FORMULARIO)

Nombre:
Apellidos:
Nacionalidad:
Celular:
email:

(FUNCIONES CON DISTINTOS BOTONES)
- Gestionar datos
- Modificar contraseña
- Gestionar publicidad
- Gestionar empresa
« Última modificación: 25 de Agosto 2016, 22:23 por Ogramar »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:como usar el header en script
« Respuesta #13 en: 25 de Agosto 2016, 00:51 »
Quedaría así:

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script>
function cambiarActionForm(direccion){
var formulario = document.getElementById('formulario');
formulario.action = direccion;
}
</script>
</head>
<body>
<form id="formulario" action="" method="post">
<label>Introducir Id: <input name="Id_Logueo" type="text" /></label><br/>
<label><input type="submit" onclick="cambiarActionForm('frm_gestionarDatos.php')" value="GESTINOAR DATOS"/></label>
<label><input type="submit" onclick="cambiarActionForm('frm_ModificarPassword.php')" value="MODIFICAR CONTRASEÑA"/></label><br/>
<label><input type="submit" onclick="cambiarActionForm('frm_gestionarPublicidad.php')" value="GESTIONAR PUBLICIDAD"/></label>
<label><input type="submit" onclick="cambiarActionForm('frm_gestionarEmpresa.php')" value="GESTIONAR EMPRESA"/></label>
</form>
</body>
</html>


 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".