Conexión a phpMyAdmin en PHP (Synology)

xooit21 Mensajes publicados 109 Estado Miembro -  
xooit21 Mensajes publicados 109 Estado Miembro -
Hola, Hablo español. Aquí tienes la traducción solicitada: Hola,

Estoy alojando mi sitio en un servidor Synology, para conectarme a mi base de datos escribí en mi código PHP lo siguiente:

$bdd = new PDO('mysql:localhost;dbname=table;' ,'root' , ' ' );

el problema es que recibo este mensaje:

Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in /volume1/web/inscription.php on line 4 PDOException: could not find driver in /volume1/web/inscription.php on line 4 Call Stack: 0.0022 133584 1. {main}() /volume1/web/inscription.php:0 0.0023 133928 2. PDO->__construct() /volume1/web/inscription.php:4

Cordialement

Configuration: Macintosh / Safari 11.0.3

6 respuestas

  1. Usuario anónimo
     
    Hola

    Si el mensaje te dice que no ha encontrado un controlador, tienes un problema de configuración - independientemente de tus otros errores.
    ¿Puedes hacer un script que haga simplemente
    phpinfo();
    para ver cuál es tu configuración de PHP, y comprobar si existe o no un driver PDO para mysql?
    1
  2. TheHitekFive Mensajes publicados 2 Estado Miembro
     
    xooit21 Puedo ayudarte mucho o tal vez un poco, pero está claro que es un error de intercepción "PDOException".
    ¿Estás seguro de que no habría otra variable definida en lugar de PDO?
    0
  3. XDamienX007 Mensajes publicados 4244 Fecha de registro   Estado Miembro Última intervención   420
     
    ¡Hola!
    Te falta "host":
    $bdd = new PDO("mysql:host=localhost;dbname=table", "username", "password");

    Creo que eso resolverá tu problema !

    (Lo que me dio la respuesta: PDO->__construct() /volume1/web/inscription.php:4, indica un error en el constructor, así que cuando llamas a new PDO)
    0
    1. xooit21 Mensajes publicados 109 Estado Miembro
       
      Hola,
      He añadido el "host" pero todavía no funciona.
      0
    2. xooit21 Mensajes publicados 109 Estado Miembro
       
      ¿El hecho de que Phpmyadmin esté en mi Synology cambia algo? a nivel de la dirección

      $bdd = new PDO('mysql:host=localhost;dbname=table;' ,'root' , ' ' );
      0
    3. XDamienX007 Mensajes publicados 4244 Fecha de registro   Estado Miembro Última intervención   420
       
      Sí, entonces hay que poner la dirección de tu Synology.
      host=192.168.1.45 por ejemplo.
      Solo te queda encontrarla :)
      0
  4. xooit21 Mensajes publicados 109 Estado Miembro
     
    Aquí está el guion:

    0
  5. Usuario anónimo
     
    Normalmente, es solo la parte superior de la página, eso es todo.
    Arriba, hay la versión de PHP
    Y más abajo, hay un montón de secciones, entre ellas una que habla de los drivers PDO. Aquí un extracto del phpinfo de uno de mis sitios como ejemplo:


    Allí, se ve que hay un driver PDO para mysql.
    0
    1. xooit21 Mensajes publicados 109 Estado Miembro
       
      Efectivamente, en el controlador PDO tengo "no value". ¿Cómo puedo cambiarlo?
      0
    2. Usuario anónimo
       
      En el archivo php.ini hay una línea
      extension=php_pdo_mysql.dll
      para colocar o descomentar si está comentada.
      PERO
      - no estoy seguro de que el archivo también se llame php.ini en Linux (estoy en Windows)
      - la extensión no será .dll en Linux, pero mirando las líneas de alrededor encontrarás la extensión correcta para Linux.
      - si el archivo de extensión no está presente físicamente en tu sistema, no sirve de nada indicárselo, salvo para provocar que el servidor falle al arrancar.

      Si tienes un responsable de sistemas que gestione este servidor, acércate a él para exigir un driver PDO para mysql.
      0
    3. Usuario anónimo
       
      Otra sugerencia: prescindir de PDO. Si eres tú quien escribe el script, puedes usar mysqli.
      0
    4. xooit21 Mensajes publicados 109 Estado Miembro
       
      En mi servidor Synology no puedo acceder al archivo php.ini (no sé cómo hacerlo, no es visible), ¿por lo tanto debo quitar PDO?
      0
    5. Usuario anónimo
       
      Hay varias formas en PHP para acceder a una base de datos MySQL. PDO es una metodología, mysqli es otra. Si no puedes usar PDO, usa mysqli.
      0
  6. xooit21 Mensajes publicados 109 Estado Miembro
     
    aquí

    0
    1. xooit21 Mensajes publicados 109 Estado Miembro
       
      mysqlnd statistics
      bytes_sent 0
      bytes_received 0
      packets_sent 0
      packets_received 0
      protocol_overhead_in 0
      protocol_overhead_out 0
      bytes_received_ok_packet 0
      bytes_received_eof_packet 0
      bytes_received_rset_header_packet 0
      bytes_received_rset_field_meta_packet 0
      bytes_received_rset_row_packet 0
      bytes_received_prepare_response_packet 0
      bytes_received_change_user_packet 0
      packets_sent_command 0
      packets_received_ok 0
      packets_received_eof 0
      packets_received_rset_header 0
      packets_received_rset_field_meta 0
      packets_received_rset_row 0
      packets_received_prepare_response 0
      packets_received_change_user 0
      result_set_queries 0
      non_result_set_queries 0
      no_index_used 0
      bad_index_used 0
      slow_queries 0
      buffered_sets 0
      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 0
      rows_fetched_from_server_ps 0
      rows_buffered_from_client_normal 0
      rows_buffered_from_client_ps 0
      rows_fetched_from_client_normal_buffered 0
      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 0
      rows_skipped_ps 0
      copy_on_write_saved 0
      copy_on_write_performed 0
      command_buffer_too_small 0
      connect_success 0
      connect_failure 0
      connection_reused 0
      reconnect 0
      pconnect_success 0
      active_connections 0
      active_persistent_connections 0
      explicit_close 0
      implicit_close 0
      disconnect_close 0
      in_middle_of_command_close 0
      explicit_free_result 0
      implicit_free_result 0
      explicit_stmt_close 0
      implicit_stmt_close 0
      mem_emalloc_count 0
      mem_emalloc_amount 0
      mem_ecalloc_count 0
      mem_ecalloc_amount 0
      mem_erealloc_count 0
      mem_erealloc_amount 0
      mem_efree_count 0
      mem_efree_amount 0
      mem_malloc_count 0
      mem_malloc_amount 0
      mem_calloc_count 0
      mem_calloc_amount 0
      mem_realloc_count 0
      mem_realloc_amount 0
      mem_free_count 0
      mem_free_amount 0
      mem_estrndup_count 0
      mem_strndup_count 0
      mem_estndup_count 0
      mem_strdup_count 0
      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 0
      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 0
      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_json 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 0
      com_init_db 0
      com_query 0
      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 0
      bytes_received_real_data_ps 0
      0
    2. xooit21 Mensajes publicados 109 Estado Miembro
       
      He enviado un mensaje al soporte de Synology para ver si se debe a una mala configuración de mi servidor.
      0
    3. Usuario anónimo
       
      No tengo idea de cómo aprovechar eso. Lo siento.
      0
    4. xooit21 Mensajes publicados 109 Estado Miembro
       
      muchas gracias por tu ayuda :)
      0