С вашим кодом много ошибок:
- Вы не закрываете
for
в цикле - в вашей форме нет действий
- вы начинаете новую таблицу для каждого цикла
Замените кнопки отправки на якоря и добавьте туда параметры.Затем вы можете настроить привязку так, чтобы она выглядела как кнопка.
<input type="submit" name="decline" value="Decline Request" >
становится
echo "<a href="yourfile.php?userid=".$user['userid'].">Decline request</a>";
Удалите все <form>
s и загрузите все в 1 таблицу.* Результат:
<?php
if(isset($_GET['action']) AND isset($_GET['userid'])){
switch($_GET['action']){
case "accept":
// do whatever
break;
case "decline":
// do whatever
break;
default:
die('something wrong');
break;
}
}
echo '<table width="100%">';
for($i=0; $i <= count($userExplode); $i++){
$q = "
SELECT u.userid,u.username, userLocation
FROM users u
INNER JOIN userLocation ul ON u.userid = ul.userid
WHERE u.userid = ".$userExplode[$i]."
";
$rs = mysql_query($q) or die(mysql_error());
$user = mysql_fetch_array($rs);
$locationExplode = explode("~",$user['userLocation']);
//the displayed output is working correctly so I know it's setting $user['userid'] properly
echo '<tr><td><a href="profile.php?userid=' . $user['userid'] . '">' . $user['username'] . '</a></td>'.
'<td>' . $locationExplode[0] . ', ' . $locationExplode[1] . '</td>'.
'<td><a href="yourfile.php?userid=' . $user['userid'] . '&action=accept">Accept Request</a></td>'.
'<td><a href="yourfile.php?userid=' . $user['userid'] . '&action=decline">Decline Request</a></td></tr>';
}
echo '</table>';
Я думаю, что это только вершина айсберга .. Как вы, например, получили $userExplode
?Это очень странно и нелогично.Я предполагаю, что вы сначала запустите запрос, чтобы получить всех пользователей, а затем выполните цикл с этим для?