Connection à phpMy Admin en php (Synology)

xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 9 févr. 2018 à 21:23 - Dernière réponse : xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention
- 12 févr. 2018 à 20:49
Bonjour,

J'héberge mon site sur un serveur synology, pour me connecter à ma base de donnée j'ai écrit dans mon code php ceci:

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

le problème est que je reçois ce message:

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





Afficher la suite 

29 réponses

Répondre au sujet
le père. 6029 Messages postés mardi 15 mai 2012Date d'inscription 12 février 2018 Dernière intervention - 11 févr. 2018 à 11:39
+1
Utile
Bonjour

Si le message te dit qu'il na pas trouvé de driver, tu as un problème de configuration - indépendamment de tes autres erreurs.
Peux-tu faire un script qui fait simplement
phpinfo();
pour voir quelle est ta configuration de PHP, et constater si oui ou non il y a un driver PDO pour mysql ?
Commenter la réponse de le père.
TheHitekFive 2 Messages postés vendredi 9 février 2018Date d'inscription 9 février 2018 Dernière intervention - 9 févr. 2018 à 22:10
0
Utile
xooit21 Je peut grandement t'aider ou peut être un peu, mais il est clairement que c'est un erreur d'interception "PDOException".
Est tu sur qu'il n'y aurait pas d'autre variable defois à la place de PDO ?
Commenter la réponse de TheHitekFive
XDamienX007 3629 Messages postés jeudi 3 décembre 2009Date d'inscription 12 février 2018 Dernière intervention - 10 févr. 2018 à 10:18
0
Utile
3
Bonjour !
Il te manque "host":
$bdd = new PDO("mysql:host=localhost;dbname=table", "username", "password");

Je pense que ça résoudra ton problème !

(Ce qui m'a donné la réponse: PDO->__construct() /volume1/web/inscription.php:4, ça indique une erreur sur le constructeur, donc quand tu appelles new PDO)
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 11 févr. 2018 à 11:27
Bonjour,
J'ai rajouté le "host" mais ca ne marche toujours pas.
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 11 févr. 2018 à 11:32
Est-ce que le fait que Phpmyadmin est sur mon synology change quelque chose? au niveau de l'adresse

$bdd = new PDO('mysql:host=localhost;dbname=table;' ,'root' , ' ' );
XDamienX007 3629 Messages postés jeudi 3 décembre 2009Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 16:45
Oui du coup il faut mettre l'adresse de ton synology !
host=192.168.1.45 par exemple.
Il ne te reste plus qu'à la trouver :)
Commenter la réponse de XDamienX007
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 11 févr. 2018 à 11:44
0
Utile
Voici le script:

Commenter la réponse de xooit21
le père. 6029 Messages postés mardi 15 mai 2012Date d'inscription 12 février 2018 Dernière intervention - 11 févr. 2018 à 13:46
0
Utile
16
Normalement, ce n'est que le haut de la page, ça.
Au-dessus, il y a la version de php
Et plus bas, il y a un tas de rubriques, dont une qui parle des drivers PDO. Voici un extrait du phpinfo d'un de mes sites à titre d'exemple :


Là, on voit qu'il y a un driver PDO pour mysql
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 13:05
mon serveur est Maria DB je c'est pas si sa peut aider?
le père. 6029 Messages postés mardi 15 mai 2012Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 13:40
phpmyadmin est un script php qui utilise ta base de données. Donc tu devrais aussi pouvoir utiliser ta base de données depuis tes propres scripts php.
Tu ne vois vraiment rien dans ton phpinfo qui parle de base de données ? Pas le moindre "mysql" ? Je trouve ça plus qu'étrange.
XDamienX007 3629 Messages postés jeudi 3 décembre 2009Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 16:48
Il n'est peut-être pas actif dans le fichier php.ini.
Tu dois avoir une ligne:
; extention=php_pdo_mysql.dll

Si tu la voit, enlève le ;
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 19:43
XDamienX007: sur mon serveur synology je ne peut pas accéder au fichier php.ini, je ne trouve pas comment faire.

Le père: j'ai juste la rubrique "mysqlnd"
le père. 6029 Messages postés mardi 15 mai 2012Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:05
Et elle dit quoi, cette rubrique Mysqlnd ?
Commenter la réponse de le père.
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:16
0
Utile
4
voila

xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:17
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
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:29
j'ai envoyer un message au support Synology voir si sa viendrais d'un mauvais réglage de mon serveur.
le père. 6029 Messages postés mardi 15 mai 2012Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:36
Aucune idée de comment exploiter ça. Désolé.
xooit21 30 Messages postés mardi 2 janvier 2018Date d'inscription 12 février 2018 Dernière intervention - 12 févr. 2018 à 20:49
merci de ton aide :)
Commenter la réponse de xooit21