2014-10-03 68 views
-3

我正在使用PHP从数据库获取值并将其添加到<a>标记中。当我点击这样的链接时,我可以清楚地看到,其href属性中只有一个静态部分,并且没有添加任何变量。添加到链接的变量为空

例如,我想要www.domain.com/client?client=SLCH12345678 URL,其中SLCH12345678取自数据库(变量值),但是我得到的所有数据都是www.domain.com/client?client=

这是我的代码:

$query = "SELECT customer_ref, f_name, l_name FROM client_details WHERE ".$searchtype." LIKE '%".$searchterm."%'"; 
$result = $db->query($query); 

$customer_ref = $query['customer_ref']; 
$num_results = $result->num_rows; 

echo "<p>Number of clients found: ".$num_results."</p>"; 

for ($i=0; $i <$num_results; $i++) 
{ 
    $row = $result->fetch_assoc(); 
    echo "<p><strong>".($i+1).". Name: "; 
    echo "<a href='client.php?client=$customer_ref'>"; 
    echo htmlspecialchars(stripslashes($row['f_name'])); 
    echo "&nbsp;"; 
    echo htmlspecialchars(stripslashes($row['l_name'])); 
    echo "</a></strong>"; 
    echo "<br/>Address: "; 
} 

我在做什么错?

+0

'stripslashes' < - wth? (如果这个数据库完全相关,那么数据库已经包含垃圾了。) – user2864740 2014-10-03 15:53:02

+0

所以如果$ query是一个字符串,如何访问它中的元素就像它的一个关联数组? – Rooster 2014-10-03 15:53:07

+0

yer $ query ['customer_ref'];是空的,但在数据库中有一个客户ref,对不起,什么是查询结果解析函数我是新来的php,仍然在学习所有类型的东西 – 2014-10-03 15:55:51

回答

0

你没有提取任何东西,只是查询。你已经标记了mysqli,所以让我们用mysqli来做。

$result = $db->query($query); 
$query = $result->fetch_assoc(); 

http://php.net/manual/en/mysqli-result.fetch-assoc.php

你会然后在每个循环结果集。

$query = "SELECT customer_ref, f_name, l_name FROM client_details WHERE ".$searchtype." LIKE '%".$searchterm."%'"; 
$result = $db->query($query); 

echo "<p>Number of clients found: ". $result->num_rows ."</p>"; 
$i = 1; 
while($row = $result->fetch_assoc()) { 
    echo "<p><strong>".($i).". Name: "; 
    echo "<a href='client.php?client=". $row['customer_ref'] ."'>"; 
    echo htmlspecialchars(stripslashes($row['f_name'])); 
    echo "&nbsp;"; 
    echo htmlspecialchars(stripslashes($row['l_name'])); 
    echo "</a></strong>"; 
    echo "<br/>Address: "; 
    $i++; 
} 
+0

所以我只是把$ query = $ result-> fetch_assoc();其余的应该落入这个代码 – 2014-10-03 16:07:52

+0

是的,假设'$ db'包含一个'mysqli'对象。 – 2014-10-03 16:09:10

+0

我认为这是我认为我可能有跳跃之间的MySQL和mysqli – 2014-10-03 16:12:16