Comunidad de diseño web y desarrollo en internet online

Error 500 al tomar datos mysql en hosting

Citar            
MensajeEscrito el 19 Feb 2021 07:59 pm
Hola chicos, se ha desarrollado una consulta simple que saca datos de la base de datos y los pone en una tabla, en localhost con xampp (php 7.3) funciona bien pero en el hosting con cpanel me da error .

PHP Fatal error: Uncaught Error: Call to a member function fetch_assoc() on bool

Creo que tengo algo mal una práctica no adecuada del código será que me guían por favor?

Código MySQL :

        <?php 
      
          $nombre_Cliente = NULL;
      
            $buscarPor = trim(filter_input(INPUT_POST,'Criterio', FILTER_SANITIZE_STRING));
            $where = trim(strtolower(filter_input(INPUT_POST, 'itBuscar', FILTER_SANITIZE_STRING))); 

            $buscar = true;
            if (empty($where)) 
            {
               $buscar = false;                   
            }
            if ($buscarPor === 'Email')
            {
                if(!filter_var($where, FILTER_VALIDATE_EMAIL))  
                {
                    $buscar = false;                    
                }
            }

            $sq1 = "SELECT OS.IDOS, CLI.NOMECLIENTE, OS.DATAINICIAL, OS.DATAFINAL, OS.STATUS, OS.OBSERVACOES, OS.LAUDOTECNICO
                    FROM clientes CLI
                    INNER JOIN OS ON OS.Clientes_id = CLI.idClientes";       

            if ($buscar)
            {  
                $datoBuscar = "'".$where."'";
                if ($buscarPor === 'Documento') 
                {                    
                   $query = $sq1. " WHERE CLI.documento = $datoBuscar";
                }
                else                
                {
                    $query = $sq1. " WHERE CLI.email = $datoBuscar";
                }

                $cn = new mysqli('localhost', 'root', '', 'stecnico');        
                $rs = $cn->query($query);
                $nombre_Cliente = $rs->fetch_assoc()['NOMECLIENTE'];                  
                $vecresultado = array(); 
                while ($fila = $rs->fetch_row()) 
                {               
                   //$nombre_Cliente = ($fila[1]);
                   array_push($vecresultado, $fila);
                }

                mysqli_free_result($rs);
                mysqli_close($cn);
               }
            else 
            {   
                 header("Location: /stecnico/consultaros/index.php?Error=s"); 
            }
        ?>


Cuando le puse el código

Código MySQL :

mysqli_report(MYSQLI_REPORT_ERROR|MYSQLI_REPORT_STRICT);

antes del

Código MySQL :

$cn = new mysqli('localhost', 'root', '', 'stecnico');


me cambió el error a:

Código :

[19-Feb-2021 19:58:39 UTC] PHP Fatal error:  Uncaught mysqli_sql_exception: Table 'sistegra_banco.OS' doesn't exist in /home/sistegra/public_html/stecnico/consultaros/pages/tables/data.php:81
Stack trace:
#0 /home/sistegra/public_html/stecnico/consultaros/pages/tables/data.php(81): mysqli->query('SELECT OS.IDOS,...')
#1 {main}
  thrown in /home/sistegra/public_html/stecnico/consultaros/pages/tables/data.php on line 81


Por favor que alguien me diga donde está la falla y que debo poner para arreglarlo :(

Por RicRey

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Feb 2021 10:35 am
Probablemente el SQL sea incorrecto. imprimelo y luego lo puedes ejecutar en phpmyadmin ( o lo que uses para manejar la BD) Lo pones justo antes de ejecutar el query. Quita el redirect para poder verlo

echo $query;
$rs = $cn->query($query);

Jorge

Por solisarg

BOFH

13668 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.