Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/05/2009, 11:11
mat1
 
Fecha de Ingreso: mayo-2009
Mensajes: 3
Antigüedad: 15 años
Puntos: 0
Evitar la duplicidad de usuario

Hola:

Tengo el siguiente codigo:
<?PHP
/* guardar_archivo.php */
$db_conn = require("dbconnect.inc.php");

/*
create table diplomado
(
id number(5) primary key,
claveescuela varchar2(12),
usuario varchar2(16),
contrasena varchar2(16),
nombres varchar2(100),
paterno varchar2(100),
materno varchar2(100),
mail varchar2(200),
estado varchar2(200),
deslaboral varchar2(200),
horasdis varchar2(20),
expectativas varchar2(200),
aplicacion varchar2(200),
fecha date)
*/

/* Variables del formato */
$v_claveescuela = $_POST["v_claveescuela"];
$v_usuario = $_POST["v_usuario"];
$v_contrasena = $_POST["v_contrasena"];
$v_nombres = $_POST["v_nombres"];
$v_paterno = $_POST["v_paterno"];
$v_materno = $_POST["v_materno"];
$v_mail = $_POST["v_mail"];
$v_estado = $_POST["v_estado"];
$v_deslaboral = $_POST["v_deslaboral"];
$v_horasdis = $_POST["v_horasdis"];
$v_expectativas = $_POST["v_expectativas"];
$v_aplicacion = $_POST["v_aplicacion"];

/* Funciones para armar el cuerpo del html */

function encabezado ($titulo)
{
print "<html>
<head>
</head>
<body bgcolor=#FFFFFF>
<center>
<br><h2><b><font color=#000000>Verifique sus datos</font></b></h2>
<hr size=4 width=78%>
<form>
<h1>$titulo</h1>
<input type=button value=Regresar onClick=history.back()>
<form>
</center>
</body>
</html>";
return 0;
}

/*
print "<center><b><font color=#000000 size=8>Inscripciones cerradas</font></b></center>
<input type=button value=Regresar onClick=history.back()>";
*/

function encabezado1 ($titulo)
{
print "<html>
<head>
</head>
<body bgcolor=#FFFFFF>
<center>
<br><h2><b><font color=#000000>El procedimiento tuvo éxito</font></b></h2>
<hr size=4 width=78%>
<form>
<h1>$titulo</h1>
<input type=button value=Regresar onClick=history.back()>
<form>
</center>
</body>
</html>";
return 0;
}

if ($v_claveescuela == '') {
encabezado("Escriba su clave de Red Escolar, por favor.");
}
elseif ($v_usuario == '') {
encabezado("Escriba su usuario, por favor.");
}
elseif ($v_contrasena == '') {
encabezado("Escriba su contraseña, por favor.");
}
elseif ($v_nombres == '') {
encabezado("Escriba su nombre o nombres, por favor.");
}
elseif ($v_paterno == '') {
encabezado("Escriba su apellido paterno, por favor.");
}
elseif ($v_mail == '') {
encabezado("Escriba su correo electrónico, por favor.");
}
elseif ($v_expectativas == '') {
encabezado("Escriba sus expectativas, por favor.");
}
elseif ($v_aplicacion == '') {
encabezado("Escriba su aplicación, por favor.");
}
else {
$v_clave = substr($v_claveescuela, 0, 2);
if ( $v_clave == 21 or $v_clave == 29) {

// Genera el query para insertar datos a la tabla
$cmdstr2 = oci_parse($db_conn,'INSERT INTO DIPLOMADO
(id, claveescuela, usuario, contrasena, nombres, paterno,
materno, mail, estado, deslaboral, horasdis, expectativas, aplicacion, fecha)
VALUES
(S_DIPLOMADO_ID.NEXTVAL, :claveescuela, lower(replace(:usuario,\' \',\'\')),
lower(replace(:contrasena,\' \' ,\'\')), initcap(:nombres), initcap(:paterno),
initcap(:materno), :mail, :estado, :deslaboral, :horasdis, :expectativas, :aplicacion, SYSDATE)
RETURNING fecha INTO :fecha');

// Asigna los valores del post en las variables para insertar los datos reales
oci_bind_by_name($cmdstr2, ':claveescuela', $v_claveescuela);
oci_bind_by_name($cmdstr2, ':usuario', $v_usuario);
oci_bind_by_name($cmdstr2, ':contrasena', $v_contrasena);
oci_bind_by_name($cmdstr2, ':nombres', $v_nombres);
oci_bind_by_name($cmdstr2, ':paterno', $v_paterno);
oci_bind_by_name($cmdstr2, ':materno', $v_materno);
oci_bind_by_name($cmdstr2, ':mail', $v_mail);
oci_bind_by_name($cmdstr2, ':estado', $v_estado);
oci_bind_by_name($cmdstr2, ':deslaboral', $v_deslaboral);
oci_bind_by_name($cmdstr2, ':horasdis', $v_horasdis);
oci_bind_by_name($cmdstr2, ':expectativas', $v_expectativas);
oci_bind_by_name($cmdstr2, ':aplicacion', $v_aplicacion);
oci_bind_by_name($cmdstr2, ':fecha', $fecha, 20);
oci_execute($cmdstr2, OCI_DEFAULT);
encabezado1("Usuario: $v_nombres $v_paterno $v_materno se ha guardado su registro en la base de datos con éxito, con fecha $fecha \n<br> gracias por enviarlo.\n<br>");
}
else {
print "<center><b><font color=#000000 size=8>Verifique su clave de centro de trabajo, por favor, de lo contrario usted no pernenece al estado de puebla o tlaxcala</font></b></center>
<input type=button value=Regresar onClick=history.back()>";
}
}
ocicommit($db_conn);
ocilogoff($db_conn);

?>

Este se conecta a una base de datos en oracle 10, mi pregunta es como le hago para que al llenar mi formulario, si escriben el mismo usuario, le salga el mensaje de usuario ya existente y no lo registe. Por fa ayudenme...