Я не вижу простого способа получить эту информацию. Лучшее, что я мог сделать, это сделать «SHOW CREATE TABLE»; и разобрать ответ:
<?php
$link = mysql_connect('localhost', 'account', 'passwd');
mysql_select_db('my_base');
$q = mysql_query('show create table my_table;');
$row = mysql_fetch_assoc($q);
preg_match("/CHARSET=(.*)/", $row['Create Table'], $matched);
echo "Table was created with charset " . $matched[1];
Что дает мне:
Table was created with charset utf8
Обратите внимание, что кодировка может отсутствовать, если ваша таблица не была создана с этой информацией.