$q = "SELECT user_id FROM users WHERE partner='$qpartner' AND group_id='$gi' AND status='1'";
$r = mysqli_query ($dbc, $q) or trigger_error("Query: $q
<br />MySQL Error: " . mysqli_error($dbc));
while ($row = mysqli_fetch_array($r)) {
$usinneed[] = $row[0];
}
$affected = mysqli_affected_rows($dbc);
$q2 = "SELECT user_id FROM users WHERE partner<>'$qpartner' AND group_id='$gi' AND status='1' ORDER BY RAND() LIMIT $affected";
$r2 = mysqli_query ($dbc, $q2) or trigger_error("Query: $q
<br />MySQL Error: " . mysqli_error($dbc));
while ($row = mysqli_fetch_array($r2)) {
$potent_partners[] = $row[0];
}
$current = end($usinneed);
$partners = array();
foreach ($usinneed as $user)
{
$partners[$user] = $current;
$current = $user;
$q = "UPDATE users SET partner = '{$partners[$user]}' WHERE user_id = '{$user}'";
mysqli_query ($dbc, $q) or trigger_error("Query: $q
<br />MySQL Error: " . mysqli_error($dbc));
}
print_r($partners);
I'm lost as soon as I come to the $current; that's where the changes are needed and I need help.
$usinneed is an array of all of the users who need a partner, and $potent_partners is an array of potential partners to pair with the Users In Need ($usinneed).
The arrays have an equal number of rows. How do I update the users table so that each $usinneed has their partner field set to one of the $potent_partners?