Cita:
Iniciado por jeixuxspn
Bueno si vamos a un caso real un dni no es ni muchos menos un entero, ya que este se compone de 8 números y una letra, por lo que estará obligado a hacer una comparación de cadenas.
Código PHP:
$query = "SELECT * FROM control where dni='$dni'"; // ---> Pues esto a veces falla
//es igual a:
$query = "SELECT * FROM control where dni='".$dni."'";
No tiene sentido concatenar variables usando comillas dobles, ya que PHP sabe que adentro de la cadena entre comillas dobles tiene que buscar los nombres de las variables declaradas.
Si el código es muy extenso se traduce en alta carga para el servidor.
Lo correcto seria usar comillas simples y concatenar las variables
Código PHP:
$query = 'SELECT * FROM `control` where `dni`=\''.$dni.'\'';