[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: НЕ могу прикрутить открытие окна к регистрации
BosveL
Есть форма регистрации, которая отправляется ajax'ом через onclick есть модальное окно, которое открывается тоже через onclick. Пользователь вводит данные и без перезагрузки скрипт отправляет их на обработчик и в спец. блоке показывает результат выполнения скрипта. Нужно сделать, что бы при положительном результате выходило модальное окно, не могу такое осуществить. Вот код:
форма:

<div id="enter_name1"></div><br>
<form
action="" method="post" enctype="multipart/form-data">
<fieldset
id="reg">
Ваши настроящие имя и фамилия<font color="#FF0000" style="font-size:18px;">*</font>: <br>
<input
name="name" type="text" maxlength="40" placeholder="Вася Пупкин" required><br>
Ваш email<font color="#FF0000" style="font-size:18px;">*</font>: <br>
<input
id="username" type="email" name="email" placeholder="vasya@example.com" required><br>
Желаемый пароль<font color="#FF0000" style="font-size:18px;">*</font>: <br>
<input
id="password" type="password" name="password" placeholder="Пароль" required><br>
Ваш телефон (моб. или дом.)<font color="#FF0000" style="font-size:18px;">*</font>: <br>
<input
name="tel" type="text" maxlength="40" placeholder="0777 777 77" required><br>
Ваш район: <br>
<select
name="obl" size="1" name="obl">
<option
value="1">Каменский район</option>
<option
value="2">Рыбницский район</option>
<option
value="3">Дубоссарский район</option>
<option
value="4">Григориопольский район</option>
<option
value="5">Бендерский район</option>
<option
value="6">Слободзейский район</option>
<option
value="7">Тираспольский район</option>
</select> <br>

Ваш город (посёлок)<font color="#FF0000" style="font-size:18px;">*</font>: <br>
<input
name="town" type="text" maxlength="25" placeholder="Тирасполь" required><br>
Ваш адрес: <br>
<input
name="addr" type="text" value="ул. " maxlength="40" placeholder="ул. Ленина 1"><br>
Ваше фото <br>
<input
type="file" name="filename" class="nostyle"> - Фото должно иметь не более 2-х МБайт.<br>Форматы: .jpg .jpeg .png .gif .bmp<br> <br>
Skype: <br>
<input
name="skype" type="text" maxlength="40" placeholder="nickname"><br>
ICQ: <br>
<input
name="icq" type="text" maxlength="40" placeholder="0000000"><br>
<input
type="hidden" name="gmt">
<p>
Выберите <strong><?php echo $_SESSION['fruit']?></strong> для подтвеждения регистрации:</p>
<div
class="captcha">
<img
src="img/apple.png" width="50px" height="50px" alt="яблоко">
<img
src="img/apricot.png" width="50px" height="50px" alt="абрикос">
<img
src="img/kiwi.png" width="50px" height="50px" alt="киви">
<img
src="img/lemon.png" width="50px" height="50px" alt="лимон">
<img
src="img/orange.png" width="50px" height="50px" alt="апельсин">
</div>
<input
type="hidden" name="fruit" id="fruit" value="">
</fieldset>
<fieldset
id="actions">
<label><input
type="checkbox" checked="checked" name="agree" value="1"> Я согласен/на с правилами doska-pmr</label><br><br>
<input
type="submit" id="submit" value="Зарегистрироваться" onClick="saveform (this.form);return false;">
<br><br> <div
id="enter_name2"></div>
</fieldset>
</form>
<script
type="text/javascript">
var
d = new Date()
var gmt = -d.getTimezoneOffset()/60;
var f1 = document.forms[1];
f1.gmt.value = gmt;
</script>
<script
type="text/javascript">
function
saveform (data)
{
var name = data.name.value;
var email = data.email.value;
var password = data.password.value;
var tel = data.tel.value;
var obl = data.obl.value;
var town = data.town.value;
var addr = data.addr.value;
var skype = data.skype.value;
var icq = data.icq.value;
var gmt = data.gmt.value;
var agree = data.agree.value;
var fruit = data.fruit.value;
var filename = data.filename.value;
$.post('obr/add_user1.php',{name:name,email:email,password:password,tel:tel,obl:obl,town:town,addr:addr,skype:skype,icq:icq,gmt:gmt,agree:agree,fruit:fruit,filename:filename},function(data){
$('#enter_name1').html(data);
$('#enter_name2').html(data);
},'json');
}
</script>


обработчик:

<?php
session_start();
if(!$_POST)
{
echo "<html><head>
<meta http-equiv='Refresh' content='0; URL=../index.php'>
</head></html>"
;
} else {
include ("../blocks/bd.php");
$fruit = $_POST['fruit'];
if ($_SESSION['fruit'] != $fruit)
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Вы не правильно выбрали проверочную картинку! Попробуйте ещё раз!</font><br>"));
}
if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name); }}
if (isset($_POST['email'])) {$email = $_POST['email']; if ($email == '') {unset($email);}}
if (isset($_POST['password'])) {$password = $_POST['password']; if ($password == '') {unset($password);}}
if (isset($_POST['tel'])) {$tel = $_POST['tel']; if ($tel == '') {unset($tel);}}
if (isset($_POST['town'])) {$town = $_POST['town']; if ($town == '') {unset($town);}}
if(isset($name) and isset($email) and isset($password) and isset($tel) and isset($town))
{
$result_us = mysql_query("SELECT id FROM users WHERE email LIKE '%$email%'");
if (@mysql_num_rows($result_us) > 0)
{
$myrow_us = mysql_fetch_array($result_us);
do { $pr_email = $myrow_us['id']; }
while ($myrow_us = mysql_fetch_array($result_us));
if(isset($pr_email))
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Пользователь с таким E-mail уже зарегистрирован! Введите другой E-mail</font><br>"));
}
}

if(strlen($password) < 5)
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Пароль должен быть минимум 6 символов!</font><br>"));
}
if(strlen($password) > 21)
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Пароль должен быть максимум 20 символов!</font><br>"));
}
if (isset($_POST['obl'])) {$obl = $_POST['obl']; if ($obl == '') {unset($obl); }}
if (isset($_POST['addr'])) {$addr = $_POST['addr']; if ($addr == '') {unset($addr);}}
if (isset($_POST['skype'])) {$skype = $_POST['skype']; if ($skype == '') {unset($skype);}}
if (isset($_POST['icq'])) {$icq = $_POST['icq']; if ($icq == '') {unset($icq);}}
if (isset($_POST['gmt'])) {$gmt = $_POST['gmt']; if ($gmt == '') {unset($gmt);}}
if (isset($_POST['agree'])) {$agree = $_POST['agree']; if ($agree == '') {unset($agree); }}
if(!isset($agree))
{
die (json_encode ("<font style='font-size:20px; color:#C00; font-weight:600;'>Вы точно согласны с правилами сайта?!</font><br>"));
}
$pass_bmd5 = $password;
$password = md5(md5($password));
if(isset($obl))
{
if($obl == "1") { $obl = "Каменский район"; }
if($obl == "2") { $obl = "Рыбницкий район"; }
if($obl == "3") { $obl = "Дубоссарский район"; }
if($obl == "4") { $obl = "Григориопольский район"; }
if($obl == "5") { $obl = "Бендерский район"; }
if($obl == "6") { $obl = "Слободзейский район"; }
if($obl == "7") { $obl = "Тираспольский район"; }
}

function generate_code($length = 10){
$code = '';
$symbols = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPGRSTUVWXYZ';
for( $i = 0; $i < (int)$length; $i++ )
{ $num = rand(1, strlen($symbols));
$code .= substr( $symbols, $num, 1 ); }
return $code;
}
$code = generate_code();
if($_FILES["filename"]["size"] > 1024*2*1024)
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Размер вашей вотографии превышает 2 МБайта</font><br>"));
exit;
}
// Проверяем загружен ли файл
if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
{
// Если файл загружен успешно, перемещаем его
// из временной директории в конечную

$res_upl = move_uploaded_file($_FILES["filename"]["tmp_name"], "../images/".$code.$_FILES["filename"]["name"]); //$_FILES["filename"]["name"]
if($res_upl == true)
{

}

else
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Ошибка1 разрузки файла. Попробуйте загрузить ещё раз!</font><br>"));
}
}
else {
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Ошибка разрузки файла. Попробуйте загрузить ещё раз!</font><br>"));
}
$img = $code.$_FILES["filename"]["name"];
date_default_timezone_set("UTC");
$time = time();
$offset = $gmt;
$time += $gmt * 3600;
$date = date("d.m.Y H:i:s", $time);
$ip = $_SERVER["REMOTE_ADDR"];
$result = mysql_query ("INSERT INTO users (name,email,pass,tel,town,obl,addr,skype,icq,date,ip,pass_bmd5,gmt,img) VALUES ('$name', '$email','$password','$tel','$town','$obl','$addr','$skype','$icq','$date','$ip','$pass_bmd5','".$gmt."',$img)"); //,'".$gmt."'
if ($result == 'true')
{

if(isset($_SESSION['email']))
{if(isset($_SESSION['password'])){
unset($_SESSION['email']);
unset($_SESSION['password']);
}}
$_SESSION['identification'] = "1";
$_SESSION['vh_reg_upd'] = "1";
function generate_code($length = 23){
$code = '';
$symbols = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPGRSTUVWXYZ';
for( $i = 0; $i < (int)$length; $i++ )
{ $num = rand(1, strlen($symbols));
$code .= substr( $symbols, $num, 1 ); }
return $code;
}
$ident = generate_code();
$_SESSION['identification-code'] = $ident;
die (json_encode ("echo 'Регистрация прошла успешно. Входим в профиль... <html><head>
<meta http-equiv='Refresh' content='0; URL=../profile.php?email=
$email&password=$password&identification-code=$ident'>
</head></html>';"
));
}
else
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Не удалось зарегистрировать нового пользователя. Попробуйте ввести данные и отправить форму ещё раз!</font><br>"));
}
}

else
{
die (json_encode ("<font style='font-size:18px; color:#C00; font-weight:600;'>Вы не ввели все обязательные данные. Попробуйте ещё раз!</font><br>"));
}}
?>

и наконец мод. окно:

<!-- OPEN WINDOW -->
<div class="openWindow" id="html" style="display: none;">
<div
id="openCloseHtml"></div>
<div
id="open" style=""><div id="open2">
<div
class="openTitle" id="openTitle"></div>
<div
class="openText" id="openTexts"></div>
<div
class="openPanel" id="openPanel"><div class="entLink"></div></div>
</div></div><div
id="openPanel-out"></div>
</div>
<br>

<div
style="display: none;" id="window-help">
<div
id="title">Помощь</div>
<div
id="text">
<p>
Вы можете обратиться в службу поддержки пользователей.</p>
<p><b>
Выберите одну из тем:</b></p>
<p><ul
class="block ok bottom">
<li><a
href="#">Жалоба на пользователя</a></li>
<li><a
href="#">Жалоба на контент</a></li>
<li><a
href="#">Ошибки на сайте</a></li>
<li><a
href="#">Предложение по улучшению</a></li>
<li><a
href="#">Сотрудничество</a></li>
<li><a
href="#">Прочее</a></li>
</ul></p>

<p><b>
Правила написания заявки:</b></p>
<p><ul
class="bottom">
<li>
Вкратце описать свою проблему.</li>
<li>
Текст заявки должен быть ясным и понятным.</li>
<li>
Если Вы уже отсылали заявку, дождитесь ответа на неё.</li>
<li>
Если Вы забыли указать какие-либо элементы, Вы можете написать комментарий, уточнив полностью Вашу проблему.</li>
<li>
Не пишите слишком много комментариев к заявке. Если Вы сделали много ошибок или неточностей, удалите заявку и напишите новую.</li>
</ul></p>

<p
class="bottom">Для работы с сайтом необходимо войти или зарегистрироваться.</p>

<p><b>
После регистрации Вам будут доступны:</b></p>
<p><ul
class="bottom">
<li>
Безграничное общение с друзьями</li>
<li>
Личные фотоальбомы</li>
<li>
Личные заметки</li>
<li>
Загруженные документы</li>
<li>
Весь функционал сайта полностью бесплатен</li>
<li>
Ещё.. <?php echo $_POST['name']; ?> asd</li>
<li><a
href="#" onClick="saveform (this.form); return false;">Помощь</a></li>
</ul></p>
</div>
</div>
</div>

<div
class="endCopy" id="endLink">
<a
href="#" onclick="openWindow({width: 600, content: '#window-help'}); return false;">Помощь</a>
</div>



+ к мод окну ещё идёт js скрипт. Помогите пожалуйста.
скрипт загрузки файла можно не учитывать, так как он не работает.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.