Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/04/2016, 16:13
deiher
 
Fecha de Ingreso: abril-2016
Mensajes: 3
Antigüedad: 8 años
Puntos: 0
como actualizar un registro por el id php y mysql poo mvc

hola es que tengo un inconveniente quiero hacer una actualizacion utilizando el id pero no lo he podido lograr puedo ingresar y consultar pero no he podido eliminar ni actualizar por el id seleccionado espero que me puedan ayudar.


Código PHP:
//index
<?php

        
require_once 'Controlador/Controlador.php';
        require_once 
'Modelo/GestorMedico.php';
        require_once 
'Modelo/Medico.php';
        require_once 
'Modelo/ConexionDB.php';
                             
        
$controlador = new Controlador();
 
        if (isset(
$_GET['pg'])){
         
            if(
$_GET['pg'] == "frmIngresarMedico1"){
            
$controlador->verPagina'Vista/frmIngresarMedico1.php');            
            }
                                   
          if(
$_GET['pg']=="listarMedicos1"){          
           
$controlador->verPagina'Vista/listarMedicos1.php');                
            }
                            

            elseif(
$_GET["pg"]=="validarAgregarMedico1"){
             
$controlador->crearMedico($_POST["identificacion"],$_POST["nombres"], $_POST["apellidos"],$_POST["telefono"],
                     
$_POST["correo"],$_POST["genero"],$_POST["especialidad"]);                       
            
/*reibimos los datos que vienen por post cuando enviamos el formulario guardarUsuario*/    
            
}
            
                        
            elseif(
$_GET["pg"]=="ActualizarMedico1"){
            
$controlador->mostardatosmedicoxId($_GET["idMedico"]);  
            echo 
$_GET["idMedico"];
            
/*reibimos los datos que vienen por post cuando enviamos el formulario editarUsuario*/    
            
}
            
            elseif(
$_GET["pg"]=="eliminarMedico1?idMedico"){
            
$controlador->eliminarMedico($_POST['idMedico']);  
            echo 
$_POST["identificacion"];
            
/*reibimos los datos que vienen por post cuando enviamos el formulario editarUsuario*/    
            
}          

     }
        else {
            require_once 
'Vista/contenido.php';
            }
            
?>


Código PHP:
//Controlador
<?php
/**
 * Description of Controlador
 *
 * @author Deimer Hernandez Vergara
 */
class Controlador {
        public function 
verPagina($ruta) {
        require_once 
$ruta;
    }
        
    
/*function para agregar medicos */
     
public function crearMedico($doc,$nom,$ape,$tel,$correo,$genero,$esp) {
       
$medico = new Medico($doc,$nom,$ape,$tel,$correo,$genero,$esp);
       
$gestormedico = new GestorMedico();
       
$gestormedico->agregarMedico($medico);       
    }
    
    
/*para consultarEspecialidad de los medicos*/
    
public function cEspecialidad(){
        
$gestorMedico = new GestorMedico();
        
$resultado=$gestorMedico->consultarEspecialidad();
        return 
$resultado;
        }
        
    
/*funcion para listar los medicos*/
    
public function mostrarMedicos(){
        
$gestorMedico = new GestorMedico();
        
$resultado=$gestorMedico->listarMedicos();
        return 
$resultado;
        }
               
        
/**/
        
public function mostardatosmedicoxId($idMedico){            
            
$gestormedico = new GestorMedico();
            
$resultado $gestormedico->mostarMedicoporId($idMedico); 
            return 
$resultado;           
        }
                        
    
/**/
        
function eliminarMedico($idMedico){
        
$gestormedico = new GestorMedico();
        
$resultado $gestormedico->eliminar($idMedico);
            return 
$resultado;
        }       
      
}
?>

Código PHP:
//modelo GestorMedico
<?php
require 'ConexionDB.php';
require 
'Medico.php';
/**
 * Description of GestorMedico
 *
 * @author Deimer Hernandez Vergara
 */
class GestorMedico {
    

    
/*funcion para insertar medico*/
    
public function agregarMedico(Medico $medico){       
      
$conexion = new Conexion();
      
$conexion->abrir();
      
$identificacion $medico->getIdentificacion();
      
$nombres $medico->getNombres();
      
$apellidos $medico->getApellidos();
      
$telefono=$medico->getTelefono();
      
$correo $medico->getCorreo();
      
$genero $medico->getGenero();
      
$especialidad $medico->getEspecialidad();
      
$sql="INSERT INTO medico(idMedico,medIdentificacion,medNombres,medApellidos,medTelefono,medCorreo,medGenero, medEspecialidad)VALUES
      (null,'$identificacion','$nombres','$apellidos','$telefono','$correo','$genero','$especialidad')"

      
$conexion->consulta($sql);
      
$conexion->cerrar();
      return 
$conexion;
    }
      
    
/*para consultarEspecialidad de los medicos*/
    
public function consultarEspecialidad(){
        
$objConexion = new Conexion();
        
$objConexion->abrir();
        
$sql"SELECT idEspecialidad, espNombre FROM especialidad";
        
$objConexion->consulta($sql);
        
$resultadoEspecialidad $objConexion->obtenerResult();
        
$objConexion->cerrar();
        return 
$resultadoEspecialidad;
        }
        
    
/*para mostrar los medicos*/
    
public function listarMedicos() {
      
$objConexion = new Conexion();
      
$objConexion->abrir();    
      
$sql="SELECT * FROM medico,especialidad WHERE medEspecialidad = idEspecialidad";
      
$objConexion->consulta($sql);
      
$result=$objConexion->obtenerResult();
      
$objConexion->cerrar();
      return 
$result;
      
//redirecciono a la pagina principal index.php
    
header('Location: index.php');
    
        }
        
        public function 
mostarMedicoporId($idMedico){
            
$id=$idMedico;
            
$objConexion= new Conexion();
            
$objConexion->abrir();
            
$sql "select * from medico where idMedico = '$id'";
            
$objConexion->consulta($sql);
            
$resultadoMedico $objConexion->obtenerResult();
            
$objConexion->cerrar();
            return 
$resultadoMedico;
                    
        }
          
          
        function 
eliminar($id){
        
$objConexion = new Conexion();
        
$objConexion->abrir();
        
$sql"delete from medico where idMedico = '$id'";
        
$resultado $objConexion->consulta($sql);
        if (
$resultado)
                echo
' Medico eliminado';
        else
                echo
' no se pudo eliminar';

    public function 
actualizarMedico(Medico $medico){            
       
$objConexion = new Conexion();
       
$objConexion->abrir(); 
       
$identificacion $medico->getIdentificacion();
       
$nombres $medico->getNombres();
       
$apellidos $medico->getApellidos();
       
$telefono $medico->getTelefono();
       
$correo $medico->getCorreo();
       
$genero $medico->getGenero();
       
$especialidad $medico->getEspecialidad();
       
$idMedico $medico->getidMedico();
       
$sql=" update medico set medIdentificacion='$identificacion', medNombres = '$nombres', medApellidos = '$apellidos',
       medTelefono='telefono', medCorreo = 'correo',  medGenero = '$genero', medEspecialidad = '$especialidad'
       where idMedico = '$idMedico' "
;
       
$resultado=$objConexion->consulta($sql);
       
$objConexion->cerrar();
       return 
$objConexion;
       
       if (
$resultado)
                echo 
'actualizado correctamente';
        else
                echo
' no se puede actualizar';


        }
}
?>

Código PHP:
//vista listarMedicos

<?php
/*este codigo es para listar todos los medicos*/
$controlador = new Controlador();
$resultado $controlador->mostrarMedicos();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Empresa Gestion Medica</title>
<link  rel="stylesheet" type="text/css" href="Vista/css/style.css"></link>

</head>

    <body>
<div id="divContenedor">
     <?php include "Vista/encabezado.php";?>
    <div id="divMenu">
      <table width="86%" height="254" border="0" align="center">
        <tr>
          <td align="center"><a href="index.php?pg=frmIngresarMedico1">Agregar Medico</a></td>
        </tr>
        <tr>
            <td align="center"><a href="index.php?pg=listarMedicos1">Listar Medicos</a></td>
        </tr>
        <tr>
            <td align="center"><a href="index.php">Salir</a></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
        </tr>
        <tr>
          <td>&nbsp;</td>
        </tr>
      </table>
        <div id="contenido">
          <h1 align="center"> LISTAR MEDICOS</h1>
<table width="89%" border="0" align="center">
  <tr align="center" bgcolor="#FFFF99">
    <td width="11%">Identificacion</td>
    <td width="16%">Nombres</td>
    <td width="19%">Apellidos</td>
    <td width="12%">Telefono</td>
    <td width="15%">Correo</td>
    <td width="10%">Especialidad</td>
    <td width="7%">Editar</td>
    <td width="10%">Eliminar</td>
  </tr>
  
  <?php
  
//vamos agregar cada fila de la tabla de acuerdo al número de empleados de forma dinamica
  
while ($medico $resultado->fetch_object())
  {
    
?>
    <tr bgcolor="#4FC3F7">
        
        <td><?php  echo $medico->medIdentificacion  ?></td>
        <td><?php  echo $medico->medNombres  ?> </td>
        <td><?php  echo $medico->medApellidos ?></td>
        <td><?php  echo $medico->medTelefono  ?></td>
        <td><?php  echo $medico->medCorreo  ?></td>
        <td><?php  echo $medico->medEspecialidad  ?></td>
        
        <!--campo oculto que lleva el id para saber que medico se esta editando-->
        <input name="idMedico" type="hidden" value="<?php echo $medico->idMedico  ?>" />
        
        <td align="center"><a href="index.php?pg=frmActualizarMedico1?idMedico=<?php echo $medico->idMedico?>"><img src="Vista/img/editar.jpg" 
        width="29" height="24" /></a></td>
           
        <td align="center"><a href="index.php?pg=eliminarMedico1?idMedico=<?php echo $medico->idMedico?>"><img src="Vista/img/eliminar.png" 
        width="29" height="24" /></a></td>
      </tr>
  <?php
  
}
  
?>
  
</table>  
        </div>
    </div>
    <?php include "Vista/piePagina.php";?></div>    

</body>
</html>