Validar un campo de texto en php

Me gustaría validar un campo si existe en mi base de datos que me mande un mensaje y en automático me bloque el siguiente campo este es mi formulario:

<form name="formulario" id="formulario" action = "" method="post" >
<table width="100%" border="0">
<tr>
<td width="13%">Numero</td>
<td width="15%"><input type="text" name="numero" id="numero" size="10" maxlength="8"></td>
<td width="14%" height="50"><p>&nbsp;</p> </td>
<td width="58%"><p>
<label></label>
</p> </tr>
<tr>
<td>Empresa</td>
<td><select name="empresa" id="empresa" onKeyPress="modForm(this.value)">
<option value="" selected>Elija Empresa</option>
<option value="Telmex">Telmex</option>
<option value="sabritas">sabritas</option>
<option value="alpura">alpura</option>
</select>
<input name="Enviar" type="submit" id="Enviar" value="Enviar" ">
<input name="reset" type="reset"value="Limpiar" >
</form>

Entonces si llenan el campo de numero y esta en mi base de datos que me mande un mensaje a un lado diciendo usuario disponible y si el usuario ingresa el numero y no esta en mi base de datos que me mande un mensaje de usuario no existente y me bloque el siguiente campo que es el combobox de empresa para que no pueda elegir (no la e conectado a mi base)

1 respuesta

Respuesta
1

¿Usas jquery para trabajar con javascript?

en algunas veses

Podrías trabajar con ajax.

Al trabajar con algún lenguaje de servidor que te permita realizar la sentencia sql para validar si el valor del campo de texto existe anteriormente en la base de datos.

Tu formulario quedaría así:

<form name="formulario" id="formulario" action = "" method="post" >
<table width="100%" border="0">
<tr>
<td width="13%">Numero</td>
<td width="15%"><input type="text" name="numero" id="numero" size="10" maxlength="8">
<div id="txt_val"></id>
</td>
<td width="14%" height="50"><p>&nbsp;</p> </td>
<td width="58%"><p>
<label></label>
</p> </tr>
<tr>
<td>Empresa</td>
<td><select name="empresa" id="empresa" onKeyPress="modForm(this.value)">
<option value="" selected>Elija Empresa</option>
<option value="Telmex">Telmex</option>
<option value="sabritas">sabritas</option>
<option value="alpura">alpura</option>
</select>
<input name="Enviar" type="submit" id="Enviar" value="Enviar" ">
<input name="reset" type="reset"value="Limpiar" >
</form>

Crea un archivo javascript con lo siguiente:

$(document).ready(function(){
 $("#numero").blur(function(){
 $.ajax({
 type: "POST",
 url: "valida_numero.php",
 data: { valor: $("#numero").val()}
 })
 .done(function( msg ) {
 $("#txt_val").html(msg);
 });
 });
});

Crea un archivo php llamado valida_numero.php

<?php
if ($_POST){
function conectarse(){
if(!$conect=mysql_connect("localhost","",""))
die("Error en conexión a base de datos");
if(!mysql_select_db("escuela",$conect))
die("Error al seleccionar base de datos");
@mysql_query("SET NAMES 'utf8'");
return $conect;
}
$conexión=conectarse();
$resultado = mysql_query('SELECT count(*) from tabla where numero='.$_POST["numero"]);
$fila = mysql_fetch_row($resultado);
if($fila[0] == 1){
echo "Numero existe";
}else{
echo "numero no existe";
}

no me hace nada

¿Has cargado jquery y el archivo javascript a tu script principal?

ok ya me quedo ahora como bloqueo el campo combobox cuando no esta en mi base de datos

Cierto, había equivocado ese dato. Haz lo siguiente.

Cambia el php y haz esto

¿
<?php
if ($_POST){
function conectarse(){
if(!$conect=mysql_connect("localhost","",""))
die("Error en conexión a base de datos");
if(!mysql_select_db("escuela",$conect))
die("Error al seleccionar base de datos");
@mysql_query("SET NAMES 'utf8'");
return $conect;
}
$conexión=conectarse();
$resultado = mysql_query('SELECT count(*) from tabla where numero='.$_POST["numero"]);
$fila = mysql_fetch_row($resultado);
if($fila[0] == 1){
echo "true";
}else{
echo "false";
}

Cambia el javascript por lo siguiente

$(document).ready(function(){
 $("#numero").blur(function(){
 $.ajax({
 type: "POST",
 url: "valida_numero.php",
 data: { valor: $("#numero").val()}
 })
 .done(function( msg ) {
 if(msg=="true"){
$("#txt_val").html("El numero existe);
$("#empresa").removeAttr('disabled');
}else{
$("#txt_val").html("el numero no existe");
$("#empresa").prop("disabled", true);
}
 });
 });
});

Veamos si funciona

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas