2017-10-17 76 views
0

我最近问这个问题,但它被标记为重复并被删除。 请先查看我的问题,然后再将其标记下来,因为它不一样,我正在努力弄清楚这一点。多次显示mysqli结果

我想在一个php页面的主体中的不同点处将MYSQLI查询的'公司'和'区域'结果回显到我的页面中。

只显示第一个回显。请显示我的错误。

<?php 

$path = $_SERVER['DOCUMENT_ROOT']; 
$path .= "/Connections/****"; 
include_once($path); 

$dbhandle=mysqli_connect($hostname_Demo, $username_Demo, $password_Demo, $database_Demo); 

if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

$sql_RS1="SELECT * from CompanyName where area = 1"; 
$result=mysqli_query($dbhandle,$sql_RS1); 

?> 

<head> 
<title>TEST</title> 
</head> 
<body> 

<?php 
while($row = mysqli_fetch_assoc($result)) 
{ 
    echo $row['company']; 
} 
?> 

<?php 
while($row = mysqli_fetch_assoc($result)) 
{ 
    echo $row['area']; 
} 
?> 

<?php $dbhandle->close(); ?> 

</body> 
</html> 

回答

-1

这就是我所结束的。它的作品,所以我希望它是正确的。感谢大家的帮助。

$sql_RS1="SELECT * from CompanyName where area = 1"; 
$result=mysqli_query($dbhandle,$sql_RS1); 
$row =array(); 
while ($x= mysqli_fetch_assoc($result)) 
    $row_RS1=$x; 
?> 

<?php 
$sql_RS2="SELECT * from employees where EmployeeID = 79"; 
$result=mysqli_query($dbhandle,$sql_RS2); 
$row_RS2 =array(); 
while ($x= mysqli_fetch_assoc($result)) 
    $row_RS2=$x; 
?> 

<head> 
<title>TEST</title> 
</head> 
<body> 

<p> 
<?php echo $row_RS1['company']; ?> 
</p> 
<p> 
<?php echo $row_RS1['company']; ?> 
</p> 
<p> 
<?php echo $row_RS1['area']; ?> 
</p> 
<p> 
<?php echo $row_RS2['EmployeeID']; ?> 
</p> 
<p> 
<?php echo $row_RS2['Surname']; ?> 
</p> 
<p> 
<?php echo $row_RS2['EmployeeID']; ?> 
</p> 
<p> 
<?php $dbhandle->close(); ?> 
</p> 
</body> 
-1

您正在提取相同的行两个不同,这是不正确的。

像这样的东西应该工作

<?php 
$path = $_SERVER['DOCUMENT_ROOT']; 
$path .= "/Connections/****"; 
include_once($path); 

$dbhandle=mysqli_connect($hostname_Demo, $username_Demo, $password_Demo, $database_Demo); 

if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

$sql_RS1="SELECT * from CompanyName where area = 1"; 
$result=mysqli_query($dbhandle,$sql_RS1); 
$row =array(); 
while ($x= mysqli_fetch_assoc($result)) 
     $row[]=$x; 
$i=0; 
?> 
<head> 
<title>TEST</title> 
</head> 
<body> 

<?php 
    echo $row[i]['company']; 
?> 

<?php 
    echo $row[i]['area']; 
    $i++; 
?> 
+0

谢谢Shubham。我与你的建议一起工作,以得出下面的结论,这是有效的。我想我所问的是非常基本的。非常感谢您的帮助。 –

-1

尝试将它们合并,它看起来像他们一样的

<?php 
 
while($row = mysqli_fetch_assoc($result)) 
 
{ 
 
echo $row['company']." 
 
".$row['area']; 
 
} 
 
?>

+0

谢谢,但我需要将结果拆分为页面的不同部分。 –

2

您可以使用此代码

<?php 
    while($row = mysqli_fetch_assoc($result)) 
    { 
    $data_array[] = $row; 
    } 

    foreach ($data_array as $data) { 
     echo $data['company']; 
    } 
    foreach ($data_array as $data) { 
     echo $data['area']; 
    } 

像这样做,你不想对你的数据库进行更多的查询。

+0

谢谢我试过这个,并得到了一个地方。但是我会在同一页面上有多个查询。我该如何处理多个查询? –

+0

多查询的意思是?你是否从另一个表中获取记录? – Nawin

+0

是的。问题解决了,请参阅下面的答案,非常感谢您的帮助。 –