Foros del Web » Programando para Internet » PHP »

PHP OO Modificar Registros con PHP O.O

Estas en el tema de Modificar Registros con PHP O.O en el foro de PHP en Foros del Web. buenas necesito que me ayuden en algo porfavor alomejor es un minimo detalle pero no logro hacer que esto funcione, resulta que tengo una tabla ...
  #1 (permalink)  
Antiguo 19/10/2011, 20:37
Avatar de tobal_mx  
Fecha de Ingreso: junio-2011
Ubicación: Curicó
Mensajes: 32
Antigüedad: 13 años, 5 meses
Puntos: 0
Pregunta Modificar Registros con PHP O.O

buenas necesito que me ayuden en algo porfavor alomejor es un minimo detalle pero no logro hacer que esto funcione, resulta que tengo una tabla llena con datos de marcas de aviones mas o menos asi en un archivo PHP

<?php
require("clases/agregar_marca.class.php");
$objvuelos=new agregar_marcas;
$consulta=$objvuelos->mostrar_datos();
?>
<table width="30%" height="51" border="1" align="center">
<caption><h6>Marcas</h6></caption>
<tr>
<th>Codigo marca</th>
<th>Nombre</th>
<th><font color="#FF0000">Eliminar</font></th>
<th><font color="#009900">Modificar</font></th>

</tr>
<?php
if($consulta){
while($marca=mysql_fetch_array($consulta)){
?>
<tr id="fila-<?php echo $marca ['mar_cod'] ?>">
<td><?php echo $marca ['mar_cod'] ?></td>
<td><?php echo $marca ['mar_nom'] ?></td>
<td><a href="eliminar_marca.php?id=<?php echo $marca['mar_cod']?>"><img src="imagenes/delete.png" onclick="return confirm('¿Estas seguro de eliminar el registro?');"/></a></td>
<td><a href="modificar_marca.php?id=<?php echo $marca['mar_cod']?>"><img src="imagenes/edit.png" onclick="return confirm('AVISO: vas a modificar el registro ¿ Estas seruro? ');"/></a></td>
</tr>

<?php
}
}
?>
<td><h6><a href="marcas.php">Registrar Nuevo </a><img src="imagenes/agregar.png" /></h6></td>
</table>

ok todo bien me lista los datos que esten en la base de datos sin problemas
pero si se fijan hay un link en la tabla ( <a href="modificar_marca.php?id=<?php echo $marca['mar_cod']?>"</a>)

que me lleva al archivo modificar_marca.php que es este.

<?php
if(isset($_POST['Grabar'])){
//Llamar a la clase
require('clases/agregar_marca.class.php');
//crear constructor de clase
$obj=new agregar_marcas;
if($obj->modificar_marca(array($marca),$codigo)==true){
echo '<h1 align="center">Datos Modificados</h1>';
echo'<p align="center">';
echo'<a href="lista_marcas.php">Volver</a>';
echo'</p>';

}else{
echo '<h1 align="center">Error al modificar Datos</h1>';
echo'<p align="center">';
echo'<a href="lista_marcas.php">Volver</a>';
echo'</p>';

}
}else{
if(isset($_GET['id'])){

//Llamar a la clase
require('clases/agregar_marca.class.php');
//crear constructor de clase
$objeto=new agregar_marcas;
$consulta=$objeto->mostrar_datos($_GET['id']);
$marca=mysql_fetch_array($consulta);


?>
<form method="POST" action="modificar_marca.php">
<table align="center" width="20%">
<caption><h6>Modificar</h6></caption>
<tr>
<input name="codigo" type="hidden"
value="<?php echo $marca['mar_cod']?>"/>

<tr>
<th>Nombre</th>
<td><input name="marca" type="text"
value="<?php echo $marca['mar_nom']?>"/></td>
</tr>
<tr>
<td><input type="submit" name="Grabar" id="Grabar" value="Modificar" /></td>
<td><a href="lista_marcas.php">Cancelar</a></td>
</tr>
</table>
</form>
<?php
}
}
?>

el problema surge que al seleccionar un dato en la lista, solo toma la primera variable que esta en la BD, osea si selecciono cualquier dato de la tabla que quiero modificar, solo toma la primera y no la que selecciono, no hay problemas al modificar solo al seleccionar el dato de la tabla, porfavor me ayudarian a resolver este problema se los agradeceria mucho :)
  #2 (permalink)  
Antiguo 20/10/2011, 00:45
 
Fecha de Ingreso: octubre-2011
Mensajes: 13
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: Modificar Registros con PHP O.O

Bueno, en principio sería bueno saber que existe detrás de la función ("mostrar_datos") que extrae los datos basado en el ID: $objeto->mostrar_datos($_GET['id']);

Todo parece indicar que ahí puede estar el problema.

Saludos,
  #3 (permalink)  
Antiguo 20/10/2011, 00:48
 
Fecha de Ingreso: octubre-2011
Mensajes: 13
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: Modificar Registros con PHP O.O

El otro problema pudiera estar en esta línea:
if($obj->modificar_marca(array($marca),$codigo)==true){

Pienso que deberías probar a usar $_POST['codigo'] en vez de $codigo.

Saludos,
  #4 (permalink)  
Antiguo 20/10/2011, 07:38
Avatar de tobal_mx  
Fecha de Ingreso: junio-2011
Ubicación: Curicó
Mensajes: 32
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Modificar Registros con PHP O.O

en la funcion mostrar_datos esta la consulta sql

function mostrar_datos(){
if($this->con->conectar()==true){
return mysql_query("SELECT*FROM marcas");
}
}

probare las sugerencias, muy agradecido :)
  #5 (permalink)  
Antiguo 20/10/2011, 10:18
Avatar de tobal_mx  
Fecha de Ingreso: junio-2011
Ubicación: Curicó
Mensajes: 32
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Modificar Registros con PHP O.O

el error estaba justamente en la consulta sql ;) ... solucionado, gracias

Etiquetas: modificar, php+clases
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 09:23.