我想使用数字0-9表示mysql表名.我应该怎么用``反引号来编写sql查询来防止sql查询错误?

Pet*_*ter 0 php mysql

用户可以在我的网站上发布任何主题标题,包括纯数字(例如12345).主题标题成为mysql中表的名称.在测试一个数字作为主题标题时,我在各个地方遇到了MYSQL错误,并确定问题是我没有使用反复标记来进行sql查询.

我应该如何正确编写所有查询以保持任何可能的标题(表)不返回mysql错误?代码示例如下.还有哪些潜在的表格可能会导致问题?

<?php
for ($i=0; $i<4; $i++) {
// select by rand
$offset_result = mysql_query( " SELECT FLOOR(RAND() * COUNT(*)) AS `offset` FROM `$random_slash[$i]` ");
$offset_row = mysql_fetch_object( $offset_result ); 
$offset = $offset_row->offset;
$result = mysql_query( " SELECT * FROM `$random_slash[$i]` LIMIT $offset, 1 " );

//$rs = @mysql_query($sql);
while ($row = mysql_fetch_array($result)) {?>
        <div class="quadrant">
            <h2 class="alignleft"><a href="/<?php echo $random_slash[$i]; ?>">
Run Code Online (Sandbox Code Playgroud)

作为注释 - 刻度线似乎表示代码

Mar*_*ers 5

用户可以在我的网站上发布任何主题标题,包括纯数字(例如12345).主题标题成为mysql中表的名称.

Noooooo!不要这样做.

主题标题应该成为值,而不是表的名称.

使用一个表来存储主题,每个主题一行.使用第二个表来存储该主题的子项.使用外键将子项链接到父主题.