我一直在四处寻找并找到其他有类似问题的人,但在大多数情况下,他们并没有使用过全球性的问题。调用数据库连接前的关键字。基本上,我试图运行一个函数,根据函数中传递的内容截断表。
在recipes.php中
truncate_table('bl_recipes');
在functions.php中
// Truncate table passed in function
function truncate_table($table) {
global $con;
$truncate_query = '"TRUNCATE TABLE ' . $table . '"';
$truncate = mysqli_query($con, $truncate_query);
if ($truncate) {
echo 'Table truncated.';
}
else {
echo 'Table not truncated.';
echo 'The query was ' . $truncate_query;
}
}
如果我回显$ truncate,我会得到TRUNCATE TABLE' bl_recipes&#39 ;;如果我从PHPMyAdmin手动截断,这正是我得到的。 $ con中的详细信息是正确的,因为其他查询都有效,尽管它们都不是来自functions.php文件。数据库连接本身是在当前的functions.php中定义的,我可能会稍后移动但是现在在开发过程中,我并没有把它弄到原点。用户拥有所有数据库权限。页面加载的结果为"表格未截断"。
任何人都知道我做错了什么? 干杯, 李。
答案 0 :(得分:2)
使用此
$truncate_query = 'TRUNCATE TABLE `' . $table .'`';
或者
$truncate_query = "TRUNCATE TABLE `$table`";