Para comprobar si el campo "nombre" ya existe puedes hacerlo con una consulta antes del hacer tu
insert a la base de datos:
Código PHP:
$sql = "SELECT clave FROM doctores WHERE nombre='$nombre'";
$result = mysql_query($sql);
if($row = mysql_fetch_array($result))
{
header ("Location: $redir?error_login=9");
exit;
}
else{
$result=mysql_query("INSERT INTO doctores (vendedor,fecha,nombre,calle,numero,colonia,delegacion,telefono,correo)
VALUES ('.$vendedor.','.$fecha.','.$nombre.','.$calle.','.$numero.','.$colonia.','.$delegacion.','.$telefono.','.$correo.')",$conexion);
}
En el código, si encuentra el campo "nombre" en la base de datos, redirecciona a un error, de lo contrario haces el
insert.
header ("Location: $redir?error_login=1") es un archivo php que define los errores. Este archivo yo lo llamo desde el formulario de manera de que el mensaje "ya existe nombre" aparezca en el mismo formulario. La manera de insertarlo en el formulario sería:
Código PHP:
<tr>
<td>
<div align="center">
<?
// Mostrar error
include ("mensaje_error.inc.php");
if (isset($_GET['error_login'])){
$error=$_GET['error_login'];
echo "<font face='Verdana, Arial, Helvetica, sans-serif' size='2'color='#FF0000'> Error:$error_login_ms[$error]";
}
?>
</div>
</td>
</tr>
y En la página donde haces el
insert debes definir la variable $redir que es la página donde mostrará el mensaje de error (que muy probablemente sea la página anterior, donde tienes el formulario):
Código PHP:
$pag_referida=$url[0];
$redir=$pag_referida;
Y el archivo mensaje_error.inc.php lo estructuras así:
Código PHP:
<?
// Mensajes de error.
$error_login_ms[0]=" El nombre ya existe";
.
.
.
?>
Espero haberte ayudado. Cualquier duda no tardes en comentar, sé que no soy muy bueno explicando... lo sé, así que no dudes en preguntar.
Saludos.