No entiendo el error de MySQL en el código de la validación de una consulta

Tengo el siguiente caja de texto que quiero validar dela siguiente forma
Ingreso ip:
<html>
<head>
<title>//</title>
<script>
function chk_usuario(){
var pos_url = 'run.php';
var nombre = document.getElementById('ip').value;
var req = new XMLHttpRequest();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4 && (req.status == 200 || req.status == 304)) {
document.getElementById('resultado').innerHTML = req.responseText;
}
}
req.open('GET', pos_url +'?Ipvalidar='+nombre,true);
req.send(null);
}
}
</script>
</head>
<body>
<p> </p>
<form id="form1" name="form1" method="post" action="">
  Comprueba si existe la IP<br />
  <input name="ip" type="text" id="ip" onKeyUp="chk_usuario();"/>
  <br />
<div id='resultado'></div>
<input type="submit" name="Submit" value="Enviar" />
</form>
<p> </p>
</body>
</html
y el php que valida es este
Validaip.php
<?php require_once('../Connections/conexion.php');
$sql="SELECT FROM clientes WHERE Ip_rf="[email protected]$_REQUEST['Ipvalidar']."";
$consulta=mysql_query($sql,$conexion) or die (mysql_error());
$dato=mysql_result($consulta,0);
if ($dato >
=1){
echo @$_REQUEST['Ipvalidar'].' - Ip Libre';
}else{
echo @$_REQUEST['Ipvalidar'].' - Ip ocupado';
}
mysql_close($conexion);
?>
Este es el error
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM clientes WHERE Ip_rf=192.168.14.121' at line 1
Se que es de sintaxy pero he verificado y no doy.
1

1 Respuesta

25.825 pts. DESARROLLO WEB PROGRAMACIÓN WEB HOSTINGS Y DOMINIOS...
$sql="SELECT FROM clientes WHERE Ip_rf='".$_GET["Ipvalidar"]."'";
Solo es el uso de las comillas
Nada sale el mismo error
Intente de la siguiente forma pero no mevalida si coloco la ip 192.168.14.121 debe decirme que esta ocupada y sale libre
el código que es toy utilizando php para valida r es este
$usuarios = mysql_query("Select * from clientes where Ip_rf = '"[email protected]$_REQUEST['Ipvalidar']."'",@$conexion);
$dato=mysql_result($consulta,0);
if ($dato >=1){
echo @$_REQUEST['Ipvalidar'].' - Ip Libre';
}else{
echo @$_REQUEST['Ipvalidar'].' - Ip ocupado';
}
mysql_close($conexion);
Quita todas las @
Y request ya fue desechado en las nuevas versiones de PHP, ahora debes usar solo _POST Y _GET
Así como yo te deje la consulta debería funcionar, el error que te marca es que te falta una ' al inicio de la ip '0.0.0.0'

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas