|
|
|
| Смотрите, есть в таблице 3 ячейки - имя, пароль и статус (обозначаются они как name1, name2, status). При значении ячейки status - 0, юзер не может авторизироваться, если там 1 - то может. При регистрации юзер автоматически получает значение status 0 и задача ниже указанного кода - подтверждение регистрации. Сама конструкция - выводит на страницу юзеров у которых статус -= 0 и выведены они через select, то есть админ просто нажимает несколько юзеров и к ним есть действие - авторизовать.
Там все работает, кроме самой проблемы, а проблема в том, что когда админ выбрал 1 или несколько человек - выбранный статус присваивается всем участникам ! Не понимаю, как сделать, чтобы при нажатии в sql запрос указывался именно тот человек, который выбран. Помогите пожалуйста )
<?php
session_start();
$db = mysql_connect ("localhost", "root", "");
mysql_select_db("13.07.11", $db);
if(!$_SESSION['user_auth']){
header("Location: enter.php");
exit;
}
if($_GET['do'] == 'logout'){
unset($_SESSION['user_auth']);
session_destroy();
header("Location: index.php");
exit;
}
?>
<p><a href="index.php">Главная</a> | <a href="contact.php">Контакты</a> | <a href="admin.php">Админка</a> | <a href="reg.php">Регистрация</a></p>
<hr />
Это admin.php
<a href="?do=logout">Выход</a>
<br />
<div style="float: left;">
</div>
<div style="float: left;">
<?php
$query = "SELECT * FROM names where status = '0' ";
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
{
$nomer = $row['name1'];
}
$selectt = $_POST['selectt'];
$b_status = $_POST['statusn'];
$up = mysql_query("UPDATE names SET status='$b_status' WHERE name1='$selectt';", $db);
echo "
<form method='post'>
<select name='statusn'>
<option value='0'>Сделать не авторизованным</option>
<option value='1'>Сделать авторизованным</option>
</select>
<input name='up' type='submit' value='Отправить'>
</form>";
echo "
<form method='post'>
<select multiple='1' style='height:20px;' name='selectt' >
<option value='.$nomer.'>Логин:".$nomer."</option>
</select>
</form>";
?>
</div>
<?php
?>
|
| |
|
|
|
|
|
|
|
для: Belkin
(18.07.2011 в 05:34)
| | У вас тут ошибка с конкатенацией: <option value='".$nomer."'>Логин:".$nomer."</option>
Кроме того, если вы хотите менять статус сразу нескольким юзерам, то передавать необходимо массив с логинами, тоесть name='selectt[]', а в скрипте формируете запрос с условием WHERE name1 IN (список логинов) ...как превратить массив в список наверно должны знать уже, пробуйте решить, что не знаете спрашивайте. | |
|
|
|
|
|
|
|
для: Emm
(18.07.2011 в 06:46)
| | Спасибо вам большое за то, что помогли ! Действительно спасибо !
Правда на счет массива я примерно понимаю как его создать, но в этом случае не до конца )
не могли бы вы детальней показать? и sql запрос так же )
Гость, вам тоже спасибо ! Буду делать проверку ) чтобы не задавать зря вопросов ) спасибо ! | |
|
|
|
|
|
|
|
для: Emm
(18.07.2011 в 06:46)
| | ребята, я все-таки немного не понял, как сделать массив и всунуть его в sql запрос.. | |
|
|
|
|
|
|
|
для: Belkin
(19.07.2011 в 21:14)
| | Вы добились того, что из формы в обработчик передается массив? Или загвоздка с формирование запроса? | |
|
|
|
|
|
|
|
для: cheops
(20.07.2011 в 12:35)
| | возможно, вот просто мне написали
>У вас тут ошибка с конкатенацией: <option value='".$nomer."'>Логин:".$nomer."</option>
Кроме того, если вы хотите менять статус сразу нескольким юзерам, то передавать необходимо массив с логинами, тоесть name='selectt[]', а в скрипте формируете запрос с условием WHERE name1 IN (список логинов) ...как превратить массив в список наверно должны знать уже, пробуйте решить, что не знаете спрашивайте.
и я пытаюсь понять как это реализовать. | |
|
|
|
|
|
|
|
для: cheops
(20.07.2011 в 12:35)
| | возможно, вот просто мне написали
>У вас тут ошибка с конкатенацией: <option value='".$nomer."'>Логин:".$nomer."</option>
Кроме того, если вы хотите менять статус сразу нескольким юзерам, то передавать необходимо массив с логинами, тоесть name='selectt[]', а в скрипте формируете запрос с условием WHERE name1 IN (список логинов) ...как превратить массив в список наверно должны знать уже, пробуйте решить, что не знаете спрашивайте.
и я пытаюсь понять как это реализовать. | |
|
|
|
|
|
|
|
для: Belkin
(18.07.2011 в 05:34)
| | Один совет - когда что-о не работает так как ожидалось - проверяйте данные которые передаете скрипту. В данном случае попробуйте вывести перед обработкой пост запроса данные которые получаете:
echo '<pre>'; var_dump($_POST); echo '</pre>';
|
| |
|
|
|