2014-02-23 58 views
-3

下面是當前的代碼我使用:用PHP正確顯示MySQL數據?

<?php include('database.php'); ?> 

<a href="http://local.mysite.com/<?php echo $service; ?>/<?php echo $city; ?>"><?php echo $city; ?> <?php echo $service; ?></a> - 
<a href="http://local.mysite.com/<?php echo $service; ?>/<?php echo $city; ?>"><?php echo $city; ?> <?php echo $service; ?></a> - 
<a href="http://local.mysite.com/<?php echo $service; ?>/<?php echo $city; ?>"><?php echo $city; ?> <?php echo $service; ?></a> - 
<a href="http://local.mysite.com/<?php echo $service; ?>/<?php echo $city; ?>"><?php echo $city; ?> <?php echo $service; ?></a> - 
<a href="http://local.mysite.com/<?php echo $service; ?>/<?php echo $city; ?>"><?php echo $city; ?> <?php echo $service; ?></a> 

而且其顯示的(超鏈接):

houston marketing services - houston marketing services - houston marketing services - houston marketing services - houston marketing services 

的問題是,我想每個顯示不同的服務和城市其中。我需要做什麼來顯示5個不同名稱的不同鏈接?

$service$city正在從數據庫中拉出。

這裏的數據庫文件中的代碼:顯示在您沒有修改任何變量

<?php 

mysql_connect("localhost", "database_user", "password") or die(mysql_error()); 
mysql_select_db("database_name") or die(mysql_error()); 

$cityquery = "SELECT * FROM cities ORDER BY RAND() LIMIT 1"; 
$cityresult = mysql_query($cityquery); 
$cityrow = mysql_fetch_row($cityresult); 
$city = $cityrow[0]; 

$servicequery = "SELECT * FROM services ORDER BY RAND() LIMIT 1"; 
$serviceresult = mysql_query($servicequery); 
$servicerow = mysql_fetch_row($serviceresult); 
$service = $servicerow[0]; 
?> 
+0

包含關於您的查詢的代碼並提取 – Fabio

+0

顯示實際從數據庫中提取數據的代碼。通常情況下,你循環播放結果,當你讀取下一行時回顯。我懷疑你是這樣做的,只是將行數據分配給你的變量並在每次迭代中覆蓋它,否則只是從結果集中拉出一行。 –

+0

你必須遍歷結果集。我們需要查看您的代碼 –

回答

0

。你應該把它們抓下來,並顯示行一個個像(在database.php中應該返回整個響應對象):

while($row = $result->fetch_object()) { 
    $service = $row->service; 
    $city = $row->city; 
    echo "<a href=\"http://local.mysite.com/$service/$city\">$city $service</a>"; 
} 

我假設你使用的mysqli(因爲MySQL是不建議使用)。