我正在尝试从function.php调用getMensClothing()函数到header.php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "khaki";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
function getMensClothing(){
global $conn;
$sql = "SELECT * FROM men_clothing";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<li><a href='#' class='hvr-grow'>". $row['men_clo_items']." </a></li>";
}
}
}
header.php文件看起来像这样
<?php include 'functions.php'; ?>
<?php
echo'
<div class="col-sm-2"><br>
<a href="men\'s_clothing.php"><p> <b>Men\'s Clothing</b></p></a>
<ul>
'.getMensClothing().'
</ul>
</div>'
?>
函数被调用,但项目不显示在页面顶部显示的所有内容。如何显示div内的项目?
答案 0 :(得分:4)
使用以下代码
$html = "";
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$html .= "<li><a href='#' class='hvr-grow'>". $row['men_clo_items']."</a></li>";
}
}
return $html;
进入你的function.php文件
答案 1 :(得分:0)
创建一个类似
的类class support{
//inside goes codes and functions
}
在调用另一个文件时。
将其包含在文件上方然后创建
$a=new support()
$a->functionname();
这应该可以解决问题
答案 2 :(得分:0)
您使用带有参数的echo
会被评估为打印
您对echo
的参数使用连接
您有一个参数由三个参数的串联构成。
打印此连接的结果。其中一个参数是getMensClothing()
函数的返回值。
在评估getMensClothing()
期间,您会打印一些数据
因此,功能getMensClothing()
中打印的数据会在echo
中对header.php
语句的调用结束之前打印出来。
正如其他人所指出的那样,您应该重新考虑您的技术,因为如果您将检索和构建数据以及显示数据的工作分开,您的代码可能会更容易使用。例如,请查看MVC。