Muy buenas.
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();
}
}
?>
El archivo que usa la clase:
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.