Hola, tengo hecha esta función para buscar en una tabla si el valor introducido en un input existe ya en la tabla. (no debe existir porque es el campo clave, y no puede haber 2 valores iguales.)
Código PHP:
<?php
$w_clase = $_POST["w_clase"];
$w_valor = $_POST["w_valor"];
$w_campo = $_POST["w_campo"];
echo $w_clase.",".$w_valor.",".$w_campo;
$encontrado = 0;
include_once("../clases/dbmanager.php");
$conex = new dbmanager;
if($conex->conectar()==true){
$consulta = "select ". $w_campo." from " . $w_clase;
$resultado = mysql_query($consulta);
if(!$resultado)
die("Invalid query: " . mysql_error());
else
while($row=mysql_fetch_array($resultado)){
if($row[0]==$w_valor){
$encontrado = 1;
}
}
}
echo $encontrado;
?>
Esta función va correctamente, pero recorre todos los registros de la tabla, aunque haya encontrado una coincidencia en la primera iteración.
Entonces si en el while añado otra condición
Código PHP:
while($row=mysql_fetch_array($resultado)&& $encontrado != 0)
Para que si ha encontrado una coincidencia, parase. La función falla.
He repasado, pero la verdad es que no veo el fallo.
Alguien ve el porque?
Un saludo, gracias.