Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Mostrar registros disponibles en la base de datos con php

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
1000
Visitas
4
Resp
Por Ossama hace 72 meses
Principiante
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 72 meses
Administrador
Respuesta #2
sorry cambie el título para ser mas descriptivo :P
0
Puntos
Por alber hace 72 meses
Administrador
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 72 meses
Administrador
Respuesta #4
Muchas gracias lo intentaré
0
Puntos
Por Ossama hace 72 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate