所以我已经尝试了很长时间,试图让它发挥作用,但到目前为止,我只能让一列使用超链接,当我查看If和Else语句时,它为什么发挥作用没有任何逻辑意义。
if (mysql_num_rows($result) > 0) {
$row = mysql_fetch_assoc($result);
print '<table><tr>';
foreach($row as $name => $value) {
print "<th>$name</th>";
}
print '</tr>';
while($row) {
print '<tr>';
foreach($row as $value) {
if($value['MobileNumber']){print "<td>$value</td>";}
else{print "<td><a href='/Test.php?MobileNumber=$value'>$value</a></td>";}
//else{print "<td><a href='/Test.php?TeamGroup=$value'>$value</a></td>";}
}
print '</tr>';
$row = mysql_fetch_assoc($result);
}
print '</table>';
我认为其他和如果应该交换以使逻辑合理,但如果我这样做,那就行不通了。如果我能让它合乎逻辑地工作,我就可以把我的第二个专栏作为Elseif,让它工作起来。我该如何更正?
我最希望它看起来像这样。我希望它能够做两列的超链接。所以类似于:
foreach($row as $key=>$value) {
if($key!='MobileNumber'){print "<td><a href='/Test.php?MobileNumber=$value'>$value</a></td>";}
elseif($key!='TeamGroup'){print "<td><a href='/Test.php?TeamGroup=$value'>$value</a></td>";}
else{print "<td>$value</td>";}}
但是,将此输出设置为所有列都具有/Test.php的超链接?MobileNumber=$value
通过使用以下方法使其工作:
foreach($row as $key=>$value) {
if($key=='MobileNumber'){print "<td><a href='/Test.php?MobileNumber=$value'>$value</a></td>";}
elseif($key=='TeamGroup'){print "<td><a href='/Test.php?TeamGroup=$value'>$value</a></td>";}
else{print "<td>$value</td>";}
}
这是您需要检查的列名。在foreach循环中,语法为
foreach($associative_array as $key=>$value){
...
}
因此,在这种情况下,您应该将代码更改为
foreach($row as $key=>$value) {
if($key!='MobileNumber'){
print "<td>$value</td>";
}else{
print "<td><a href='/Test.php?MobileNumber=$value'>$value</a></td>";
}
}