Ver Mensaje Individual
  #15 (permalink)  
Antiguo 22/09/2014, 18:38
jchaux12
 
Fecha de Ingreso: septiembre-2014
Ubicación: Valencia
Mensajes: 12
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Problema con Sintaxis de PHP y MYSQL

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Primer consejo básico: Usa un editor que tenga corrector sintáctico. No uses el notepad o cualquier cosa para escribir código.
A estas alturas, existen demasiados editores de uso libre muy potentes, que te pueden solucionar errores básicos como el que tiene tu código a nivel PHP...

Código PHP:
$query mysql_query("SELECT joyas.ID,Nombre,Precio,Peso,Quilates,Sexo,Estado,Estante,Marca,Material,FechaEntrada,Descripcion,FechaSalida FROM joyas,marcas,estantes,estados,sexos,materiales WHERE
(CONVERT(Nombre USING utf8) LIKE '%$nombre%')
AND joyas.idMarca=marcas.ID
AND joyas.idEstante=estantes.ID
AND joyas.idEstado=estados.ID
AND joyas.idSexo=sexos.ID
AND joyas.idMaterial=materiales.ID
OR joyas.ID='"
.$id."'
AND joyas.idMarca=marcas.ID
AND joyas.idEstante=estantes.ID
AND joyas.idEstado=estados.ID
AND joyas.idSexo=sexos.ID
AND joyas.idMaterial=materiales.ID
ORDER BY joyas.ID ASC"
,$connect); 
¿Cuál era el error?
Este:
Código PHP:
" LIKE '%"$nombre%"')" 
debía ir así:
Código PHP:
" LIKE '%$nombre%')" 
o bien:
Código PHP:
" LIKE '%".$nombre."%')" 
¿Se entiende?

Lo siento, pero para muchos de nosotros, eso es una justificación, no una razón.
Puedes estudiar quince días un lenguaje y obtener suficiente práctica como para hacer ejercicios como este sin problemas.
El problema no es la base del lenguaje, sino lógica proposicional, que no se aprende leyendo manuales. Es algo que te dan en la escuela, y que luego aplicas como programador todo el tiempo. Y por todo el tiempo me refiero a TODO el tiempo.
Es imposible programar nada sin entender el uso de operadores lógicos AND y OR.
El primer codigo te lo has inventado por que en ningun momento lo he puesto así, te recomiendo que revises los codigos que he pasado, no voy a darme cuenta que lo he puesto
Código PHP:
" LIKE '%"$nombre%"')" 
de esta manera. Ese codigo no lo he puesto yo.

Las soluciones que das ya las he probado!! NO FUNCIONAN!. EL CONVERT ME LO TOMA BIEN PERO EL OR DEJA DE FUNCIONAR!

Creo que deberias de leer mejor por que sino no nos entendemos jeje
Saludos.