How to update records in a database after making the query?

1

I am doing the data update of a record in my database but before I need to obtain the data of that record in its fields respective this is my database.

Field             type         key   default
servicio_No       int(11)      PRI     NULL
tipo_Ambulancia   Varchar(5)           NULL
tipo_Traslado     varchar(20)          NUll
cliente           varchar(45)          NULL
fecha_Solicitud   date                 NULL

consult.php

    <html>

<head>
    <title>Inicio Consulta.</title>
    <meta http-equiv="Content-type" content="text/html"; charset="utf-8">
    <link rel="stylesheet" type="text/css" href="estilos.css">

</head>
<body class="body">

            <form class="form" method="POST" action="servicioConsultado.php">

              <h1>Consultando Servicio</h1>

                    <label>Servicio No: </label>

                    <input type="text" REQUIRED name="id" size="20" class="input">           

                    <input type="submit" value="Consultar" name="btn-consultar" class="submit">                                     
       </form>

</body>
</html> 

Modification format.php

<html>
<head>
    <title>Consultando Servicio...</title>
    <meta http-equiv="Content-type" content="text/html"; charset="utf-8">
</head>
<?php 
echo "<body>";
//Conexion a la base de datos
$conexion =  mysqli_connect("localhost", "root","admin123","database");
//Validamos la conexion a la base de datos
if (mysqli_connect_errno()) {
    echo 'Fallo la conexion a la base de datos';
}
//Limpiamos y Recibimos por POST los datos procedentes del formulario 
$id = mysqli_real_escape_string($conexion, $_POST['id']);

    $query = "SELECT servicio_No, hora, tipo_Ambulancia, tipo_Traslado, horario, cliente, fecha_Solicitud FROM servicio WHERE servicio_No = ?";
    /*Prepara la setencia SQl para su ejecucion*/
if ($stmt = mysqli_prepare($conexion, $query)) {

    /*Agrega variables a una sentencia preparada como parametros*/
    /* ligar parámetros para marcadores */
    /*IMPORTANTE: Si id no es numérico en la base de datos, cambia la i por una s*/
    mysqli_stmt_bind_param($stmt, "i", $id);

    /* Ejecuta una consulta preparada */
    mysqli_stmt_execute($stmt);

    /*Se transfiere los  resultados de la ultima consulta*/
    $stmt->store_result();

    /* Vincula las variables a una setencia preparada para el almacenamineto de result */
    $stmt->bind_result($servicio_No, $hora, $tipo_Ambulancia, $tipo_Traslado, $horario, $cliente, $fecha_Solicitud);
     while ($stmt->fetch()) {
        echo "
     <body class='body'>
        <h1>Regulacion</h1>
        <form method='POST' action='modificarServicio.php'  class='form'>

    <label>Servicio No:<input type='text' name='servicio_No' value='".$servicio_No."' style='width: 2%'></label>


    <label style='margin-left: 1%'>Tipo Ambulancia:</label>
        <select name='tipo_Ambulancia'>
            <option value='".$tipo_Ambulancia."'>TAB</option>   
            <option value='".$tipo_Ambulancia."'>TAM</option>
        </select></br>

    <br><label>Tipo Traslado:</label>
        <select name='tipo_Traslado'>
            <option value='".$tipo_Traslado."'>Simple</option>
            <option value='".$tipo_Traslado."'>Doble</option>
            <option value='".$tipo_Traslado."'>Asistencia</option>
            <option value='".$tipo_Traslado."'>Evento</option>
        </select>
    <label style='margin-left: 1%'>Cliente:</label>
    <select name='cliente'>
        <option value='".$cliente."'>Particular</option>
        <option value='".$cliente."'>EMP Medisanitas</option>
        <option value='".$cliente."'>ARL Colmena</option>
        <option value='".$cliente."'>AXA</option>
        <option value='".$cliente."'>PEPS Sanitas</option>
        <option value='".$cliente."'>San Esteban</option>
        <option value='".$cliente."'>EMP Colsanitas</option>
        <option value='".$cliente."'>HSVF Medellin</option>
        <option value='".$cliente."'>Hospital Pablo Tobon Uribe</option>
        <option value='".$cliente."'>Seguros De Vida Suramerica</option>
        <option value='".$cliente."'>EPM</option>
        <option value='".$cliente."'>Clinica Rosario</option>
        <option value='".$cliente."'>Coosalud</option>
        <option value='".$cliente."'>HSVF Rionegro</option>
        <option value='".$cliente."'>Clinica Sagrado Corazon</option>
        <option value='".$cliente."'>Sky Ambulance</option>
        <option value='".$cliente."'>Quirofanos el tesoro</option>
    </select>

    <label style='margin-left: 1%'>Fechar Solicitud:<input type='text' name='fecha_Solicitud' value='".$fecha_Solicitud."'></label>
    <input type='submit' value='Modificar' class='submit'>
    </form>  
    ";
    } 

}else{
    echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=http://localhost/Aeroasistencia/Servicios/consultarServicio.php">
         <script>
                    alert("El servicio no existe");
         </script>';
}
//Cerramos la conexion con la base de datos
mysqli_close($conexion);
?>

modifyService.php

     <?php
    //Conexion a la base de datos
    $conexion =  mysqli_connect("localhost", "root", "admin123", "database");
    //Validamos la conexion a la base de datos
    if (mysqli_connect_errno()) {
        echo 'Fallo la conexion a la base de datos';
    }
                ////Limpiamos y Recibimos por POST los datos procedentes del formulario 
                $servicio_No = $_POST['servicio_No'];
                $tipo_Ambulancia = $_POST['tipo_Ambulancia'];
                $tipo_Traslado = $_POST['tipo_Traslado'];
                $cliente = $_POST['cliente'];
                $fecha_Solicitud = date('Y-m-d');

    mysqli_query($conexion,"UPDATE servicio SET servicio_No ='$servicio_No', 
                                                            tipo_Ambulancia = '$tipo_Ambulancia', 
                                                            tipo_Traslado = '$tipo_Traslado', 

                                                            cliente = '$cliente',
                                                            fecha_Solicitud = '$fecha_Solicitud', 
                                                            WHERE 
                                                            servicio_No = '$servicio_No'") or die("ERROR AL ACTUALIZAR");

    mysqli_close($conexion);                                                            
?>                      
                <META HTTP-EQUIV="Refresh" CONTENT="0; URL=http://localhost/Aeroasistencia/Servicios/index.php">
                <script>
                    alert("Se ha ACTULIZADO CORRECTAMENTE");

                </script>
    
asked by Cristian Antonio Trujillo Gris 16.07.2018 в 17:53
source

1 answer

1

The problem is how are you building the select . You are putting the same value to all the options. I leave an example with the first option:

<select name='cliente'>
    <option value='Particular' " 
        . ($cliente == 'Particular' ? "selected" : "") . ">Particular</option>
                 // Aqui van todas las otras opciones
                 // con un formato similar
                 // 
</select>

So you should build all the other options.

    
answered by 16.07.2018 / 18:10
source