Foros del Web » Programando para Internet » PHP »

saber en que fila de tabla seleccione

Estas en el tema de saber en que fila de tabla seleccione en el foro de PHP en Foros del Web. hola amigos del foro necesito su gran ayuda. cargo en una tabla los datos de un registro de mi base de datos: quiero que al ...
  #1 (permalink)  
Antiguo 05/10/2008, 21:08
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
saber en que fila de tabla seleccione

hola amigos del foro necesito su gran ayuda.

cargo en una tabla los datos de un registro de mi base de datos:



quiero que al hacer click en el boton se elimine el registro seleccionado, en otras palabras quiero saber como puedo hacer para ver que fila se selecciono para poder actualizarlo desde mi eliminar.php

espero me ayuden
__________________
www.tecfactory.com
  #2 (permalink)  
Antiguo 05/10/2008, 23:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: saber en que fila de tabla seleccione

ponle un name="fila[ID]" al submit, bingo!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 06/10/2008, 10:54
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

me podrías especificar un poco mas por favor? o decirme donde puedo encontrar un ejemplo.

gracias por su tiempo.
__________________
www.tecfactory.com
  #4 (permalink)  
Antiguo 06/10/2008, 11:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: saber en que fila de tabla seleccione

Código PHP:
$id=array_keys($_POST['borrar']);

$sql="DELETE FROM `foo` WHERE id=$id[0]";

while (...)
{
  echo 
'<input type="submit" name="borrar['.$row->id.']" value="Borrar"/>';

osea, no hay una formula mágica... hay que explotar todos los recursos PHP/HTML naturales...

suerte!



PDTA: si no entiendes, documentate...

http://w3schools.com
http://php.net
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 10/10/2008, 00:01
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

Bien entiendo,, ya conseguí leer el arreglo, pero en tu ejemplo:

Cita:
id=$id[0]";
siempre seleccionas el primer item del arreglo, sin embargo no se como saber aún cual fue el item del arreglo en el que se hizo click.


:S
__________________
www.tecfactory.com

Última edición por MaLkAvIaN_NeT; 10/10/2008 a las 00:44
  #6 (permalink)  
Antiguo 10/10/2008, 12:58
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

díganme esta forma es segura?

Código:
$sVinculo?Id=$Id'>$sTexto</a>
mandarle el id como parámetro por la url.
__________________
www.tecfactory.com
  #7 (permalink)  
Antiguo 10/10/2008, 13:55
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años, 6 meses
Puntos: 43
Respuesta: saber en que fila de tabla seleccione

claro que no es segura.
Lo que puedes hacer es colocar checkbox con el valor de los id, luego un boton que diga eliminar que sea el submit.
Retomas los id y borras, de esta forma podras eliminar más de un registro a la vez, es más útil y no necesitas pasar por url el id.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #8 (permalink)  
Antiguo 10/10/2008, 18:20
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

gracias voy a probar haciéndolo con un check.

pero me intriga saber como lo harán por ejemplo en el phpmyadmin selecciona el boton edit y te llama a otra pagina con los datos del registro.

gracias por tu respuesta amigo.

saludos
__________________
www.tecfactory.com
  #9 (permalink)  
Antiguo 10/10/2008, 19:29
 
Fecha de Ingreso: octubre-2008
Mensajes: 30
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: saber en que fila de tabla seleccione

Hola,
Si los datos que necesitas eliminar son variables, deberías de utilizar checkbox, te preguntaras cuando y como los creo, bueno arribita haces una consulta a tu base de datos cierto, cuando cargas o creas las tablas con el while, hay deberías de crear un checkbox y darle el valor id,

Código PHP:
<?
(While $rowmysql_fetch_row($sql)){
?>
<td><input type='checkbox' name='id[]' value='<? echo"$row['tuVariableId']"?>' </td>
<td>tus demas datos a mostrar</td>
<?
}
?>
Hay estas creando el arreglo en "id[]" el cual tendrá todos los valores que fueron chequeados, con eso ya tenemos los id de los usuarios que deseamos eliminar, ahora debes de asignar a donde quieres que vallan estos datos por medio de la etiqueta del formulario ”<form method="POST" action="eliminar.php"/>” y con eso te vas a tu pagina eliminar.php y recibes las variables por el método que fueron enviadas en este caso fue por POST así quedaría:

Código PHP:
$arreglo=$_POST['id']; 
Estoy asumiendo que sabes conectarte y generar consultas
Ya con esta función separas por comas el arreglo para crear el sql

Código PHP:
$eliminar    implode(',',$arreglo); 

$sql=mysql_query("DELETE FROM tabla WHERE id IN (".$eliminar.")"); 
Y por con este método estarás eliminando de una pasada todos lo registros que fueron chequeados, yo se que falta código pero asumo que sabes lo básico ojala que te sirva y chaooo saludos a todos….

Última edición por francisco_parra; 10/10/2008 a las 19:34
  #10 (permalink)  
Antiguo 10/10/2008, 23:34
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

muy agradecido mi amigo francisco parra y amigos en general. gracias por su tiempo.


tan solo hice unas modificaciones, ya que uso mi store procedure para modificar persona

Código:
CREATE DEFINER=`root`@`localhost` PROCEDURE `t_persona_cambiar_estado`(int_persona int,int_estado tinyint)
update persona set estado=int_estado where id_persona=int_persona$$
y el implode me sacaba el siguiente formato al array 1,2,3 muy ingenioso por cierto para luego meterlo a un in

yo hice un for para modificar:

Código PHP:
$arreglo=$_POST["id"];

for(
$i=0;$i<count($arreglo);$i++)
{    
    
$obj_persona->id_persona=$arreglo[$i];
    
$obj_persona->modificar($objBd);    
}
$objBd->desconectar();
$obj_servicios->ir_a("persona.php"); 
mi metodo modificar en la clase persona:
Código PHP:
function modificar($cnn)
{
$consulta="call t_persona_cambiar_estado (".$this->id_persona.",".$this->estado.");";
$cnn->ejecutar_consulta($consulta);

por si alguien algún día lo necesita como yo en esta oportunidad.

un saludo!
__________________
www.tecfactory.com
  #11 (permalink)  
Antiguo 11/10/2008, 08:03
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: saber en que fila de tabla seleccione

Cita:
Iniciado por MaLkAvIaN_NeT Ver Mensaje
díganme esta forma es segura? [...] mandarle el id como parámetro por la url.
Cita:
Iniciado por the_web_saint Ver Mensaje
claro que no es segura.
Hacerlo así es tan seguro o inseguro como el usar un formulario. Se supone que ese script forma parte de algún sistema de administración, y que la página que a la larga va a borrar el dato va a tener una validación previa del usuario. Por lo tanto, no es más seguro ni más riesgoso pasar el id por la URL. En todo caso, yo diría que es más práctico hacerlo así. En fin, puntos de vista.

Saludos,
  #12 (permalink)  
Antiguo 11/10/2008, 10:41
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años, 6 meses
Puntos: 43
Respuesta: saber en que fila de tabla seleccione

En lo personal siempre he pensado que los datos pasados por url son mas inseguros que los enviados por post, ya que estan a la vista del usuario, y este puede facilmente cambiarlos.
Ahora que dices que no es más inseguro que enviarlos por form, me pregnto , hablas solo de este ejmplo por el hecho de que se borran o en general??

Salu2
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #13 (permalink)  
Antiguo 11/10/2008, 12:00
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: saber en que fila de tabla seleccione

De este ejempo, aunque es algo que se puede aplicar a muchos (por no decir todos) los casos. Un usuario "normal" no intentará nisiquiera poner alguna "trampa" en tu URL para burlar tu sistema de seguridad (o ponerlo a prueba). Eso lo hará alguien con algún conocimiento de programación, bases de datos, etc. Ahora, un usuario con ese conocimiento, así como puede darle valores engañosos a tus variables por URL, fácilmente también podría alterar tu formulario, o más práctico aún, crearse uno con el action dirigido a tu página. Hay alguna ventaja entre uno y otro?

A lo que voy es que en ambos casos hay que validar los datos que entran (No porque los estés enviando por medio de un formulario y usando un método POST ya no los vas a validar). Y tiene que ser la misma validación en ambos casos. Ahora te pregunto, sabiendo eso, qué es más práctico?

Hay ocasiones en que se necesita mandar datos por POST, no es necesario mencionar casos, pero, para pasar un id? una palabra? Vamos, es complicarse las cosas, cargar el HTML de formularios "innecesarios" y del lado del script php aumentar código sólo por no usar la URL.

Pero como te dije, es mi punto de vista.

Saludos,
  #14 (permalink)  
Antiguo 12/10/2008, 10:46
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

yo tambiém me refería al hecho de mandar información por url como ids que sería vistos por el usuario en todo caso no hay alguna manera de mandar esta información encriptada como se puede hacer por ejemplo en asp.net
__________________
www.tecfactory.com
  #15 (permalink)  
Antiguo 12/10/2008, 11:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: saber en que fila de tabla seleccione

Mmm creo nadie esta leyendo lo que dice okram, no importa como los envíes, o si van encriptados o no, lo importante es que vas a hacer con esos valores, como los vas a validar desde tu script, ya que ahí reside el core tu script.

Saludos.
  #16 (permalink)  
Antiguo 12/10/2008, 16:40
Avatar de MaLkAvIaN_NeT  
Fecha de Ingreso: marzo-2005
Ubicación: trujillo
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: saber en que fila de tabla seleccione

como podría validar para evitar de que alguien cree un action y lo redireccione a mi página
__________________
www.tecfactory.com
  #17 (permalink)  
Antiguo 12/10/2008, 17:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: saber en que fila de tabla seleccione

Eso es lo que tienes que programar, todo depende de tu sistema no hay una forma genérica para hacerlo.

Saludos.
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:28.