Tengo un dilema con una configuración en el servidor de mi proveedor de hosting. En la sección de las variables de phpmyadmin está la opción de sql_mode, la cual tiene el siguiente valor:
sql_mode = ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_I N_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
el cuál no me permite mostrar información en una página cuando la opción: ONLY_FULL_GROUP_BY está activa en ese valor, por lo cual tengo que eliminarla para que pueda mostrar la información en la página, quedando de la siguiente forma:
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DAT E,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER ,NO_ENGINE_SUBSTITUTION
Esto, porque al parecer se vuelve a cargar la cadena completa en el servidor cada cierto tiempo. Mi consulta a la base de datos ya la modifiqué en dos ocasiones y el resultado es el mismo. Mi código es este:
Código PHP:
if(isset($_POST['filtrar'])){
$param1 = trim(mysqli_real_escape_string($conn, $_POST['marcas']));
$param2 = trim(mysqli_real_escape_string($conn, $_POST['modelos']));
$param3 = trim(mysqli_real_escape_string($conn, $_POST['inicial']));
$param4 = trim(mysqli_real_escape_string($conn, $_POST['menu']));
if(empty($param1)){ $marcas = ""; } else { $marcas = " AND prod.marca_coche = '" . $param1 . "' "; }
if(empty($param2)){ $modelos = ""; } else { $modelos = " AND prod.modelo = '" . $param2 . "' "; }
if(empty($param3)){ $anios = ""; } else { $anios = " AND anio = '" . $param3 . "' "; }
$sqlSelectBusqueda = mysqli_query($conn, "Select anio, codigo_barras, nombre, caracteristicas, marca.marca, mcoche.marca_coche, model.modelo, sub.submodelo, ver.version, precio from productos as prod Left Join marca as marca On (id_marca = prod.marca) Left Join marca_coche as mcoche On (id_mcoche = prod.marca_coche) Left Join modelo as model On (id_modelo = prod.modelo) Left Join submodelos as sub On (id_submodelo = prod.submodelo) Left Join version as ver On (id_version = prod.version) Where prod.id_menu = " . $param4 . $marcas . $modelos . $anios . " Order by prod.id_productos");
}
¿Alguien sabe como puedo corregir que ONLY_FULL_GROUP_BY me impida mostrar la consulta? ¿Desde el código en PHP se puede?
De antemano, gracias por sus comentarios.
Saludos!