Цикл PHP дает одинаковые результаты для каждого элемента в цикле - PullRequest
1 голос
/ 16 августа 2011

У меня есть цикл в пользовательской CMS, который создает раскрывающийся список и позволяет мне выбирать и изменять автора сообщения.

К сожалению, это не работает, и у каждой опции есть синтаксис 'выбранный, когда он должен быть одним из них.

Что я наделал?

 while ($row = mysql_fetch_array($rows)) {
printf ('<option value=%d',$auth_id);

if ($auth_id == $current_auth) {
    echo ' selected';

}

printf (">%s", $name);
}

Ответы [ 3 ]

1 голос
/ 16 августа 2011

$auth_id нигде не меняется.Ваш сценарий может выглядеть так

$auth_id = 0;
$current_auth = 1;
while ($row = mysql_fetch_array($rows)) {
  $auth_id++; // ?? change here
  printf ('<option value=%d',$auth_id);

  if ($auth_id == $current_auth) {
      echo ' selected';

  }

  printf (">%s", $row['name']);
}
0 голосов
/ 16 августа 2011

Похоже, вы вообще не используете $ row в этом коде, это правильно?Естественно, $ auth_id и $ current_auth не изменятся.

0 голосов
/ 16 августа 2011

Вам необходимо заменить $ auth_id и $ name данными из строки, например, $ row ['auth_id'] или любые другие имена ваших полей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...