我得到的问题与主题相同,下面是代码。由于var是局部变量,无法从另一个脚本调用函数
脚本A:
$con = mysqli_connect('localhost', 'root', '', 'mysql');
以上正常工作,所以我在这里排除die()
条款为大家easiler阅读。
脚本B:
function get_news(){
/* a select query */
$result = mysqli_query($con, $news_sql)
or die(mysqli_error($con);
/* other codes follow */
};
脚本C:
require_once "Script B";
get_news();
上述失败,一些testings后,我确认问题脚本B.
在于对VAR $con
至少有两种方法可以解决这个问题:
a)replace $con
与mysqli_connect();
B)再次在函数中的脚本B
定义$con
虽然这个解决我的问题,但似乎都没有很好的做法。我应该将$con
定义为$_global var
吗?你能否建议其他更好的方法。
非常感谢!
脚本B的原始代码:
function get_news(){
$news_sql = "SELECT * from pink_news ORDER BY news_id DESC LIMIT 3";
$result = mysqli_query($con, $news_sql)
or die(mysqli_error($con));
while ($rows = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
echo "<div class='news'><ul><li>";
echo "<img src='" . $rows['img'] . "'>";
echo "<h2>" . $rows['headline'] . "</h2>";
echo "<p>" . $rows['content'] . "</p>";
echo "</li></ul></div>";
};
};
将其指定为全局变量全局变量$ CON;或者在页面中包含脚本a并将参数传递给函数get_new($ con); – JYoThI
非常感谢jothi,这有助于! – Kenny