0

我很长时间以来正在重新访问 php 和 mySQL。

mysql_select_db($database_conn, $conn);
$query = sprintf("SELECT DISTINCT Username FROM Entries ");
$result = mysql_query($query);
$row_results = mysql_fetch_assoc($result);

<?php do {
//$name = $row_results['Username'];
//echo $name, "<br/>";
echo '<a href=\"$row_results['Username'],.php\">';
echo '$row_results['Username'],'s overview </a><br/>';
}

while ($row_results = mysql_fetch_assoc($result)); ?>

我想要做的是从结果中回显链接,链接形式为 username.php,用户名存储在数据库中。

我在转义 /" 中使用了单引号和双引号,但得到了不同的错误,我知道它会像 ; 或 " 一样简单。如果有更好的方法来解决这个问题,您是否可以解释一下有什么问题?

查询是正确的,注释掉的代码也可以自己运行。

谢谢

4

6 回答 6

1

您不能通过单引号解析变量:

echo '<a href=\"$row_results['Username'],.php\">';

利用

echo '<a href="'.$row_results['Username'].'">';
于 2012-08-01T13:14:43.110 回答
0

尝试:

echo '<a href="'.$row_results['Username'].'.php">';
echo $row_results['Username'].'\'s overview </a><br/>';
于 2012-08-01T13:14:24.387 回答
0

这是您的错误:

  1. 即使您DISTINCT在 SQL 查询中使用,也可能有多个条目,因此您必须使用 while 循环。
  2. 你在那里有一个逗号(可能是错字)。
  3. 您需要转义 php 变量。

所以在做了上面的事情之后,应该是这样的。

while ($row_results = mysql_fetch_assoc($result)) {
  echo '<a href="' .$row_results["Username"]. '.php">';
} 
于 2012-08-01T13:14:31.390 回答
0
mysql_select_db($database_conn, $conn);
$query = sprintf("SELECT DISTINCT Username FROM Entries ");
$result = mysql_query($query);
$row_results = mysql_fetch_assoc($result);

<?php do {
    //$name = $row_results['Username'];
    //echo $name, "<br/>";
    echo '<a href="'.$row_results['Username'].'php">';
    echo $row_results['Username'].'\'s overview </a><br/>';
}
while ($row_results = mysql_fetch_assoc($result)); ?>
于 2012-08-01T13:14:37.447 回答
0

在我看来,您的 html 字符串的连接和用户名不正确。

目前,您正在写入页面的字符串是

<a href=\"$row_results['Username'],.php\">

您需要做的是将 html 与来自数据库的值连接起来。

这可以这样做:

echo '<a href=\"'.$row_results['Username'].'.php\">';
echo $row_results['Username'].'\'s overview </a><br/>';

注意“。” 连接字符串的两个药水,以及 's 中撇号的擒纵机构

于 2012-08-01T13:17:21.873 回答
-1

似乎您与那里的“和”混淆了。您真的应该避免使用除此之外的任何东西'-从长远来看,它只会咬您一口。

另外:您与 连接.,而不是与,

mysql_select_db($database_conn, $conn);
$query = sprintf('SELECT DISTINCT Username FROM Entries ');
$result = mysql_query($query);
$row_results = mysql_fetch_assoc($result);

do {
    $name = $row_results['Username'];
    echo $name.'<br/>';
    echo '<a href="'.$name.'.php">';
    echo $name.'\'s overview </a><br/>';
} while ($row_results = mysql_fetch_assoc($result)); ?>
于 2012-08-01T13:14:12.077 回答