|
|
|
| Здравствуйте! задача такая: на сайте есть пункт "изменить личные данные пользователя" на странице page.php
<?php
session_start();
include ("block/bd.php");
if (isset($_POST['submit'])) {$submit = $_POST['submit'];}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Редактирование персональных данных</title>
<link href="style.css" rel="stylesheet" type="text/css">
<link href="style2.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="js/swfobject.js"></script>
<link rel="icon" href="http://engells.com/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="http://engells.com/favicon.ico" type="image/x-icon">
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<?php include("block/header.php");?>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<?php include("block/left_td.php");?>
<td valign="top">
<?php
if (isset($_GET['id'])) {$id = $_GET['id']; }
else
{ exit("Вы зашил на страницу без параметра!");}
if (!preg_match("|^[\d]+$|", $id)) {
die("<p>Неверный формат запроса! Проверьте URL</p>");
}
if (!empty($_SESSION['login']) and !empty($_SESSION['password']))
{
$login = $_SESSION['login'];
$password = $_SESSION['password'];
$result2 = mysql_query("SELECT id FROM users WHERE login='$login' AND password='$password' AND activation='1'",$db);
$myrow2 = mysql_fetch_array($result2);
if (empty($myrow2['id']))
{
exit("Эта страница доступна только для зарегистрированных посетителей.");
}
}
else {
include("error_user.php");
exit(); }
$result = mysql_query("SELECT * FROM users WHERE id='$id'",$db);
$myrow = mysql_fetch_array($result);
if (empty($myrow['login'])) { exit("Пользователя не существует! Возможно он был удален.");}
if (isset($id))
{
echo "<div class='q'><p class='reg_update'>Редактирование персональных данных</p></div>";
print <<<HERE
<div class="lesspec">
<div align="center" class="autorised">
<a name="topn" id="#topn"></a>
<form action="update_user.php" method="post">
<fieldset><legend class='inputtext'>Сменить логин</legend>
<span class='inputtext'>Ваш логин: <strong>$myrow[login]</strong></span><br />
<br />
<span class='inputtext'> Новый логин: </span><input name="login" type="text" size="40" maxlength="40" id="login" class="text_edit" />
<span class='inputtext'><br />*А-я, A-z, от 2 до 20 букв</span><br />
<div style="margin-bottom:5px;"></div>
<input class="formbutton" type='submit' name='submit' value='изменить'>
</fieldset>
</form>
<br>
<form action="update_user.php" method="post">
<fieldset><legend class='inputtext'>Сменить Ваше имя</legend>
<span class='inputtext'>Ваше имя: <strong>$myrow[name]</strong></span><br />
<br />
<span class='inputtext'> Новое имя: </span><input name="name" type="text" size="40" maxlength="40" id="name" class="text_edit" />
<span class='inputtext'><br />*А-я, A-z, от 3 до 15 букв</span><br />
<div style="margin-bottom:5px;"></div>
<input class="formbutton" type='submit' name='submit' value='изменить'>
</fieldset>
</form>
<br>
<form action="update_user.php" method="post">
<fieldset><legend class='inputtext'>Изменить пароль</legend>
<br />
<span class='inputtext'> Новый пароль: </span><input name="password" type="text" size="40" maxlength="40" id="login" class="text_edit" />
<span class='inputtext'><br />*А-я, A-z, от 3 до 15 букв</span><br />
<div style="margin-bottom:5px;"></div>
<input class="formbutton" type='submit' name='submit' value='изменить'>
</fieldset>
</form>
<br>
<form action="update_user.php" method="post">
<fieldset><legend class='inputtext'>Изменить email</legend>
<span class='inputtext'>Ваш логин: <strong>$myrow[email]</strong></span><br />
<br />
<span class='inputtext'> Новый email: </span><input name="email" type="text" size="40" maxlength="40" id="login" class="text_edit" />
<div style="margin-bottom:5px;"></div>
<input class="formbutton" type='submit' name='submit' value='изменить'>
</fieldset>
</form>
<br>
<form action="update_user.php" method="post" enctype='multipart/form-data'>
<fieldset><legend class='inputtext'>Аватар</legend>
<span class='inputtext'>Ваш аватар:<br>
<img alt='аватар' src='$myrow[avatar]'><br />
<br />
<span class='inputtext'>Изменить аватар: </span><input type="FILE" name="fupload" style='margin:0px; padding:0px; border: 1px #c1c1c1 solid; font-family: Verdana; font-size: 12px; width:160px; color:#424242; margin-bottom:2px;'>
<span class='inputtext'Изображение должно быть формата jpg, gif или png.</span>
<div style="margin-bottom:5px;"></div>
<input class="formbutton" type='submit' name='submit' value='Загрузить'>
</fieldset>
</form>
</div></div></div></div>
HERE;
}
?>
</td>
<?php include("block/right_td.php");?>
</tr>
</table></td>
</tr>
<tr>
<?php include("block/footer.php");?>
</tr>
</table>
</body>
</html>
|
а за обработчик отвечает файл update_user.php
я бы хотел сделать обработчик на том же файле, page.php
подскажите пожалуйста, как это сделать, т.е. как прописать проверку? | |
|
|
|
|
|
|
|
для: uvajs
(14.08.2010 в 23:45)
| | люди помогите | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 18:44)
| | НУ в самом начале скрипта делаешь проверку какая кнопка была нажата(допустим if(isset($_POST['submit']) дальше в этом блоке производишь нужные операции, формируешь сообщение о результатах работ,(формируешь страницу и завершаешь скрипт(exit) или даешь ему дальше выводить формы, вообщем все зависит от задачи | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 18:44)
| | Попова попроси. | |
|
|
|
|
|
|
|
для: nikita2206
(15.08.2010 в 20:48)
| | >Попова попроси.
не знаешь, просто молчи! завесть это....! | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 21:22)
| | Ты думаешь я не знаю? Думаешь завидую? Ха | |
|
|
|
|
|
|
|
для: nikita2206
(15.08.2010 в 21:25)
| | >Ты думаешь я не знаю? Думаешь завидую? Ха
если нет, то проигнорируй тему и все. | |
|
|
|
|
|
|
|
для: uvajs
(14.08.2010 в 23:45)
| | А зачем это у вас на каждое поле своя форма, вам что одной мало? | |
|
|
|
|
|
|
|
для: sim5
(15.08.2010 в 21:33)
| | >А зачем это у вас на каждое поле своя форма, вам что одной мало?
так надо. | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 22:46)
| | >так надо.
НУ тогда кнопкам хоть бы разные именна давали, чтобы знать что именно было нажато :), ну а принцип я написал в первом овтете, осталось только на php перенести | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 22:46)
| | ну это не ответ. если Вы создали столько форм на одной странице, то поделитесь, пожалуйста, своими соображениями по этому поводу. | |
|
|
|
|
 13.9 Кб |
|
|
для: Slo_Nik
(16.08.2010 в 00:42)
| | >ну это не ответ. если Вы создали столько форм на одной странице, то поделитесь, пожалуйста, своими соображениями по этому поводу.
просто сделал так, посмотрите пример: | |
|
|
|
|
|
|
|
для: uvajs
(16.08.2010 в 03:08)
| | >просто сделал так, посмотрите пример:
понимаю, что просто, но если пользователю надо будет изменить более одного параметра? | |
|
|
|
|
|
|
|
для: Slo_Nik
(16.08.2010 в 10:16)
| | >понимаю, что просто, но если пользователю надо будет изменить более одного параметра?
по одному параметру | |
|
|
|
|
|
|
|
для: uvajs
(16.08.2010 в 13:31)
| | Это и плохо, ради красоты, в кавычках, доставлять неудобство пользователю. К тому же, ради дизайна иметь кучу форм, это не оправдано, так как и одну форму (пусть с несколькими кнопками submit) можно также разукрасить. | |
|
|
|
|
|
|
|
для: sim5
(16.08.2010 в 13:37)
| | > так как и одну форму (пусть с несколькими кнопками submit) можно также разукрасить.
а в этом случаи будет какая разница? рас все равно несколько кнопок... | |
|
|
|
|
|
|
|
для: uvajs
(16.08.2010 в 14:20)
| | Конечно будет. Вот только не стройте козней пользователю, дайте ему возможность сразу все изменять, одним запросом, а то материть вас будут, и правильно.... | |
|
|
|
|
|
|
|
для: uvajs
(16.08.2010 в 13:31)
| | Этим Вы отталкиваете пользователя, а надо стремится к тому, что бы пользователю было удобно изменять свои данные.
Сделайте это одной формой, один input типа submit, так будет гораздо лучше.
Ну а если Вы всё таки хотите несколько кнопок, то обратите своё внимание к javascript/ jquery | |
|
|
|
|
|
|
|
для: uvajs
(16.08.2010 в 03:08)
| | "Ваш пароль: 012603" - то-есть вот так вот говоришь пароль?
"*А-я, A-z, от 3 до 15 букв" (это тоже про пароль) - зачем? Зачем ограничивать пользователя, мало того что в длине пароля, так еще и в допустимых символах? | |
|
|
|
|
|
|
|
для: uvajs
(15.08.2010 в 22:46)
| | Ужас, другого и не скажешь. | |
|
|
|
|
|
|
|
для: uvajs
(14.08.2010 в 23:45)
| | наверное чисто в рабочем плане, я бы всё-таки отрезала сами обработчики от форм.
Это несколько облегчило бы работу, да и на сервере такой вариант обрабатывается куда быстрее..
затем проверяла бы поле на заполненность, если поле заполнено-проверяем чем заполнено. Если все правильно в форме №1 - включаем в текст форму 2 и т.д. в конце бы все преобразовала в локальные переменные из сессионных и обработала.Кстати, а где сессию закрывать планируете? | |
|
|
|
|
|
|
|
для: Nextia
(16.08.2010 в 03:20)
| | >Кстати, а где сессию закрывать планируете?
не совсем я вас понял, а зачем зарыть сессию? | |
|
|
|