您好我刚开始学习PHP并且相信学习我必须练习,犯错误并纠正它们。老实说,我不知道PHP,因此我的问题看似简单,也许对你们有些不合逻辑。如果我打扰它,请原谅我,但我想学习。 谢谢。 我的问题是我想创建一个可以在需要查询MySQL时从不同的PHP文件调用的函数。函数queryMysql(),当我调用createTable()时,它从函数createTable()中调用。
function createTable($name, $query)
{
queryMysql("CREATE TABLE IF NOT EXISTS $name($query)");
echo "Table '$name' created or already exists.<br />";
}
function queryMysql($query)
{
$result = $conection->query($query) or die(mysqli_error());
return $result;
}
我从不同的PHP文件中调用createTable(),如下所示:
createTable('members',
'user VARCHAR(16),
pass VARCHAR(16),
INDEX(user(6))');
我包含带有include_once的文件,其中函数来自我调用函数的位置,但是当我加载文件时,浏览器根本不显示任何内容,甚至不显示错误。
有人可以帮助我了解为什么它似乎没有执行我的功能吗?谢谢。
答案 0 :(得分:0)
首先,您应该检查为什么没有显示任何错误。通常这是因为在您的服务器中php.ini文件display_errors设置为false。
最简单的检查方法是创建一个文件phpinfo.php,其中包含一行调用
<?php phpinfo();
要检查的两个值是display_errors(如果要显示错误)和error_reporting(显示哪种错误)
您可以使用ini_set()
进行设置在您的脚本中,$ conection变量在queryMysql()函数中不可用。如果您正在使用全局变量(这被认为是坏习惯),您必须在函数的开头使用“global $ conection;”来说明。要查找的关键字是“变量范围”。
更好的方法是在queryMysql()函数中使用$ connection作为参数(如$ query)。