我有一个页面正在使用很多mysql查询。 有没有办法我可以编写一个php文件并将这些查询调用到任何页面?
示例: 假设我在php文件中有50个以下查询(有50个不同的查询)
<?php
include_once("db.php");
session_start();
if(isset($_SESSION['affID'])) {
}
$sql = "SELECT SUM(AffPaid) as c FROM toutcome WHERE affID = '" . $_SESSION['affID'] . "'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo "£" . $row['c'] ;
?>
我可以不执行以下操作吗?
**$query1 =**
<?php
include_once("db.php");
session_start();
if(isset($_SESSION['affID'])) {
}
$sql = "SELECT SUM(AffPaid) as c FROM toutcome WHERE affID = '" . $_SESSION['affID'] . "'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo "£" . $row['c'] ;
然后在任何页面中说echo $ query1?
答案 0 :(得分:2)
我相信你问的问题(并不是非常清楚)是你可以将php页面的全部内容分配给php变量。答案是否定的。
但要完成你想要做的事情,只需使用include
,就像这样:
query.php:
<?php
include_once("db.php");
session_start();
if(isset($_SESSION['affID'])) { //I'm not sure what you're trying to accomplish here?
}
$sql = "SELECT SUM(AffPaid) as c FROM toutcome WHERE affID = '" . $_SESSION['affID'] . "'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo "£" . $row['c'] ;
然后执行此操作:
include_once("query.php");
在您想要的任何文件中。
您也可以将其封装到一个函数中,但是您仍然需要包含我向您展示的页面。
修改强>
根据您的评论回复,我认为您需要做的是创建一个类似上面的文件,但它应该看起来更像这样:
query.php:
<?php
include_once("db.php");
function runQuery($queryString) {
$result = mysql_query($queryString); // Missing connection
$row = mysql_fetch_array($result);
return "£" . $row['c'] ;
}
并且你的调用文件应该包含:
include_once("query.php");
session_start();
if(isset($_SESSION['affID'])) {
$result = runQuery("SELECT SUM(AffPaid) as c FROM toutcome WHERE affID = '" . "_SESSION['affID'] . "'");
}
答案 1 :(得分:0)
你不能完全放置你所做的,但是你可以把你的代码放在第一个例子中(你说的那个位重复50次)并将该函数保存在某个地方的文件中,然后保存在你使用的任何php文件中该代码,包含顶部函数的文件,然后在需要使用该代码时调用该函数
编辑:
您也可以运行一次代码并将结果保存到全局变量中,以便可以在任何地方访问它(通常,如果您可以避免全局变量,则不要使用它们)
答案 2 :(得分:0)
一种简单的方法是将每个查询包装在一个函数中:
<?php
function query1() {
include_once("db.php");
session_start();
if(isset($_SESSION['affID'])) {
}
$sql = "SELECT SUM(AffPaid) as c FROM toutcome WHERE affID = '" . $_SESSION['affID'] . "'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo "£" . $row['c'] ;
}
?>
然后你想要它显示的地方包括:
<?php
query1();
?>
答案 3 :(得分:0)
您可以拥有类似以下示例的PHP文件:
<强> queries.php 强>
<?php
$query[0] = "";
$query[1] = "";
...
然后include()
在你的主PHP文件中并从那里调用它,如下所示:
include_once("queries.php");
$result = mysql_query($query[0]); // As you can see, $query[0] is in queries.php
$row = mysql_fetch_array($result);
echo "£" . $row['c'] ;