Os expongo el error que me trae de cabeza desde hace unos días:
El caso es que el fallo se da sólo cuando lo subo al servidor del hosting, en local me funciona sin problemas, el error en cuestión me lo da al comprobar la consulta sin dar más datos que los del entrecomillado.
Código PHP:
if(!$this->res)
{
echo 'Hay un error en la consulta'. $this->conn->error;
os dejo el código:
Código PHP:
<?php
// Clase Conexion
// Esta clase conectará con la base de datos
// nombre: conexion.php
Class Conexion
{
// el objeto mysqli
private $conn;
public $query;
public $res;
// Cosntructor
function __construct()
{
// Conectamos con la base de datos
if(!$this->Conecta())
{
throw new Exception('No puede conectarse con el Servidor');
}
}
private function Conecta()
{
try
{
// Ahora lo hacemos con el API OO
// Creamos un objeto mysqli
$this->conn = new mysqli('localhost', 'root', '', 'db365572707');
//echo 'La Conexión se ha realizado con éxito.';
return TRUE;
}catch(Exception $e){
return FALSE;
}
}
public function query($query)
{
$this->res = $this->conn->query($query);
if(!$this->res)
{
return 'Hay un error en la consulta'. $this->conn->error;
}else{
$rec = array();
// Recuperamos filas y las mostramos
while($fila = $this->res->fetch_array())
{
array_push($rec, $fila);
}
}
return $rec;
}
public function __destruct()
{
//echo "destruyendo...";
$conn->close();
$res->close();
}
}
?>
Código PHP:
<?php
require_once 'staticTemplate.php';
require_once('smarty/templates/php/conexion.php');
$_GET['id'] = 'servicios';
$smarty->assign("H1","Servicios");
$smarty->assign("P1","Servicios Mapa Andalucía.");
$cnx = new Conexion();
$sql = "SELECT id_provincia, provincia FROM provincias";
$smarty->assign("SelectOptions", $cnx->query($sql));
$smarty->display('servicios.tpl');
?>
Código HTML:
---------------------------------------------------------------------------------------------------------- DATOS PHPINFO() SERVIDOR ---------------------------------------------------------------------------------------------------------- PHP Version 5.3.5 mysqli MysqlI Support enabled Client API library version 5.0.92 Client API header version 5.0.32 MYSQLI_SOCKET /var/run/mysqld/mysqld.sock Directive Local Value Master Value mysqli.default_host no value no value mysqli.default_port 3306 3306 mysqli.default_pw no value no value mysqli.default_socket /tmp/mysqld.sock /tmp/mysqld.sock mysqli.default_user no value no value mysqli.max_links Unlimited Unlimited mysqli.reconnect Off Off
Código HTML:
---------------------------------------------------------------------------------------------------------- DATOS PHPINFO() LOCALHOST ---------------------------------------------------------------------------------------------------------- PHP Version 5.2.17 mysqli MysqlI Support enabled Client API library version mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $ Active Persistent Links 0 Inactive Persistent Links 0 Active Links 0 Directive Local Value Master Value mysqli.allow_local_infile On On mysqli.allow_persistent On On mysqli.default_host no value no value mysqli.default_port 3306 3306 mysqli.default_pw no value no value mysqli.default_socket no value no value mysqli.default_user no value no value mysqli.max_links Unlimited Unlimited mysqli.max_persistent Unlimited Unlimited mysqli.reconnect Off Off mysqlnd mysqlnd enabled Version mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $ Compression supported SSL not supported Command buffer size 4096 Read buffer size 32768 Read timeout 31536000 Collecting statistics Yes Collecting memory statistics Yes Tracing n/a Client statistics bytes_sent 876 bytes_received 15084 packets_sent 54 packets_received 449 protocol_overhead_in 1796 protocol_overhead_out 216 bytes_received_ok_packet 44 bytes_received_eof_packet 126 bytes_received_rset_header_packet 136 bytes_received_rset_field_meta_packet 2037 bytes_received_rset_row_packet 12431 bytes_received_prepare_response_packet 0 bytes_received_change_user_packet 0 packets_sent_command 24 packets_received_ok 4 packets_received_eof 14 packets_received_rset_header 20 packets_received_rset_field_meta 27 packets_received_rset_row 381 packets_received_prepare_response 0 packets_received_change_user 0 result_set_queries 14 non_result_set_queries 6 no_index_used 9 bad_index_used 0 slow_queries 0 buffered_sets 14 unbuffered_sets 0 ps_buffered_sets 0 ps_unbuffered_sets 0 flushed_normal_sets 0 flushed_ps_sets 0 ps_prepared_never_executed 0 ps_prepared_once_executed 0 rows_fetched_from_server_normal 367 rows_fetched_from_server_ps 0 rows_buffered_from_client_normal 367 rows_buffered_from_client_ps 0 rows_fetched_from_client_normal_buffered 284 rows_fetched_from_client_normal_unbuffered 0 rows_fetched_from_client_ps_buffered 0 rows_fetched_from_client_ps_unbuffered 0 rows_fetched_from_client_ps_cursor 0 rows_affected_normal 0 rows_affected_ps 0 rows_skipped_normal 367 rows_skipped_ps 0 copy_on_write_saved 1053 copy_on_write_performed 425 command_buffer_too_small 0 connect_success 3 connect_failure 12 connection_reused 0 reconnect 0 pconnect_success 3 active_connections 0 active_persistent_connections 0 explicit_close 3 implicit_close 0 disconnect_close 0 in_middle_of_command_close 0 explicit_free_result 14 implicit_free_result 0 explicit_stmt_close 0 implicit_stmt_close 0 mem_emalloc_count 39 mem_emalloc_amount 55452 mem_ecalloc_count 172 mem_ecalloc_amount 66408 mem_erealloc_count 184 mem_erealloc_amount 43820 mem_efree_count 223 mem_efree_amount 123572 mem_malloc_count 428 mem_malloc_amount 248570 mem_calloc_count 79 mem_calloc_amount 7580 mem_realloc_count 0 mem_realloc_amount 0 mem_free_count 529 mem_free_amount 256353 mem_estrndup_count 12 mem_strndup_count 10 mem_estndup_count 0 mem_strdup_count 12 proto_text_fetched_null 0 proto_text_fetched_bit 0 proto_text_fetched_tinyint 0 proto_text_fetched_short 0 proto_text_fetched_int24 0 proto_text_fetched_int 0 proto_text_fetched_bigint 451 proto_text_fetched_decimal 0 proto_text_fetched_float 0 proto_text_fetched_double 0 proto_text_fetched_date 0 proto_text_fetched_year 0 proto_text_fetched_time 0 proto_text_fetched_datetime 0 proto_text_fetched_timestamp 0 proto_text_fetched_string 1007 proto_text_fetched_blob 0 proto_text_fetched_enum 0 proto_text_fetched_set 0 proto_text_fetched_geometry 0 proto_text_fetched_other 0 proto_binary_fetched_null 0 proto_binary_fetched_bit 0 proto_binary_fetched_tinyint 0 proto_binary_fetched_short 0 proto_binary_fetched_int24 0 proto_binary_fetched_int 0 proto_binary_fetched_bigint 0 proto_binary_fetched_decimal 0 proto_binary_fetched_float 0 proto_binary_fetched_double 0 proto_binary_fetched_date 0 proto_binary_fetched_year 0 proto_binary_fetched_time 0 proto_binary_fetched_datetime 0 proto_binary_fetched_timestamp 0 proto_binary_fetched_string 0 proto_binary_fetched_blob 0 proto_binary_fetched_enum 0 proto_binary_fetched_set 0 proto_binary_fetched_geometry 0 proto_binary_fetched_other 0 init_command_executed_count 0 init_command_failed_count 0 com_quit 3 com_init_db 1 com_query 20 com_field_list 0 com_create_db 0 com_drop_db 0 com_refresh 0 com_shutdown 0 com_statistics 0 com_process_info 0 com_connect 0 com_process_kill 0 com_debug 0 com_ping 0 com_time 0 com_delayed_insert 0 com_change_user 0 com_binlog_dump 0 com_table_dump 0 com_connect_out 0 com_register_slave 0 com_stmt_prepare 0 com_stmt_execute 0 com_stmt_send_long_data 0 com_stmt_close 0 com_stmt_reset 0 com_stmt_set_option 0 com_stmt_fetch 0 com_deamon 0 bytes_received_real_data_normal 8177 bytes_received_real_data_ps 0
Agradecería cualquier ayuda.
Saludos.