PHP函数中的mysql函数
例如:PHP函数中的mysql函数,php,mysql,function,include,Php,Mysql,Function,Include,例如: <? function getTitle(){ $query="SELECT title FROM news WHERE author = 'admin' LIMIT 5"; $result = mysql_query($query, $mysql_connection); $data = mysql_fetch_array($result,MYSQL_ASSOC); return $data['title']; } ?> 每次我想提交
<?
function getTitle(){
$query="SELECT title FROM news WHERE author = 'admin' LIMIT 5";
$result = mysql_query($query, $mysql_connection);
$data = mysql_fetch_array($result,MYSQL_ASSOC);
return $data['title'];
}
?>
每次我想提交一个MySql查询时,我都必须在函数中包含config.php,否则它就无法工作。
我尝试在文件的开头包含,但仍然没有结果
php文件包括到数据库的连接和数据库的选择。没有错误
出现了什么问题?
$mysql\u connection
在函数的作用域内未知
如果脚本中只使用一个连接,理论上也可以省略连接说明符:
$result = mysql_query($query);
这样,您的mySQL调用就可以在没有任何额外步骤的情况下工作
如果要保留标识符(如果有多个连接处于打开状态,则应保留),作为一种快速修复方法,可以使用
function getTitle()
{
global $mysql_connection;
.....
}
将连接导入函数的作用域
一种高级(而且更干净)的方法是使用一个包含数据库连接的单例对象或静态对象。有关良好示例,请参见此问题:
$mysql\u connection
,它现在超出了范围。只要只使用一个连接,就可以完全忽略该参数。只需调用mysql\u查询($query)代码>将以下内容放入函数中
global $mysql_connection;
发生的情况是,$mysql\u连接
变量不在函数的范围内
global $mysql_connection;
我以前也遇到过同样的问题。这是因为$mysql\u连接变量在函数体中不可见。使用
全局$mysql\u连接
在函数的开头Hi Pekka。。请在此查看您可能会喜欢的帖子:@Fosco我在那里加了2美分。也可以在这里查看我对这个问题的更新(我花了一段时间才找到我想要链接的问题)。有很多正确答案,但这是第一次,所以我声明这是正确答案。我只使用了一个连接,所以你的第一个建议有效。定义“不起作用”。它会抛出一个错误还是什么?