Я немного запутался в выходе из циклов и продолжении и т. Д. У меня есть 2 SQL-запроса, которые сопоставляют привилегии пользователя с фактическими привилегиями пользователя с новыми. Однако, если некоторые из новых привилегий совпадают с теми, которые есть у пользователя, я хочу пропустить вставку SQL и перейти к следующему:
public static function insertPriveleges($user_id,$priveleges)
{
$ex = explode(",",$priveleges); // separated by commas
if(count($ex)>0)
{
$x = false;
foreach($ex as $i => $priv)
{
$check_user = mysql_query("SELECT * FROM users_access_codes WHERE user_id='$user_id'") or die(mysql_error()); // get user's current priveleges
while($check_data = mysql_fetch_array($check_user))
{
if($check_data['access_code']!=$priv)
{
//if it doesn't match, insert
$sql = "INSERT INTO users_access_codes (uaID,user_id,access_code) VALUES (NULL,'".$user_id."','$priv')";
}
}
}
}
}
Я почти никогда не сталкиваюсь с ситуацией, когда нужно сопоставить более двух вещей в цикле. Мне нужно убедиться, что у меня не будет двойных привилегий для этого пользователя. Я знаю, что где-то во внутреннем цикле должен быть оператор «продолжить», но не уверен, где именно.