Я пытаюсь выбрать информацию из моей базы данных с помощью codeigniter. Вот код:проблема с выбором из базы данных с codeigniter
public function getContent($table_name){
$show = false;
$sql = 'SELECT * FROM ?';
$query = $this->db->query($sql, array($table_name));
if($query->num_rows > 0){
$show = $query->result_array();
}
return $show;
}
Я получаю сообщение об ошибке от MySQL:
Номер ошибки: 1064
У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, которое соответствует вашему> версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с '' main_db '' в строке 1
SELECT * FROM 'main_db'
Имя файла: C: \ XAMPP \ HTDOCS \ Staz1 \ система \ Номер базы данных \ DB_driver.php
Line: 331
Я думаю, что проблема заключается в том, что запрос имеет 'main_db' с апостроф. При написании запроса непосредственно в секцию sql в phpmyadmin это была проблема, с которой я столкнулся (она работает только в том случае, если она написана без апострофов или с обратными окнами).
Если это действительно проблема - как отправить запрос без апострофов?
'?' Избегает введенных пользователем значений. Его нельзя использовать для имен таблиц или чего-либо еще. Вы можете создать белый список для своих имен таблиц. – rybo111