Tengo un formulario alojado en Linux que tiene distintos campos (nombre, email y checkbox). Los datos que se recojan del formulario van a una base de datos SQL alojada en Windows. Ambos servidores están en la misma red, por lo que para hacer este paso de introducir los datos del formulario en la bd, utilicé este código:
<?php
$con = mysqli_connect("192.168.0.3", "vmb", "vmb2", "logytel") or die ("Problemas al conectar");
$resultado = mysqli_query($con, "SELECT * FROM prueba");
//recuperar las variables
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$instalacion=$_POST['instalacion'];
$fallo_fisico=$_POST['fallo_fisico'];
//Hacer secuencia sql
$sql="INSERT INTO prueba (nombre, email, checks) VALUES ('{$nombre}', '{$email}', '{$instalacion}', '{$fallo_fisico}')";
//ejecutamos la sentencia de sql
$ejecutar=mysqli_query($con,$sql);
//verificamos la ejecucion
if(!$ejecutar){
echo"Hubo Algun Error";
}else{
echo"Datos Guardados Correctamente<br><a href='index.html'>Volver</a>";
}
?>
Entonces estuve buscando el cómo hacerlo al revés. Introducir un campo, por ejemplo, un select, para que aparezcan los datos registrados en la base de datos. He estado buscando, pero solo encuentro la parte php-sql y no al revés.
Pondré un ejemplo práctico para que se me entienda mejor: Tengo un formulario que utilizarán los trabajadores que salgan de la empresa a revisar los equipos. En el campo Para ahorrarle trabajo al empleado, se introducirá un campo en el que puedan escribir parte de su nombre y automáticamente, conectado a la bd correspondiente, le aparezca su nombre como sugerencia a introducir.
Este es mi html:
<html>
<head>
<title>Formulario</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="estilo.css">
</head>
<body>
<div class="form">
<form method="POST" id="formulario" name="formulario" role="form">
<div class="row">
<div class="col-md-12">
<div class="col-md-6">
<br><br>
<br><label for="nombre">Su nombre</label>
<input type="text" name="nombre" placeholder="Nombre" required class="form-control">
</div>
<div class="col-md-6">
<a title="Logytel" href="http://logytel.es"><img class="logytel" src="https://i2.wp.com/logytel.es/wp-content/uploads/2018/06/cropped-LOGO_Logytel_2012_R_485C_24x10_8_Blanco.png" alt="Logytel" /></a>
</div>
</div>
</div>
<br><p>¿El equipo está correctamente instalado?</p>
<div class="row">
<div class="col-md-12">
<div class="col-md-2">
<br><label class="container">Sí
<input type="checkbox" name="instalacion" value="1"> <br>
<span class="checkmark"></span>
</div>
<div class="col-md-3">
<br><label class="container">No
<input type="checkbox" name="instalacion" value="0"> <br>
<span class="checkmark"></span>
</div>
<div class="col-md-7">
<br><br>
<br><label for="email">Correo electrónico</label>
<input type="email" name="email" placeholder="[email protected]" required class="form-control">
</div>
</div>
</div>
<p>¿El equipo tiene algún fallo físico?</p>
<div class="row">
<div class="col-md-12">
<div class="col-md-2">
<br><label class="container">Sí
<input type="checkbox" name="fallo_fisico" value="1"> <br>
<span class="checkmark"></span>
</div>
<div class="col-md-3">
<br><label class="container">No
<input type="checkbox" name="fallo_fisico" value="0"> <br>
<span class="checkmark"></span>
</div>
</div>
</div>
<button id="myBtn" class="button" input type="submit" value="Enviar" name="resultado">Enviar</button>
</form>
</div>
</body>
</html>
Version de PHP: 7 MySQL Server Windows Formulario alojado en Fedora 28 Base de datos alojada en Windows Server 2008r2