Combo box de base de datos
Hola,
Mientras
esperaba su respuesta he logrado insertar el combo box y me muestra bien las
categorías, El problema es que al grabar me dice
Notice:
Undefined index: categoría in C:\wamp\www\sants\registronew.php on line 8
que hay
problemas y que hay un campo vacío que es el de categorías.
Necesitaría
que me moviera el id y no el nombre de la categoría.
Dejo aquí
los programas.
<?php
include ('conexión.php');
?>
<html>
<head>
<title> Formulario de registro</title>
</head>
<body>
<h1>Formulario de
registro</h1>
<h5>Los campos con (*) son
requeridos.</h5>
<form method="POST" action=""/>
<table>
<tr>
<td>
* Empresa:
</td>
<td>
<input type="name" name="empresa" />
</td>
</tr>
<tr>
<td>
Cif:
</td>
<td>
<input type="text"
name="cif" />
</td>
</tr>
<tr>
<td>
* Usuario:
</td>
<td>
<input type="text"
name="usuario" />
</td>
</tr>
<tr>
<td>
* Contraseña:
</td>
<td>
<input type="password"
name="passwd1" />
</td>
</tr>
<tr>
<td>
* Repetir Contraseña:
</td>
<td>
<input type="password"
name="rpass" />
</td>
</tr>
<tr>
<td>
* Categorías:
<?php include
("buscarcate.php");?>
</td>
</tr>
<tr>
<td>
Descripción:
</td>
<td>
<input type="text"
name="descripción" />
</td>
</tr>
</table>
<input type="submit"
name="submit" value="Registrarse" /> <input
type="reset"/>
</form>
<?php
if(isset($_POST['submit'])) {
include("registronew.php");
}
?>
</body>
------------------------------------------------------------------------
</html>
Registronew.php
<?php
$empresa = $_POST['empresa'];
echo $empresa;
$cif = $_POST['cif'];
$usuario = $_POST['usuario'];
$passwd1 = $_POST['passwd1'];
$reppass = $_POST['rpass'];
$categoría = $_POST['categoría'];
$descripción =
$_POST['descripción'];
$dirección = $_POST['dirección'];
$cod_postal =
$_POST['cod_postal'];
$población = $_POST['población'];
$provincia = $_POST['provincia'];
$teléfono = $_POST['teléfono'];
$fax = $_POST['fax'];
$móvil = $_POST['móvil'];
$mail = $_POST['mail'];
$web = $_POST['web'];
$horario = $_POST['horario'];
$reqlen = strlen($empresa) *
strlen($cif) * strlen($usuario) * strlen($passwd1) * strlen($reppass) *
strlen($categoría) * strlen($descripción) * strlen($dirección) *
strlen($cod_postal) *
strlen($población) * strlen($provincia) * strlen($teléfono) * strlen($fax) *
strlen($móvil) * strlen($mail) * strlen($web) *
strlen($horario);
if
($reqlen > 0) {
if ($passwd1 === $reppass) {
include ("conexión.php");
$passwd1 = md5($passwd1);
mysql_query("INSERT INTO dato_empresa
(empresa, cif, usuario, passwd1, idcategoria, descripción, dirección,
cod_postal, población, provincia, teléfono, fax, móvil, mail, web, horario) VALUES('$empresa', '$cif','$usuario',
'$passwd1', '$categoría'
, '$descripción',
'$dirección', '$cod_postal', '$población', '$provincia', '$teléfono', '$fax',
'$móvil',
'$mail',
'$web', '$horario')");
mysql_close($conexión);
echo
' se ha registrado exitosamente';
}else{
echo 'por favor, introduzca dos contraseñas identicas.';
}
} else {
echo 'por favor rellene todos los campos
requeridos.';
}
?>
-----------------------------------------------------------------------------
<?php
// Conectar
a la base de datos
include
('conexión.php');
// Consultar
la base de datos
$consulta_mysql='select * from
categorías';
$categoría=mysql_query($consulta_mysql,$conexión);
echo "<select
name='categorías'>";
while($fila=mysql_fetch_array($categoría)){
echo "<option
value='".$fila['id']."'>".$fila['categorías']."</option>";
}
echo
"</select>";
?>
En la espera
de sus noticias
Gracias y
cordiales saludos.