PHP - Ayuda registro incidencias

 
Vista:
sin imagen de perfil
Val: 133
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por Alejandro (73 intervenciones) el 22/11/2016 11:14:58
Hola, estoy haciendo un proyecto de una pequeña intranet con una base de datos y una de las partes es el poder registrar mediante un formulario incidencias con equipos informáticos.

Tengo un formulario que funciona correctamente pero en la parte de rellenar el cliente. Me gustaría que me saliese una lista desplegable para seleccionar solo los clientes que tengo creados en otra tabla de la base de datos.

Os envió el código del formulario que tengo ahora y unas fotos de las tablas en mi DB.

PD: Tengo puesto en el código que si detecta que el numero de serie que meto ya esta en la tabla de incidencias salte a la pagina que informa del error. Pero no funciona y me deja registrar la incidencia aunque coincida el numero de serie. Si podéis ayudarme con eso también perfecto.

HTML:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<html>
<head>
<meta charset="utf-8">
<title>Nueva Incidencia</title>
<link href="css/estilo2.css" rel="stylesheet" type="text/css">
</head>
 
<body>
<div class="group">
  <form action="incidencia.php" method="POST">
  <h2><em>Introduzca incidencia</em></h2>
 
      <label for="tecnico">Tecnico <span><em>(requerido)</em></span></label>
      <input type="text" name="tecnico" class="form-input" required/>
 
	  <label for="cliente">Cliente <span><em>(requerido)</em></span></label>
      <input type="text" name="cliente" class="form-input" />
 
      <label for="equipo">Equipo <span><em>(requerido)</em></span></label>
      <input type="text" name="equipo" class="form-input" />
 
	    <label for="serie">N Serie <span><em>(requerido)</em></span></label>
      <input type="text" name="serie" class="form-input" />
 
	  <label for="problema">Problema <span><em>(requerido)</em></span></label>
      <input type="text" name="problema" class="form-input" />
 
	  <label for="fecha">Fecha <span><em>(requerido)</em></span></label>
      <input type="text" name="fecha" class="form-input" />
     <center> <input class="form-btn" name="submit" type="submit" value="Suscribirse" /></center>
    </p>
  </form>
</div>
</body>
</html>



PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
$db_host="localhost";
$db_user="alex";
$db_password="admin";
$db_name="intranet";
$db_table_name="incidencias";
 
$db_connection = mysql_connect($db_host, $db_user, $db_password);
 
if (!$db_connection)
 {
	die('No se ha podido conectar a la base de datos');
 }
$subs_user = utf8_decode($_POST['cliente']);
$subs_tecnic = utf8_decode($_POST['tecnico']);
$subs_equip = utf8_decode($_POST['equipo']);
$subs_serie = utf8_decode($_POST['serie']);
$subs_problem = utf8_decode($_POST['problema']);
$subs_date = utf8_decode($_POST['fecha']);
 
$resultado=mysql_query("SELECT * FROM ".$db_table_name." WHERE nserie = '".$subs_serie."'", $db_connection);
 
if (mysql_num_rows($resultado)>0)
{
 
header('Location: Fail.html');
 
}
else
 
	$insert_value = 'INSERT INTO `' . $db_name . '`.`'.$db_table_name.'` (`cliente` , `tecnico` , `equipo`, `incidencia` , `nserie` , `fecha` ) VALUES ("' . $subs_user . '", "' . $subs_tecnic . '", "' . $subs_equip . '" , "' . $subs_problem . '" , "' . $subs_serie . '", "' . $subs_date . '")';
 
mysql_select_db($db_name, $db_connection);
$retry_value = mysql_query($insert_value, $db_connection);
 
if (!$retry_value) {
   die('Error: ' . mysql_error());
}
 
header('Location: Success.html');
 
 
 
mysql_close($db_connection);
 
?>






base-1
base-2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por xve (6935 intervenciones) el 22/11/2016 15:00:07
Hola Alejandro, tu problema esta en que cuando compruebas si existe en la tabla, todavía no has seleccionado la base de datos!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Lawliet
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por Lawliet (351 intervenciones) el 22/11/2016 19:11:19
Hola...

Tiene razón el compañero xve, no has seleccionado la base de datos, aunque veo que si realizas la selección pero ya después de realizar todas tus consultas. Cambia de lugar la línea 33 y coloca en la siguiente...

1
2
3
4
5
6
7
8
9
10
11
if (!$db_connection)
 {
	die('No se ha podido conectar a la base de datos');
 }
mysql_select_db($db_name, $db_connection);
$subs_user = utf8_decode($_POST['cliente']);
$subs_tecnic = utf8_decode($_POST['tecnico']);
$subs_equip = utf8_decode($_POST['equipo']);
$subs_serie = utf8_decode($_POST['serie']);
$subs_problem = utf8_decode($_POST['problema']);
$subs_date = utf8_decode($_POST['fecha']);

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 133
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por Alejandro (73 intervenciones) el 23/11/2016 10:01:32
Gracias, cierto ahi tenia un fallo, pero mi principal duda es como hacer a la hora de meter el cliente, me salga una lista desplegable con el nombre de los clientes ya registrados en la otra tabla. Para seleccionar uno de ellos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 133
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por Alejandro (73 intervenciones) el 23/11/2016 10:03:41
Gracias. ¿Y para el tema de la lista desplegable en la parte Cliente: del formulario para selecionar el nombre de un cliente de la otra tabla y enviar la información.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Lawliet
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda registro incidencias

Publicado por Lawliet (351 intervenciones) el 23/11/2016 19:14:04
Hola...

Si lo que necesitas es un combo donde puedas desplegar tus clientes y seleccionar alguno en especifico, a través de una base de datos, este sería el código...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
	<head>
		<title>Select</title>
	</head>
	<body>
		<select>
			<?php
				$conn = mysqli_connect("localhost","root","","practicas");
				$result = mysqli_query($conn,"SELECT * FROM usuario");
				while($row = mysqli_fetch_array($result)){
					echo "<option value='".$row['id_user']."'>".$row['nombre']."</option>";
				}
				mysqli_close($conn);
			?>
		</select>
	</body>
</html>

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar