Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con formulario en tabla dinámica

Estas en el tema de Problema con formulario en tabla dinámica en el foro de PHP en Foros del Web. Hola a todos, les cuento mi problema, lo que pasa es que tengo un tabla html dinámica que se carga con los datos de una ...
  #1 (permalink)  
Antiguo 28/06/2014, 08:33
 
Fecha de Ingreso: enero-2014
Ubicación: Chile
Mensajes: 18
Antigüedad: 10 años, 3 meses
Puntos: 0
Pregunta Problema con formulario en tabla dinámica

Hola a todos, les cuento mi problema, lo que pasa es que tengo un tabla html dinámica que se carga con los datos de una base de datos Oracle, hasta ahí no hay problema, el problema está en que quiero añadir un botón editar para pasar a un formulario que recoja los datos, los muestre y de la opción de editar, la primera solución que implementé fue que a la hora de ir añadiendo nuevas filas en un ciclo que lee desde la BD se creaba un form en cada fila, cosa que extrañamente funciona cuando hago funcionar solo esa vista (estoy trabajando con una página con un menú estático y solo se recarga un Div, así que todas las vistas están definidas como div) pero a la hora de echar a andar el proyecto completo, osea con el menú estático y ya no solo la tabla esto ya no funciona, leí en algún lado que podía deberse a que el form es un elemento de bloque y no de fila, si alguien conoce alguna forma de realizar lo que necesito agradecería mucho que me pudiera ayudar, demás está decir que no tengo mucha experiencia con esto, saludos y gracias desde ya.
  #2 (permalink)  
Antiguo 28/06/2014, 09:07
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: Problema con formulario en tabla dinámica

No entiendo tu problema. Si puedes explicarlo de otra forma te lo agradecería.

Cuando dices que "no funciona" ¿a qué te refieres? ¿te devuelve algún error?
__________________
Ayúdame a hacerlo por mi mismo.
  #3 (permalink)  
Antiguo 28/06/2014, 09:32
 
Fecha de Ingreso: enero-2014
Ubicación: Chile
Mensajes: 18
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Problema con formulario en tabla dinámica

Hola gracias por responder, el problema es que simplemente el botón Editar que añado a cada formulario no funciona, no realiza ninguna acción, y como digo, cuando ejecuto el archivo que carga la tabla solamente funciona, pero al hacer ejecutar el proyecto completo o sea con el menú estático y los estilos no lo hace, este es el código con el que lleno la tabla, aunque la verdad me parece muy extraño lo que pasa xD

Código PHP:
function listarClientes($conexion) {
            
$sql "SELECT * FROM CLIENTE";
            
$stmt oci_parse($conexion$sql);  // Preparar la sentencia
            
$ok oci_execute($stmt);   // Ejecutar la sentencia
            
if ($ok == true) {
                
/* Mostrar los datos. Lo hacemos de este modo puesto que no es posible obtener el n�mero de
                  registros sin antes haber accedido a los datos mediante las funciones 'oci_fetch_*'):
                 */
                
if ($obj oci_fetch_object($stmt)) {
                    echo 
"<br/><h3>LISTADO DE CLIENTES EN EL SISTEMA</h3><br/>";
                    echo 
"<table border = 1>";
                    echo 
"<thead>";
                    echo 
"<tr>";
                    echo 
"<th>Rut Cliente</th>";
                    echo 
"<th>Nombre</th>";
                    echo 
"<th>Dirección</th>";
                    echo 
"<th>Fono</th>";
                    echo 
"<th>Correo</th>";
                    echo 
"<th>Estado</th>";
                    echo 
"</tr>";
                    echo 
"</thead>";
                    do {
                        echo 
"<form method='POST' action='editarCamion.php'>";
                        echo 
"<input type='hidden' name='key' id='key' value='$obj->ID_CLIENTE_PK'>";
                        echo 
"<tr>";
                        echo 
"<td>";
                            echo 
$obj->ID_CLIENTE_PK;
                        echo 
"</td>";
                        echo 
"<td>";
                            echo 
$obj->NOMBRE_CLIENTE;
                        echo 
"</td>";
                        echo 
"<td>";
                            echo 
$obj->DIR_CLIENTE;
                        echo 
"</td>";
                        echo 
"<td>";
                            echo 
$obj->FONO_CLIENTE;
                        echo 
"</td>";
                         echo 
"<td>";
                            echo 
$obj->CORREO_CLIENTE;
                        echo 
"</td>";
                         echo 
"<td>";
                            echo 
$obj->ESTADO_CLIENTE;
                        echo 
"</td>";
                        echo 
"<td>";
                        echo 
"<input type='submit' name='Editar' value='Editar' />";
                        echo 
"</td>";
                        echo 
"</tr>";
                        echo 
"</form>";
                    } while (
$obj oci_fetch_object($stmt));
                    echo 
"</table>";
                    
// Mostrar el n�mero de registros:
                
} else {
                    echo 
"<p>No se han ingresado datos</p>";
                }
            } else {
                
$ok false;
            }
            
oci_free_statement($stmt); // Liberar los recursos asociados a una sentencia o cursor
            
return $ok;
        } 
  #4 (permalink)  
Antiguo 28/06/2014, 09:40
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 11 años, 11 meses
Puntos: 320
Respuesta: Problema con formulario en tabla dinámica

El form es de bloque, pero con css puedes convertirlo en elemento de fila.

No obstante es una pesima solucion, porque tendrias 20 formularios en tu pagina.

Lo mejor es poner en cada fila un link a una pagina con un formulario enviando la pk, por ejemplo form.php?pk=2 en el php tienes un solo formulario que es el que edita. Esta pagina puede ser la misma que usas para el alta.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios
  #5 (permalink)  
Antiguo 28/06/2014, 09:46
 
Fecha de Ingreso: enero-2014
Ubicación: Chile
Mensajes: 18
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Problema con formulario en tabla dinámica

Gracias por responder, probaré lo que me dices, y pensándolo bien, tienes mucha razón en lo de tener tantos formularios en la página pero fue lo primero que se me ocurrió, Saludos.
  #6 (permalink)  
Antiguo 28/06/2014, 12:14
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: Problema con formulario en tabla dinámica

Debe ser normal que el action te envie a exactamente donde le dices que te envie.

Debe ser normal que el boton submit Editar no haga nada, puesto que el botón submit solamente envia el formulario.

Puede ser normal que donde recoges el formulario esperando el $obj->ID_CLIENE_PK del input hidden no ocurra nada de lo que esperas, puesto que puede que no estés especificando el contenido de la variable, sino un string con el nombre de la variable, esto ocurre porque no usas la variable así
Código PHP:
Ver original
  1. echo "<input type='hidden' name='key' id='key' value='".$obj->ID_CLIENTE_PK."'>";

Antes de cambiar lo que te he dicho, comprueba donde recoges el formulario (o envíalo a otro sitio con un <pre><?php var_dump($_POST); ) qué contiene la variable super global $_POST y si estás recogiendo el contenido de la variable $obj->ID_CLIENTE_PK o solamente el string $obj->ID_CLIENTE_PK.

También comprueba, si todo estuviera correcto, que la variable contiene algo que esperas.

Saludos.
__________________
Ayúdame a hacerlo por mi mismo.
  #7 (permalink)  
Antiguo 28/06/2014, 12:55
 
Fecha de Ingreso: enero-2014
Ubicación: Chile
Mensajes: 18
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Problema con formulario en tabla dinámica

El problema pasa por que el botón Editar no hace nada, lo extraño es que solamente ocurre cuando ejecuto el proyecto completo y no cuando ejecuto solo al archivo que contiene la tabla, la verdad es que me parece muy extraño, pero cambiando el botón por links y no usando formularios lo pude solucionar, gracias a todos :D
  #8 (permalink)  
Antiguo 30/06/2014, 10:30
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 11 años, 11 meses
Puntos: 320
Respuesta: Problema con formulario en tabla dinámica

Cita:
lo extraño es que solamente ocurre cuando ejecuto el proyecto completo y no cuando ejecuto solo al archivo
Tendrias que revisar el dom completo, es posible, que tengas un formulario "grande" que englobe a los demas formularios, segun la especificacion de html, cuando hay formularios anidados, todos pertenecen al principal y los "sub-formularios" son ignorados como tales, todos los submit envian al form principal.

Es solo una posibilidad remota, pero que suena logica ya que solo te deja de funcionar al incluir otro contenido.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios

Etiquetas: dinamica, formulario, tabla
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:46.