Hola amigos!

Primero que nada decir que soy ultra novato programando llevo un par de meses aprendiendo y no se si la pregunta será muy básica :P, les cuento tengo un sistema donde se ingresa el nombre, apellido e IP ,este ultimo se selecciona por un combo select obtenido de la base de datos, por medio de un formulario, mi idea es eliminar las IP a medida que se utilicen para así no tener duplicidad. Ojala me puedan orientar. Gracias!
<?php
include ('conexion.php');

error_reporting(E_ALL ^ E_NOTICE);

$resultado = mysqli_query($conexion, ("SELECT * FROM listado_ip"));

$sql = "INSERT INTO funcionario (nombre, apellido, listado_ip_id) 
VALUES('".$_POST['nombre']."','".$_POST['apellido']."','".$_POST['ip']."')"; 

$resultado2 = mysqli_query($conexion, $sql);

$resu = mysqli_query ($conexion, ("SELECT * FROM funcionario INNER JOIN listado_ip ON funcionario.listado_ip_id = listado_ip.id"));

$disponible = mysqli_query ($conexion, "SELECT * FROM funcionario RIGHT JOIN listado_ip ON funcionario.listado_ip_id = listado_ip.id where funcionario.id is NULL");

?>
<!--CUERPO HTML-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <link rel="stylesheet" href="css/bootstrap.min.css">
    <link rel="stylesheet" href="estilo.css">
    
        <title>Inventario de IP</title>
        
    </head>
<body>
  
   <div class="container col-md-5">
        <header>
           <br>
               <center>
                   <h1>Asignación de IP</h1>
               </center>
       </header>
       
                        <div class="login-page">
                            <div class="form">
                                <form class="login-form"action="index.php" method="post" name="">
                                   
                                       <div class="form-group">
                                            <input class="form-control" type="text" name="nombre" placeholder="Nombre:">
                                           </div>
                                            
                                        <div class="form-group">
                                            <input class="form-control" type="text" name="apellido" placeholder="Apellido:"> 
                                        </div>
                                        
    
                                        
                                        <div class="form-group">
                                               <select class="form-control" name="ip">
                                                <?php
                                                  while($consulta = mysqli_fetch_assoc($resultado))
                                                      { 
                                                ?>
                                                     <option value='<?php echo $consulta['id']  ?>' ><?php echo $consulta['ip']?></option>
                                                <?php 
                                                     } 
                                                ?> 
                                                      
                                            </select>
                                            
                                        </div>
                                   
                                     
                                   <center>
                                         <button  type="submit" class="btn btn-success">Registrar</button>
                                         <a href="http://localhost/pruebas/ipes/busqueda.php" class="btn btn-success">Buscar</a>
                                    </center>
                                     <br> 
     
                                 
                                        <div class="container">
                                               <div class="error bg-warning">
                                                   <?php
                                                    if(isset ($_POST ['nombre'])){
                                                    $nombre = $_POST['nombre'];
                                                    $apellido = $_POST ['apellido'];

                                                    $campos = array();

                                                    if($nombre == "") {
                                                        array_push($campos, "ERROR: Ingrese Nombre <br>");
                                                    }

                                                    if($apellido == "") {
                                                        array_push($campos, "ERROR: Ingrese Apellido <br>");
                                                    }

                                                    if(count($campos) > 0){
                                                        for($i = 0; $i < count($campos); $i++){
                                                            echo$campos[$i];
                                                        }

                                                    }else{
                                                        echo"Datos Correctos";
                                                    }
                                                       }
                                                       ?>
                                                </div>
                                        </div>
                                    
                                </form>
                            </div>
                        </div>
        </div>
        
<script src="js/jquery-3.3.1.min.js" ></script>
<script src="js/bootstrap.min.js"></script>

</body>
</html>

Editado
0
Puntos
974
Visitas
4
Resp
Por ossama hace 7 años
Novice
Respuesta #1
hola, yo lo haría mucho mas sencillo, crearía otra columna mas en la tabla listado_ip llamada "estado" por ejemplo con valor predeterminado 0 (disponible)

para sacar las ip disponibles tienes que cambiar la consulta de esta manera:
$resultado = mysqli_query($conexion, ("SELECT * FROM listado_ip WHERE estado=0"));

después al insertar el funcionario marcar esa ip como 1 (no disponible), es decir después de esto:
$sql = "INSERT INTO funcionario (nombre, apellido, listado_ip_id) 
VALUES('".$_POST['nombre']."','".$_POST['apellido']."','".$_POST['ip']."')";
haces algo como esto:
//ACTUALIZAR REGISTRO
$ipusada=$_POST['ip'];
$update = mysqli_query($conexion,"UPDATE listado_ip SET estado=1 WHERE ip=$ipusada") or die(mysqli_error());
de esta manera para el siguiente filtrado esa ip no estará disponible por estar marcada en 1 (en uso)

salu2
1
Puntos
Por alber hace 7 años
Admin
Respuesta #2
sorry cambie el título para ser mas descriptivo :P
0
Puntos
Por alber hace 7 años
Admin
Respuesta #3
disculpa, cuando haces el update tienes que pasar el estado=1 (ip usada)

eh actualizado mi primera respuesta que me acabo de dar cuenta que faltó eso
0
Puntos
Por alber hace 7 años
Admin
Respuesta #4
Muchas gracias lo intentaré
0
Puntos
Por ossama hace 7 años
Novice
Para comentar Inicia sesión o Regístrate
Phpres 2025@ All rights reserved.
Utilizamos cookies para mejorar la navegación en el sitio. Más información Aceptar