我有一个小问题。我有一个PHP功能,当它在页面内时,它可以很好地工作。这是
$selectQuery = "SELECT DISTINCT product_code FROM product;";
$List = mysql_query( $selectQuery, $Connection ) or die("ERROR".mysql_error());
while($Output = mysql_fetch_array($List))
{
echo "<option value='".$Output[0]."'>".$Output[0]."</option>";
}
但是当我把它包含在我保存我的函数的文件中,而不是从那里调用它时它什么都不输出,并且它下面的所有内容都不会被输出。 这是函数调用:
<select name="Selector" >
<option value="">--Select Product--</option>
<?php printProductBox("SELECT DISTINCT product_code FROM product;"); ?>
</select>
以下是函数文件中的函数,该函数也包含在页面前面:
function printProductBox($ParameterQuery){
include ('DatabaseVariables.php');
$List = mysql_query( $ParameterQuery, $Connection ) or die("ERROR".mysql_error());
while($Output = mysql_fetch_array($List)){
echo "<option value='".$Output[0]."'>".$Output[0]."</option>";
}
}
数据库凭证文件包含在主页面和功能文件中(功能文件也包含在页面中)。 该文件中的其他功能正在主页面中工作。所以我想知道为什么这个功能有问题?
有人有任何关于它的线索吗?
答案 0 :(得分:0)
将此功能放在功能的开头:
global $Connection;
使用新建议进行修改,如果已建立连接可能会有所帮助,请尝试替换这些行的旧版本:
<?php printProductBox("SELECT DISTINCT product_code FROM product;", $Connection); ?>
和
function printProductBox($ParameterQuery, $Connection){
答案 1 :(得分:0)
问题是缺少凭证。 凭证必须包含在功能范围内。我想知道是否有办法将所有变量声明为全局变量。所以我不会在每个函数中包含相同的文件。