PHP+;动态网站,链接
我正在尝试创建以下链接: test.com/article.php?=$id,其中$id来自数据库PHP+;动态网站,链接,php,mysql,Php,Mysql,我正在尝试创建以下链接: test.com/article.php?=$id,其中$id来自数据库 $sql = "SELECT * FROM articles WHERE writer='$w_name' "; $result = mysqli_query($conn, $sql); $q = array(); $l = array(); if (mysqli_num_rows($result) > 0) { while ($row = m
$sql = "SELECT * FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
$q = array();
$l = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$q[]=$row['header'];
$l[]=$row['id'];
}
}
例如,我有:
$q=1,2,3和$l=1链接名、2链接名、3链接名
我试着用这种方式一起做,但效果不好:
<?
foreach($q as $header)
{
echo'<li>'.$header.'</li>';
}
?>
<?
foreach($l as $id)
{
echo "<a href='article.php?=$id'>".$header.'<br>'.'</a>';
}
?>
foreach
循环最适合遍历单个数组。
如果您坚持将数据放在两个数组中,那么使用带有索引的for
循环而不是foreach
循环来迭代数组就更容易了
所以试试这个:
for($i=0; $i < count($l); $i++) {
echo "<a href='article.php?=".$l[$i]."'>".$q[$i].'<br>'.'</a>';
}
for($i=0;$i
在此示例中,使用索引$i
和$l[$i]
以及$q[$i]
Aforeach
循环访问数据最适合遍历单个数组。
如果您坚持将数据放在两个数组中,那么使用带有索引的for
循环而不是foreach
循环来迭代数组就更容易了
所以试试这个:
for($i=0; $i < count($l); $i++) {
echo "<a href='article.php?=".$l[$i]."'>".$q[$i].'<br>'.'</a>';
}
for($i=0;$i
在此示例中,使用索引$i
和$l[$i]
以及$q[$i]
Aforeach
循环访问数据最适合遍历单个数组。
如果您坚持将数据放在两个数组中,那么使用带有索引的for
循环而不是foreach
循环来迭代数组就更容易了
所以试试这个:
for($i=0; $i < count($l); $i++) {
echo "<a href='article.php?=".$l[$i]."'>".$q[$i].'<br>'.'</a>';
}
for($i=0;$i
在此示例中,使用索引$i
和$l[$i]
以及$q[$i]
Aforeach
循环访问数据最适合遍历单个数组。
如果您坚持将数据放在两个数组中,那么使用带有索引的for
循环而不是foreach
循环来迭代数组就更容易了
所以试试这个:
for($i=0; $i < count($l); $i++) {
echo "<a href='article.php?=".$l[$i]."'>".$q[$i].'<br>'.'</a>';
}
for($i=0;$i
在本例中,使用索引$i
和$l[$i]
以及$q[$i]
访问数据。您只需要一个数组:
$sql = "SELECT * FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
$q = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$q[$row['id']]=$row['header'];
}
}
之后,只需按所需格式打印阵列:
foreach($q as $href => $text) {
echo '<a href="http://test.com/article.php?=' . $href . '">' . $text . '</a><br />';
}
foreach($q as$href=>$text){
回声“
”;
}
您只需要一个阵列:
$sql = "SELECT * FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
$q = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$q[$row['id']]=$row['header'];
}
}
之后,只需按所需格式打印阵列:
foreach($q as $href => $text) {
echo '<a href="http://test.com/article.php?=' . $href . '">' . $text . '</a><br />';
}
foreach($q as$href=>$text){
回声“
”;
}
您只需要一个阵列:
$sql = "SELECT * FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
$q = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$q[$row['id']]=$row['header'];
}
}
之后,只需按所需格式打印阵列:
foreach($q as $href => $text) {
echo '<a href="http://test.com/article.php?=' . $href . '">' . $text . '</a><br />';
}
foreach($q as$href=>$text){
回声“
”;
}
您只需要一个阵列:
$sql = "SELECT * FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
$q = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$q[$row['id']]=$row['header'];
}
}
之后,只需按所需格式打印阵列:
foreach($q as $href => $text) {
echo '<a href="http://test.com/article.php?=' . $href . '">' . $text . '</a><br />';
}
foreach($q as$href=>$text){
回声“
”;
}
解决方案:
此解决方案将消耗更少的内存和效率
你可以这样使用它。假设您在articles表中有id和header字段。通过使用单次迭代(循环),您可以实现所需的结果
$sql = "SELECT id,header FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
echo "<a href='article.php?=$id'>" . $row['header'] . '</a>';
echo '<br />';
}
}
$sql=“从文章中选择id,标题,其中writer='$w_name';
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
while($row=mysqli\u fetch\u assoc($result)){
$id=$row['id'];
回声“;
回声“
”;
}
}
解决方案:
此解决方案将消耗更少的内存和效率
您可以这样使用它。假设您在articles表中有id和header字段。通过使用单次迭代(循环),您可以实现您想要的结果
$sql = "SELECT id,header FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
echo "<a href='article.php?=$id'>" . $row['header'] . '</a>';
echo '<br />';
}
}
$sql=“从文章中选择id,标题,其中writer='$w_name';
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
while($row=mysqli\u fetch\u assoc($result)){
$id=$row['id'];
回声“;
回声“
”;
}
}
解决方案:
此解决方案将消耗更少的内存和效率
你可以这样使用它。假设您在articles表中有id和header字段。通过使用单次迭代(循环),您可以实现所需的结果
$sql = "SELECT id,header FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
echo "<a href='article.php?=$id'>" . $row['header'] . '</a>';
echo '<br />';
}
}
$sql=“从文章中选择id,标题,其中writer='$w_name';
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
while($row=mysqli\u fetch\u assoc($result)){
$id=$row['id'];
回声“;
回声“
”;
}
}
解决方案:
此解决方案将消耗更少的内存和效率
您可以这样使用它。假设您在articles表中有id和header字段。通过使用单次迭代(循环),您可以实现您想要的结果
$sql = "SELECT id,header FROM articles WHERE writer='$w_name' ";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
echo "<a href='article.php?=$id'>" . $row['header'] . '</a>';
echo '<br />';
}
}
$sql=“从文章中选择id,标题,其中writer='$w_name';
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
while($row=mysqli\u fetch\u assoc($result)){
$id=$row['id'];
回声“;
回声“
”;
}
}
或者只构建一个数组,因为标题和ID似乎在臀部绑在一起……你可能是对的,我只是认为opt有理由将数据拆分为两个数组。它再次为我提供了所有组合。9个链接3@Misa,请注意,只有一个用于循环,我希望看到您的解决方案的更多解释。代码转储对未来的编码人员没有多大帮助。或者只构建一个数组,因为标题和ID似乎是紧密联系在一起的……你可能是对的,我只是认为opt有理由将数据拆分为两个数组。它再次给了我所有的组合。9个链接3@Misa,请注意,只有一个用于循环,我希望看到您的解决方案的更多解释。代码转储对未来的编码人员没有多大帮助。或者只构建一个数组,因为标题和ID似乎是紧密联系在一起的……你可能是对的,我只是认为opt有理由将数据拆分为两个数组。它再次给了我所有的组合。9个链接3@Misa,请注意,只有一个用于循环,我希望看到您的解决方案的更多解释。代码转储对未来的编码人员没有多大帮助,或者只构建一个数组,因为头文件和ID似乎是紧密联系在一起的……您需要