Foros del Web » Programando para Internet » PHP »

Problemas para recoger mediante post unos valores de un formulario

Estas en el tema de Problemas para recoger mediante post unos valores de un formulario en el foro de PHP en Foros del Web. Hola amigas/os, a ver si me pueden ayudar con esto que me lleva de cabeza. Estoy haciendo un servicio en php pero no me coge ...
  #1 (permalink)  
Antiguo 09/03/2016, 16:13
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Problemas para recoger mediante post unos valores de un formulario

Hola amigas/os, a ver si me pueden ayudar con esto que me lleva de cabeza.

Estoy haciendo un servicio en php pero no me coge los valores que le envio por el formulario.

Sin embargo cuando fuerzo a que coja unos valores de unas variables en vez de tenerlo que recoger a traves del formulario. entonces si que me los recoge y funciona todo.

Y no se por que ocurre esto no es que es lo que esta fallando por mas que lo miro.

Todas las rutas estan bien ya que si en el archivo 2 descomento $id = '3'; y comento //$id = $_POST['COD_MUSICO']; entonces si funciona todo como digo.

Agradeceria algo de ayuda exclarecedora.

Este es mi codigo:

archivo 1 llamado: formulario_servicios.php

Código PHP:
Ver original
  1. <html>
  2.  
  3.     <head>Formulario</head>
  4.  
  5.  
  6.         <body>    
  7.  
  8.           <form name="formulario" method="post" action="client_NO_WSDL.php">
  9.  
  10.             <input type="text" name="COD_MUSICO" placeholder="COD MUSICO" /><br><br>
  11.  
  12.             <input name="submit" type="submit"value="mostrar" />
  13.  
  14.            </form>
  15.  
  16.         </body>
  17.  
  18. </html>



archivo 2 llamado "client_NO_WSDL.php"

Código PHP:
Ver original
  1. require_once 'server_NO_WSDL.php';
  2.    
  3.  
  4.     /*
  5.      * Ahora crearé la instancia, y asignar la clase
  6.      */
  7.  
  8.     $params = array('uri' => 'localhost/mis_trabajos/Tarea_6_php/server_NO_WSDL.php');        
  9.     $server = new SoapServer(NULL, $params);
  10.     $server->setClass('misMetodos'); //Nombre de la clase que he creado        
  11.     $server->handle();
  12.        
  13.  
  14.     $objeto_ut6 = new misMetodos;
  15.  
  16.    
  17.     //$id = '3';  
  18.     $id = $_POST['COD_MUSICO'];  
  19.     echo $objeto_ut6->Dame_Nombre_Musico($id);


archivo 3 llamado "server_NO_WSDL"

Código PHP:
Ver original
  1. class misMetodos
  2.  
  3.         {        
  4.             private $con;
  5.        
  6.             public function __construct()
  7.  
  8.                 {
  9.                     $this->con = (is_null($this->con)) ? self::conexion_bbdd() : $this->con;
  10.                 }
  11.        
  12.              
  13.                
  14.             static function conexion_bbdd()
  15.  
  16.                 {
  17.                     $con = mysql_connect('localhost', 'ut6', 'ut6');
  18.  
  19.                     $db = mysql_select_db('ut6', $con);
  20.  
  21.                     return $con;
  22.                 }
  23.            
  24.                
  25.                
  26.             public function Dame_Nombre_Musico($id)
  27.                    
  28.                 {
  29.                     $id_musico = $id['COD_MUSICO'];
  30.                     $sql = "SELECT NOMBRE_MUSICO FROM MUSICOS WHERE COD_MUSICO = '$id_musico'";
  31.                     $qry = mysql_query($sql, $this->con);
  32.                     $res = mysql_fetch_array($qry);
  33.                
  34.                     return $res['NOMBRE_MUSICO'] . "<br/>";
  35.                 }
  36.  
  37.         } //fin class misMetodos
  #2 (permalink)  
Antiguo 09/03/2016, 18:14
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: Problemas para recoger mediante post unos valores de un formulario

prueba modificando desde la linea 16 asi:

Código PHP:
Ver original
  1. if(isset($_POST['COD_MUSICO']) || !empty($_POST['COD_MUSICO'])){
  2.     $id = $_POST['COD_MUSICO'];
  3.     echo $objeto_ut6->Dame_Nombre_Musico($id);
  4. }
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)

Última edición por petit89; 09/03/2016 a las 21:42
  #3 (permalink)  
Antiguo 10/03/2016, 04:57
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Nada ni poniendo lo que me has dicho, ni reajustando la funcion en el archivo 3 dejandola asi:

Código PHP:
Ver original
  1. public function Dame_Nombre_Musico($id)
  2.                    
  3.                 {
  4.                     $sql = "SELECT NOMBRE_MUSICO FROM MUSICOS WHERE COD_MUSICO = $id";
  5.                     $qry = mysql_query($sql, $this->con);
  6.                     $res = mysql_fetch_array($qry);
  7.                
  8.                     return $res['NOMBRE_MUSICO'] . "<br/>";
  9.                 }

cuando envio el formulario en el archivo 2 no me recoge el valor de post.

Hice pruebas comentando lineas de codigo en el archivo 2, y cuando comento la linea:

Código PHP:
Ver original
  1. $server->handle();

entonces si me recoge el valor de formulario por post.

pero claro, esta linea no puede estar comentada , ya que para que funcione el servicio soap debe existir.

de echo cuando sustituyo el valor de post por el de un valor fijo de una variable en el archivo 2, entonces todo funciona.

help!!!
  #4 (permalink)  
Antiguo 10/03/2016, 06:06
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Código PHP:
$sql "SELECT NOMBRE_MUSICO FROM MUSICOS WHERE COD_MUSICO = ' " $id_musico " ' "


???
  #5 (permalink)  
Antiguo 10/03/2016, 06:26
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

esa linea ya esta modificada por esta otra:

Código PHP:
Ver original
  1. $sql = "SELECT NOMBRE_MUSICO FROM MUSICOS WHERE COD_MUSICO = $id";
  #6 (permalink)  
Antiguo 10/03/2016, 06:59
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Está bien, pero si no concanetas no te vá a funcionar(creo).... por eso:

Código PHP:
' " . $id_musico . " ' " 
  #7 (permalink)  
Antiguo 10/03/2016, 07:29
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Nada, he puesto esto:

Código PHP:
Ver original
  1. $sql = "SELECT NOMBRE_MUSICO FROM MUSICOS WHERE COD_MUSICO = ' " . $id . " ' ";

y nada.

El problema es que no me coge el valor de post en el archivo 2 , sino me lo coge en el archivo 2, dificilmente lo va a coger en el archivo 3 donde esta este select.
  #8 (permalink)  
Antiguo 10/03/2016, 07:48
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

en el archivo 2 probaste con :
$id = $_POST['COD_MUSICO'];
echo "id = ".$id;
Para ver que realmente el que no pase es el problema. Prueba eso para ver si realmente el post funciona
  #9 (permalink)  
Antiguo 10/03/2016, 07:51
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Y si es que pasa correctamente, revisa esta linea:
Código PHP:
$params = array('uri' => 'localhost/mis_trabajos/Tarea_6_php/server_NO_WSDL.php'); 
  #10 (permalink)  
Antiguo 10/03/2016, 08:08
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

cuando pongo :

Código PHP:
Ver original
  1. $id = $_POST['COD_MUSICO'];
  2. echo "id = ".$id;

no sale nada , solo la pagina en blanco de client_NO_WSDL.php

solo sale "id = "

respecto a la URI, debe estar bien ya que si en vez de post le pongo un valor a la variable en su lugar por ejemplo: $id = 3;

entonces si funciona todo perfectamente. osea que la uri no deberia ser.

Es raro raro.

Como digo cuando comento $server->handle();

entonces si funciona , llega el post al archivo 2, pero claro para que llegue el valor de post al archivo 3 debe estar descomentado $server->handle(); para que funcione el servicio soap.

ufffff
  #11 (permalink)  
Antiguo 10/03/2016, 08:24
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

<input name="submit" type="submit" value="mostrar" />
Tenes demas el / del final, ponelo asi:

Código PHP:
<input name="submit" type="submit" value="mostrar" 
Aveces las pequeñas cosas logran grandes diferencias!! :)
  #12 (permalink)  
Antiguo 10/03/2016, 08:56
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Buen intento robertocarrillo, pero sigue igual.

Este codigo se esta riendo de nosotros dos, y de mi en especial
  #13 (permalink)  
Antiguo 10/03/2016, 10:10
 
Fecha de Ingreso: septiembre-2014
Mensajes: 79
Antigüedad: 9 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Yo copio esto:
Código HTML:
<html>
 
    <head>Formulario</head>
 
 
        <body>     
 
          <form name="formulario" method="post" action="client_NO_WSDL.php">
 
            <input type="text" name="COD_MUSICO" placeholder="COD MUSICO" /><br><br>
 
            <input name="submit" type="submit"value="mostrar" >
 
           </form>
 
        </body>
 
</html> 

y lo envio aca:
Código PHP:
<?php
#require_once 'server_NO_WSDL.php';
    //$id = '3';   
    
$id $_POST['COD_MUSICO'];   
    echo 
"ID: ".$id;   
 
    
/*
     * Ahora crearé la instancia, y asignar la clase
     */
 
 #   $params = array('uri' => 'localhost/mis_trabajos/Tarea_6_php/server_NO_WSDL.php');        
 #  $server = new SoapServer(NULL, $params);
 # $server->setClass('misMetodos'); //Nombre de la clase que he creado        
 # $server->handle();
        
 
#    $objeto_ut6 = new misMetodos;
 
    

?>
Yrecibo el valor de $id sin problemas ...
  #14 (permalink)  
Antiguo 10/03/2016, 10:19
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: Problemas para recoger mediante post unos valores de un formulario

Claro, yo hice lo mismo, y lo envia sin problemas.

Pero como has hecho tu, osea comentando todo lo demas.

Y descomentando linea a linea, vi que era justo en la linea $server->handle();

donde si la comento si se envia post, pero si la descomento entonces no se recibe el valor de post.

Etiquetas: fecha, formulario, html, mediante, mysql, recoger, select, sql, tabla, variable
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 20:17.