Разработка информационной системы "Библиотека СТК"
Методика и этапы создания интернет-сайта, определение необходимого для данного процесса оборудования. Общие сведения о реализации программы, руководство программиста и оператора. Структура разработанной программы по модулям. Расчет себестоимости проекта.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 22.09.2012 |
Размер файла | 180,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
<! - г. Щербинка BEGIN->
<li>
<b>г. Щербинка:</b>
<ul>
<li>Россия, Московская обл.</li>
<li>г. Щербинка, ул. Юбилейная, д. 3а<br><i>(Бизнес-центр «Капитал», 3й этаж)</i></li>
<li>8 (495) 580-27-30</li>
<li>8 (4967) 58-44-88</li>
<li><a href= «mailto:info@rialcom.ru»>info@rialcom.ru</a></li>
</ul>
</li>
<li class= «under»>
<li><i>Режим работы:</i></li>
<ul>
<li>Вторник-Суббота с 10:00 до 19:00</li>
<li>Воскресенье, Понедельник выходной</li>
</ul>
</li>
<! - г. Щербинка END->
</ul>
<ul class= «contact» id= «butovo»>
<! - г. Москва, Бутово BEGIN->
<li>
<b>г. Москва, Бутово:</b>
<ul>
<li>Россия, г. Москва, ул. Грина, д. 18 <i>(Солярис)</i></li>
<li>8 (499) 500-31-11</li>
<li><a href= «mailto:info@rialcom.ru»>info@rialcom.ru</a></li>
</ul>
</li>
<li class= «under»>
<li><i>Режим работы:</i></li>
<ul>
<li>Вторник, Среда, Пятница, Суббота <br>с 10:00 до 20:00</li>
</ul>
</li>
<! - г. Москва, Бутово END->
</ul>
<ul class= «contact» id= «serpuhov»>
<! - г. Серпухов BEGIN->
<li>
<b>г. Серпухов:</b>
<ul>
<li>142200, Россия, Московская обл.</li>
<li>г. Серпухов, ул. Ворошилова, д. 130а</li>
<li><i>(Бизнес-центр «PLAZA», 5й этаж)</i></li>
<li>8 (495) 544-00-04</li>
<li>8 (495) 544-00-05</li>
<li><a href= «mailto:serp@rialcom.ru»>serp@rialcom.ru</a></li>
</ul>
</li>
<li class= «under»>
<li><i>Режим работы:</i></li>
<ul>
<li>Ежедневно с 10:00 до 19:00</li>
</ul>
</li>
<li class= «under»>
<b>По вопросам о проведении монтажных работ<br> в г. Серпухове звонить по телефону:</b>
<ul>
<li>8 (495) 544-00-06</li>
</ul>
</li>
<! - г. Серпухов END->
</ul>
</td>
<td class= «contact_links»>
<p><a href= «javascript:hideContacts ('centr_office')»>Центральный офис</a></p>
<p><a href= «javascript:hideContacts('klimovsk')»>г. Климовск</a></p>
<p><a href= «javascript:hideContacts('sherbinka')»>г. Щербинка</a></p>
<p><a href= «javascript:hideContacts('butovo')»>г. Москва, Бутово</a></p>
<p><a href= «javascript:hideContacts('serpuhov')»>г. Серпухов</a></p>
</td>
</tr>
</tbody>
</table>
</body>
</html>
// класс окошка
<? php
// no direct access
defined ('_JEXEC') or die ('Restricted access');
?>
<script type= «text/javascript» src= "<? php echo $this->baseurl;?>/scripts/window.js»></script>
<script type= «text/javascript» src= "<? php echo $this->baseurl;?>/scripts/flowplayer-3.1.0.min.js»></script>
<script type= «text/javascript»>
window.onload= function() {
win = new WandlWindow ('wandlWindow', {under:.4, title:'RialCom'});
}
</script>
<table id= «tbmain»>
<tr>
<td id= «top_left» rel= «wandl.ru»><div class= «back»></div></td>
<td id= «top_center» rel= «wandl.ru»>
<div class= «back»>
<div id= «caption»>Caption</div>
</div>
</td>
<td id= «top_right» rel= «wandl.ru»>
<div class= «back»>
<div id= «close»><div class= «back»></div></div>
</div>
</td>
</tr>
<tr>
<td id= «middle_left»></td>
<td id= «middle_center»>
<div id= «window_text»>
<div id= «wandlWindowLoader»></div>
<div id= «holder»></div>
</div>
</td>
<td id= «middle_right»> </td>
</tr>
<tr>
<td id= «bottom_left» rel= «wandl.ru»><div class= «back»></div></td>
<td id= «bottom_center» rel= «wandl.ru»><div class= «back»></div></td>
<td id= «bottom_right» rel= «wandl.ru»><div class= «back»></div></td>
</tr>
</table>
/*
WandlWindow ver 1.0
Chibisov Gennady 2009
http://www.wandl.ru
*/
var WandlWindow = new Class({
Extends: Request,
Implements: [Options, Events],
options: {
arrOfImages: new Array ('top_left', 'top_center', 'top_right', 'bottom_left', 'bottom_center', 'bottom_right', 'close'),
url: «,
holder: «,
under: 0,
shown: false,
imageAutoSize: true,
underColor: '#000',
underClose: true,
title: 'Окно',
style: 'blue',
width: 300,
height: 100,
contentWidth: 'auto',
contentHeight: 'auto'
},
initialize: function (element, options) {
this.setOptions(options);
this.element = $(element);
this.under = $('wandlWindowUnder');
this.btnClose = this.element.getElement ('#top_right');
this.divTitle = this.element.getElement ('#caption');
this.trTop = this.element.getElement ('#top_right').getParent();
this.trMiddle = this.element.getElement ('#middle_right').getParent();
this.trBottom = this.element.getElement ('#bottom_right').getParent();
this.tdCenter = this.element.getElement ('#middle_center');
this.windowText = this.element.getElement ('#middle_center').getElement ('#window_text');
this.frame = this.element.getElement ('#frameText');
this.object = this.element.getElement ('#objText');
this.image = this.element.getElement ('#wandlImage');
this.holder = this.element.getElement ('#holder');
this.loader = this.element.getElement ('#wandlWindowLoader');
this.deltaY = this.trTop.getStyle('height').toInt() + this.trBottom.getStyle('height').toInt(); // размер шапки и футера
if ((this.options.url)||(this.options.holder)) this.setUrl (this.options.url, this.options.holder);
this.setUnder (this.options.under);
//this.setSize (this.options.width, this.options.height);
this.setWidth (this.options.width);
this.setHeight (this.options.height);
this.setStyle (this.options.style);
this.setTitle (this.options.title);
this.setEvents();
},
setPosition: function (what, val) {
//this.setStyle (this.options.style);/*sdfasdfdf*/
if (what == 'x') {
leftt = (getScreenSize('width') - val) / 2 - 20;
if (leftt <= 0) leftt = 10;
this.element.setStyle ('left', leftt);
}
if (what == 'y') {
topp = (getScreenSize('height') - val - this.deltaY) / 2 + window.getScrollTop() - this.deltaY*0.5;
if (topp <= 0) topp = 10;
this.element.tween ('top', topp);
//this.element.setStyle ('top', topp);
}
},
setWidth: function(thisWidth) {
instance = this;
this.options.width = thisWidth;
this.setPosition ('x', this.options.width); // установка позиции по X
var widthTween = new Fx. Tween (this.tdCenter, {property:'width'});
widthTween.start (this.options.width);
//this.tdCenter.setStyle ('width', this.options.width);
/*if (pngfadefix) { // for ie7,8 with iepngfix from www.wandl.ru
topback = this.element.getElement ('#top_center').getElement ('.back');
topback.setStyle ('width', 'auto');
topfix = this.element.getElement ('#top_center').getElement('div');
topfix.setStyle ('width', 'auto');
bottomback = this.element.getElement ('#bottom_center').getElement ('.back');
bottomback.setStyle ('width', 'auto');
bottomfix = this.element.getElement ('#bottom_center').getElement('div');
bottomfix.setStyle ('width', 'auto');
this.under.fade([this.options.under+0.01], [this.options.under-0.01]); // for opera
}*/
},
setHeight: function(thisHeight) {
this.options.height = thisHeight;
this.setPosition ('y', this.options.height); // установка позиции по Y
//this.tdCenter.setStyle ('height', this.options.height);
this.tdCenter.tween ('height', this.options.height);
},
setStyle: function(thisStyle) {
this.options.style = thisStyle;
imagee = this.element.getElement ('#middle_left').getStyle ('background-image'); // выбираем картинку бэкграунда, в данном случае гифа левой голонки
bgImageFolder = getFolder(imagee); // получаем папку, где картинка находится
lenLines = this.options.arrOfImages.length;
for (i = 0; i < lenLines; i++) {
tdName = '#' + this.options.arrOfImages[i];
td = this.element.getElement(tdName);
el = td.getElement ('.back');
imagee = this.options.arrOfImages[i];
newImage = bgImageFolder + '/' + this.options.style + '/' + imagee + '.png)';
//alert(i);
el.setStyle ('background-image', newImage); // устанавливаем новый бэкграунд
}
if (this.under.getStyle('opacity')!= 0)
this.under.fade([this.options.under+0.01], [this.options.under-0.01]); // for opera
//this.under.setOpacity (this.options.under); // for opera
},
setUrl: function (thisUrl, thisHolder) {
if ((this.options.url == thisUrl)&&(this.options.holder == thisHolder)) return;
this.options.url = thisUrl;
this.options.holder = thisHolder;
instance = this;
if ((this.options.url == «)||(this.options.holder == «)) { //reset
this.holder.innerHTML = «;
}
if (this.options.holder == 'frame') { //frame
this.holder.innerHTML = '<iframe id= «frameText» src= «' + this.options.url + '» frameborder= «no»></iframe>';
}
else
if (this.options.holder == 'object') { //object
this.holder.innerHTML = '<object id= «objText» name= «objText» type= «text/html» data= «' + this.options.url + '» class= «mainContent»>Error</object>';
}
else
if (this.options.holder == 'flash') { //object
hr = this.options.url;
var aHref = new Element ('a', {'href':hr});
this.holder.innerHTML = «;
aHref.inject (this.holder);
flowplayer (aHref, «scripts/flowplayer-3.1.0.swf»);
}
else
if (this.options.holder == 'image') { //image
this.loader.setStyle ('display', 'block');
if (this.options.imageAutoSize) {
//this.setSize (300, 300);
this.holder.innerHTML = '<img id= «wandlImage» src= «' + this.options.url + '» onload= «instance.imageOnLoad (this.width, this.height);» />'; // реальный размер картинки
}
else this.holder.innerHTML = '<img id= «wandlImage» src= «' + this.options.url + '» onload= "$(\'wandlWindowLoader\').setStyle (\'display\', \'none\');» style= «width:100%; height:100%;» />'; // насильный размер =)
//this.holder.innerHTML = '<img id= «wandlImage» src= «' + this.options.url + '» onload= "$(\'wandlWindowLoader\').setStyle (\'display\', \'none\');» />';
}
},
setImageAutoSize: function(thisImageAutoSize) {
this.options.imageAutoSize = thisImageAutoSize;
},
imageOnLoad: function (imageWidth, imageHeight) {
this.loader.setStyle ('display', 'none');
this.setWidth(imageWidth);
this.setHeight(imageHeight);
//this.setSize (imageWidth, imageHeight);
},
setTitle: function(thisTitle) {
this.options.title = thisTitle;
this.divTitle.innerHTML = this.options.title;
},
setEvents: function() { // установка стандартных событий
instance = this;
this.btnClose.removeEvents();
this.btnClose.addEvent ('click', function() { // нажатие кнопки закрыть
instance.hide();
});
this.under.removeEvents();
if (this.options.underClose) {
this.under.addEvent ('click', function() { // нажатие по фону
instance.hide();
});
}
},
show: function() { // вывод окна
if (this.options.shown) return; // выведено ли уже окно?
this.element.setStyle ('display', 'block');
this.element.setStyle ('visibility', 'visible');
//this.setAlign (this.options.align);
//this.setSize (this.options.width, this.options.height);
this.showUnder();
this.options.shown = true; // окно выведено
},
hide: function() { // скрытие окна
instance = this;
this.setUrl ('', «);
this.options.shown = false; // окно закрыто
this.element.setStyle ('visibility', 'hidden');
this.element.setStyle ('display', 'none');
this.setHeight(100);
this.setWidth(300);
this.hideUnder(); // обязательно последним, иначе в IE не исчезает слой.
},
setUnder: function(thisUnder) {
this.options.under = thisUnder;
this.under.setOpacity(0);
},
setUnderColor: function(thisUnderColor) {
this.options.underColor = thisUnderColor;
},
setUnderClose: function(thisUnderClose) {
this.options.underClose = thisUnderClose;
this.setEvents();
},
showUnder: function() {
this.under.setStyle ('background-color', this.options.underColor);
this.under.setStyle ('display', 'block');
this.under.fade (this.options.under);
},
hideUnder: function() {
this.under.fade(0);
}
});
// онлайн заявка
<! DOCTYPE html PUBLIC «- //W3C //DTD XHTML 1.0 Strict //EN»
«http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd»>
<html xmlns= «http://www.w3.org/1999/xhtml»>
<meta http-equiv= «content-type» content= «text/html; charset=UTF-8» />
<head><title>Онлайн заявка</title>
<link rel= «stylesheet» href=»../styles/main.css» type= «text/css» />
<link rel= «stylesheet» href=»../styles/mainClasses.css» type= «text/css» />
<link rel= «stylesheet» href=»../styles/mainDives.css» type= «text/css» />
<link rel= «stylesheet» href= «scripts/formcheck/theme/classic/formcheck.css» type= «text/css» media= «screen» />
<link rel= «stylesheet» href= «styles/request.css» type= «text/css» />
<script type= «text/javascript» src=»../scripts/mod_rialcom_functions.js»></script>
<script type= «text/javascript» src=»../media/system/js/mootools.js»></script>
<script type= «text/javascript» src= «scripts/formcheck/lang/ru.js»> </script>
<script type= «text/javascript» src= «scripts/formcheck/formcheck.js»> </script>
<script type= «text/javascript» src= «scripts/navigation.js»></script>
<script type= «text/javascript» src= «scripts/request.js»></script>
</head>
<body>
<div id= «step1»><! - 11111111111111111111111111111111111111111111111111111->
<form id= «step1Form» name= «step1Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «sltCity»>Город</label>
<div id= «tdCities» name= «tdCities» class= «put»><! - Place for cities-></div>
</div>
<div class= «field»>
<label for= «sltStreet»>Улица</label>
<div id= «tdStreets» name= «tdStreets» class= «put»><! - Place for streets-></div>
<div class= «comment»>Если вашей улицы нет в списке, свяжитесь с нашим оператором по телефонам <b>8 (495) 502-79-46</b>, <b>8 (4967) 69-24-01</b> и сообщите название вашей улицы.</div>
</div>
<div class= «field»>
<label for= «sltHouse»>Дом</label>
<div id= «tdHouses» name= «tdHouses» class= «put»><! - Place for houses-></div>
<input type= «text» id= «txtHouse» name= «txtHouse» maxlength= «10» />
<div id= «houseYesNo»>
<input type= «checkbox» id= «chkHouseExist» name= «chkHouseExist» tabindex= «0» /> <label for= «chkHouseExist»>Моего дома здесь нет</label>
<input type= «hidden» id= «chkHouseExistValue» name= «chkHouseExistValue» value=»» />
</div>
<div class= «comment»>
Если Вашего дома нет в списке, вы можете оставить заявление самостоятельно, указав его номер. Заявления, поданные по данным домам, будут учитываться при развитии сети. Когда компания ЗАО «Риал Ком» начнет оказывать услуги связи по Вашему адресу, вы получите уведомление на электронную почту, а так же с Вами свяжется оператор и подтвердит заявление на подключение. Всю интересующую вас информацию вы можете узнать, позвонив: <b>8 (495) 502-79-46</b>, <b>8 (4967) 69-24-01</b>
</div>
</div>
</form>
</div>
<div id= «step2»><! - 22222222222222222222222222222222222222222222222222222->
<form id= «step2Form» name= «step2Form»>
<div id= «agreement»>
<div class= «field»>
<h3 id='agreementTitle'>Регламент действий Абонента при заключении Договора на оказание услуг связи ЗАО «Риал Ком» в режиме on-line.</h3>
<ol>
<li id='agreementFirst'>Ознакомиться на сайте ЗАО «Риал Ком»: <a class= «small» id= «site» href= «http://www.rialcom.ru» target= "_blank»>http://www.rialcom.ru</a> с текстом Договора на оказание услуг связи (<i>далее - Договор</i>).
</li>
<li>Заполнить Анкету.</li>
<li>Наличие технической возможности подтверждается телефонным звонком и уведомлением на указанную в заявке электронную почту.</li>
<li>Согласием на подключение является факт взноса первоначального авансового платежа за услуги (<i>реквизиты направляются на электронную почту</i>).</li>
<li>Время выполнения монтажных работ будет согласовано по телефону.</li>
<li>Предъявить для проверки паспорт, указанный при подаче заявления. Если паспортные данные не совпадают, работы по подключению не производятся.</li>
<li>Предоставить монтажнику конечное оборудование для первоначальной настройки.</li>
<li>Подписать Акт начала предоставления услуг связи и выполненных работ.</li>
<li>По окончании работ подписать Акт выполненных работ.</li>
</ol>
</div>
<p class= «red»>При неправильном заполнении паспортных данных в on-line заявке поступившие средства первоначального авансового платежа не возвращаются.</p>
<p class= «red» style= «border-top:none;»>При подаче он-лайн заявки вы соглашаетесь с тем, что Вам необходимо самостоятельно предоставить доступ к щитовым, начиная с самого верхнего этажа, до вашего.</p>
<div class= «field» style= «text-align:center; "><input type= «checkbox» id= «chkAgree» name= «chkAgree» class= «validate['required']» /> <label for= «chkAgree»>Условия принимаю</label> </div>
</div>
</form>
</div>
<div id= «step3»><! - 3333333333333333333333333333333333333333333333333333->
<form id= «step3Form» name= «step3Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «txtSurname»>Фамилия</label>
<div class= «put»><input type= «text» id= «txtSurname» name= «txtSurname» class= «validate ['required', 'alpha']» tabindex= «1» /></div>
</div>
<div class= «field»>
<label for= «txtName»>Имя</label>
<div class= «put»><input type= «text» id= «txtName» name= «txtName» class= «validate ['required', 'alpha']» tabindex= «2» /></div>
</div>
<div class= «field»>
<label for= «txtFathername»>Отчество</label>
<div class= «put»><input type= «text» id= «txtFathername» name= «txtFathername» class= «validate ['required', 'alpha']» tabindex= «3» /></div>
</div>
<div class= «field»>
<label for= «sltBirthDay»>Дата рождения</label>
<div class= «put»><span id= «spanDay»></span><span id= «spanMonth»></span><span id= «spanYear»></span></div>
</div>
</form>
</div>
<div id= «step4»><! - 4444444444444444444444444444444444444444444444444444->
<form id= «step4Form» name= «step4Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «txtSeria»>Серия и номер паспорта</label>
<div class= «put»>
<input type= «text» id= «txtSeria» name= «txtSeria» class= «validate ['required', 'length [4, - 1]', 'digit']» maxlength= «4» tabindex= «4» />
<input type= «text» id= «txtNomer» name= «txtNomer» class= «validate ['required', 'length [6, - 1]', 'digit']» maxlength= «6» tabindex= «5» />
</div>
</div>
<div class= «field»>
<label for= «txtWho»>Кем выдан</label>
<div class= «put»><input type= «text» id= «txtWho» name= «txtWho» class= «validate['required']» tabindex= «6» /></div>
</div>
<div class= «field»>
<label for= «sltWhoDay»>Когда выдан</label>
<div class= «put»><span id= «spanWhoDay»></span><span id= «spanWhoMonth»></span><span id= «spanWhoYear»></span></div>
</div>
<div class= «field»>
<label for= «txtAddress»>Адрес регистрации</label>
<div class= «put»><input type= «text» id= «txtAddress» name= «txtAddress» class= «validate['required']» tabindex= «7» /></div>
</div>
</form>
</div>
<div id= «step5»><! - 55555555555555555555555555555555555555555555555555555->
<form id= «step5Form» name= «step5Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «txtCityDis»>Город</label>
<div class= «put»><input type= «text» id= «txtCityDis» name= «txtCityDis» disabled= «disabled» /></div>
<div class= «comment»>Если вы хотите изменить пункт <i>Город</i>, <i>Улица</i> или <i>Дом</i>, вам необходимо <a href= "#» onclick= «rqStep=1; goToRequestStep();»>вернуться в начало</a></div>
</div>
<div class= «field»>
<label for= «txtStreetDis»>Улица</label>
<div class= «put»><input type= «text» id= «txtStreetDis» name= «txtStreetDis» disabled= «disabled» /></div>
</div>
<div class= «field»>
<label for= «txtHouseDis»>Дом</label>
<div class= «put»><input type= «text» id= «txtHouseDis» name= «txtHouseDis» disabled= «disabled» /></div>
</div>
<div class= «field»>
<label for= «txtKvartira»>Квартира</label>
<div class= «put»><input type= «text» id= «txtKvartira» name= «txtKvartira» class= «validate ['required', 'length [1,4]', 'digit']» maxlength= «4» tabindex= «8» /></div>
</div>
<div class= «field»>
<label for= «txtPodezd»>Подъезд</label>
<div class= «put»><input type= «text» id= «txtPodezd» name= «txtPodezd» class= «validate ['required', 'length [1,2]', 'digit']» maxlength= «2» tabindex= «9» /></div>
</div>
<div class= «field»>
<label for= «txtEtazh»>Этаж</label>
<div class= «put»><input type= «text» id= «txtEtazh» name= «txtEtazh» class= «validate ['required', 'length [1,3]', 'digit']» maxlength= «3» tabindex= «10» /></div>
</div>
</form>
</div>
<div id= «step6»><! - 6666666666666666666666666666666666666666666666666666->
<form id= «step6Form» name= «step6Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «txtPhone2»>Домашний телефон</label>
<div class= «put»><input type= «text» id= «txtPhone1» name= «txtPhone1» maxlength= «1» disabled= «disabled» value= «8» />
<input type= «text» id= «txtPhone2» name= «txtPhone2» maxlength= «5» tabindex= «11» />
<input type= «text» id= «txtPhone3» name= «txtPhone3» maxlength= «13» tabindex= «12» />
</div>
</div>
<div class= «field»>
<label for= «txtWork2»>Рабочий телефон</label>
<div class= «put»><input type= «text» id= «txtWork1» name= «txtWork1» maxlength= «1» disabled= «disabled» value= «8» />
<input type= «text» id= «txtWork2» name= «txtWork2» maxlength= «5» tabindex= «13» />
<input type= «text» id= «txtWork3» name= «txtWork3» maxlength= «13» tabindex= «14» />
</div>
</div>
<div class= «field»>
<label for= «txtMobile2»>Мобильный телефон</label>
<div class= «put»><input type= «text» id= «txtMobile1» name= «txtMobile1» class= «validate ['required', 'length [1, - 1]', 'digit']» maxlength= «1» disabled= «disabled» value= «8» />
<input type= «text» id= «txtMobile2» name= «txtMobile2» class= «validate ['required', 'length [3, - 1]', 'digit']» maxlength= «3» tabindex= «15» />
<input type= «text» id= «txtMobile3» name= «txtMobile3» class= «validate ['required', 'length [3, - 1]', 'digit']» maxlength= «3» tabindex= «16» /> -
<input type= «text» id= «txtMobile4» name= «txtMobile4» class= «validate ['required', 'length [2, - 1]', 'digit']» maxlength= «2» tabindex= «17» /> -
<input type= «text» id= «txtMobile5» name= «txtMobile5» class= «validate ['required', 'length [2, - 1]', 'digit']» maxlength= «2» tabindex= «18» />
</div>
</div>
<div class= «field»>
<label for= «txtIcq»>ICQ</label>
<div class= «put»><input type= «text» id= «txtIcq» name= «txtIcq» tabindex= «19» /></div>
</div>
<div class= «field»>
<label for= «txtEmail»>Email</label>
<div class= «put»><input type= «text» id= «txtEmail» name= «txtEmail» class= «validate['email']» tabindex= «20» /></div>
</div>
<div class= «field»>
<label for= «areaComment»>Комментарий</label>
<div class= «put»><textarea id= «areaComment» name= «areaComment» tabindex= «21»></textarea></div>
</div>
</form>
</div>
<div id= «step7»><! - 77777777777777777777777777777777777777777777777777777->
<form id= «step7Form» name= «step7Form» method= «post» action= «post.php»>
<div class= «field»>
<label for= «radTarif»>Тариф</label>
<div class= «put»><div id= «tdTarifs»><! - Place for tarifs-></div></div>
</div>
<div class= «field»>
<label for= «sltKnowFrom»>Откуда вы узнали о компании?</label>
<div class= «put»>
<select id= «sltKnowFrom» name= «sltKnowFrom» tabindex= «22»>
<option value= «1»>Реклама в Интернет</option>
<option value= «2»>Реклама в автобусах</option>
<option value= «3»>Рекламный плакат</option>
<option value= «4»>От знакомого(й)</option>
<option value= «5»>Рекламная листовка</option>
<option value= «others»>Другое…</option>
</select>
<input type= «text» id= «txtKnowFrom» name= «txtKnowFrom» tabindex= «23» />
</div>
</div>
<div class= «field»>
<label for= «txtQuestion» id= «lbQuestion» name= «lbQuestion»>Вопрос</label>
<div class= «put»><input type= «text» id= «txtQuestion» name= «txtQuestion» class= «validate['required']» tabindex= «24» /></div>
<input type= «hidden» id= «currQuestionId» name= «currQuestionId» value=»» />
<input type= «button» id= «btnGetQuestion» name= «btnGetQuestion» value= «Следующий вопрос» />
</div>
</form>
</div>
<div id= «step8»><! - 77777777777777777777777777777777777777777777777777777->
<table id= «sending»>
<tbody>
<tr id= «step1Sending»>
<td><div class= «statusTitle»>Координаты</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td>
</tr>
<tr id= «step3Sending»>
<td><div class= «statusTitle»>Инициалы</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td>
</tr>
<tr id= «step4Sending»>
<td><div class= «statusTitle»>Паспортные данные</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td>
</tr>
<tr id= «step5Sending»>
<td><div class= «statusTitle»>Адрес установки</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td></td>
</tr>
<tr id= «step6Sending»>
<td><div class= «statusTitle»>Связь</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td>
</tr>
<tr id= «step7Sending»>
<td><div class= «statusTitle»>Тариф</div></td><td><div class= «loading»></div><div class= «statusError»></div><div class= «statusSuccess»></div></td>
</tr>
</tbody>
</table>
</div>
<div id= «done»>
<p>Спасибо, заявка на подключение принята. В течении двух дней с Вами свяжется специалист найшей компании и подтвердит техническую возможность подключения, а так же объяснит дальнейшие процедуры для успешного завершения данной заявки.</p>
</div>
<div id= «willBeDone»>
<p>Спасибо, заявка на подключение принята. Ваша заявка будет обязательно учтена при развитии и планировании участком сети. Когда Ваш дом будет подключен вы получите уведомление на электронную почту.</p>
</div>
<div id= «alreadyWas»>
<p>Извините, но вы уже подавали заявку.</p>
</div>
<div id= «nav» style= «bottom:0;»>
<a href= "#» id= «prevRqBtn»>Назад</a>
<a href= "#» id= «nextRqBtn»>Дальше</a>
<a href= "#» id= «sendRqBtn»>Отправить заявку</a>
</div>
</body>
</html>
<?
require_once (»../classes/dbclass.php»);
$obj = new dbClass();
$obj->connect ('web47_db2');
$street = $_POST[sltStreet];
echo «<select id=\ «sltHouse\» name=\ «sltHouse\» onchange=\ «houseChange();\">»;
if ($street<>null) {
$results = $obj->query («SELECT id_house, number FROM houses where id_street=».$street.» and conn_status='5' order by number;»);
while ($line=mysql_fetch_assoc($results)) {
echo «<Option value=\ "».$line ['id_house']. "\ ">».$line['number']. «</Option>\n»;
}
} else {
echo «<Option value=\ "\"></Option>\n»;
}
echo «</select>»;
$obj->disconnect();
?>
ф<? php
#session_save_path («sessiusdadutnevse»);
session_start();
$formName = $_POST['formName'];
$strErrors = «;
$arrOfErrors = array();
include ('mail.php'); // подгружаем скрипт для отправки email
$required = «/[^.*]/»; // ***
$alpha = «/^[a-zА-Яа-я._-]/»; // ***
$alphanum = «/^[a-z0-9._-]/»;
$digit = «/^[-+]? [0-9]/»; // ***
$nodigit = «/^[^0-9]+$/»;
$number = «/^[-+]?\d*\.?\d+$/»;
$email = «/^[-0-9a-z_\.]+@[-0-9a-z^\.]+\. [a-z] {2,4}$/i»; // ***
$phone = «/^[\d\s ().-]+$/»;
$url = «/^(http|https|ftp)\:\/\/[a-z0-9\-\.]+\. [a-z] {2,3} (:[a-z0-9]*)?\/? ([a-z0-9\-\._\?\,\'\/\\\+&%\$#\=~])*$/»;
switch($formName) {
case 'step1Form':
// {Обнуляем все сессионные переменные
// $_SESSION['sltCity'] = «;
// Обнуляем все сессионные переменные}
$sltCity = controleMe ($_POST['sltCity'], 'sltCity', $digit, 'notNull', '-1'); // id города
$sltStreet = controleMe ($_POST['sltStreet'], 'sltStreet', $digit, 'notNull', '-1'); // id улицы
$chkHouseExist = trim ($_POST['chkHouseExistValue']);
if ($chkHouseExist == 'checked') { // если выбрали, что дома нет
$txtHouse = controleMe ($_POST['txtHouse'], 'txtHouse', $required, 'notNull', '1,10'); // номер дома, введённого пользователем
$_SESSION['finalHouseText'] = $txtHouse;
$_SESSION['finalHouseId'] = false;
} else {
$sltHouse = controleMe ($_POST['sltHouse'], 'sltHouse', $digit, 'notNull', '-1'); // id дома
$_SESSION['finalHouseId'] = $sltHouse;
$_SESSION['finalHouseText'] = false;
}
$_SESSION['finalCity'] = $sltCity;
$_SESSION['finalStreet'] = $sltStreet;
setErrors();
break;
case 'step3Form':
$txtSurname = controleMe ($_POST['txtSurname'], 'txtSurname', $alpha, 'notNull', '-1'); // Фамилия
$txtName = controleMe ($_POST['txtName'], 'txtName', $alpha, 'notNull', '-1'); // Имя
$txtFathername = controleMe ($_POST['txtFathername'], 'txtFathername', $alpha, 'notNull', '-1'); // Отчество
$sltBirthDay = controleMe ($_POST['sltBirthDay'], 'sltBirthDay', $digit, 'notNull', '-1'); // День рождения
$sltBirthMonth = controleMe ($_POST['sltBirthMonth'], 'sltBirthMonth', $digit, 'notNull', '-1'); // Месяц рождения
$sltBirthYear = controleMe ($_POST['sltBirthYear'], 'sltBirthYear', $digit, 'notNull', '-1'); // Год рождения
$_SESSION['finalSurname'] = $txtSurname;
$_SESSION['finalName'] = $txtName;
$_SESSION['finalFathername'] = $txtFathername;
$_SESSION['finalBirthDay'] = $sltBirthDay;
$_SESSION['finalBirthMonth'] = $sltBirthMonth;
$_SESSION['finalBirthYear'] = $sltBirthYear;
setErrors();
break;
case 'step4Form':
$txtSeria = controleMe ($_POST['txtSeria'], 'txtSeria', $digit, 'notNull', '4'); // серия паспорта
$txtNomer = controleMe ($_POST['txtNomer'], 'txtNomer', $digit, 'notNull', '6'); // номер паспорта
$txtWho = controleMe ($_POST['txtWho'], 'txtWho', $required, 'notNull', '-1'); // Кем выдано
$sltWhoDay = controleMe ($_POST['sltWhoDay'], 'sltWhoDay', $digit, 'notNull', '-1'); // Когда выдано. День
$sltWhoMonth = controleMe ($_POST['sltWhoMonth'], 'sltWhoMonth', $digit, 'notNull', '-1'); // Когда выдано. Месяц
$sltWhoYear = controleMe ($_POST['sltWhoYear'], 'sltWhoYear', $digit, 'notNull', '-1'); // Когда выдано. Год
$txtAddress = controleMe ($_POST['txtAddress'], 'txtAddress', $required, 'notNull', '-1'); // адрес прописки
$_SESSION['finalSeria'] = $txtSeria;
$_SESSION['finalNomer'] = $txtNomer;
$_SESSION['finalWho'] = $txtWho;
$_SESSION['finalWhoDay'] = $sltWhoDay;
$_SESSION['finalWhoMonth'] = $sltWhoMonth;
$_SESSION['finalWhoYear'] = $sltWhoYear;
$_SESSION['finalAddress'] = $txtAddress;
setErrors();
break;
case 'step5Form':
// $txtCityDis = controleMe ($_POST['txtCityDis'], 'txtCityDis', $alpha, 'notNull', '-1'); // город
// $txtStreetDis = controleMe ($_POST['txtStreetDis'], 'txtStreetDis', $alpha, 'notNull', '-1'); // улица
// $txtHouseDis = controleMe ($_POST['txtHouseDis'], 'txtHouseDis', $required, 'notNull', '-1'); // дом
$txtKvartira = controleMe ($_POST['txtKvartira'], 'txtKvartira', $digit, 'notNull', '1,4'); // квартира
$txtPodezd = controleMe ($_POST['txtPodezd'], 'txtPodezd', $digit, 'notNull', '1,2'); // подъезд
$txtEtazh = controleMe ($_POST['txtEtazh'], 'txtEtazh', $digit, 'notNull', '1,3'); // этаж
// $_SESSION['finalCityDis'] = $txtCityDis;
// $_SESSION['finalStreetDis'] = $txtStreetDis;
// $_SESSION['finalHouseDis'] = $txtHouseDis;
$_SESSION['finalKvartira'] = $txtKvartira;
$_SESSION['finalPodezd'] = $txtPodezd;
$_SESSION['finalEtazh'] = $txtEtazh;
setErrors();
break;
case 'step6Form':
// $txtPhone1 = controleMe ($_POST['txtPhone1'], 'txtPhone1', $digit, 'Null', '1'); // 8
$txtPhone2 = controleMe ($_POST['txtPhone2'], 'txtPhone2', $digit, 'Null', '0,5'); // 84967
$txtPhone3 = controleMe ($_POST['txtPhone3'], 'txtPhone3', $digit, 'Null', '0,13'); // 752472
// $txtWork1 = controleMe ($_POST['txtWork1'], 'txtWork1', $digit, 'Null', '1'); // 8
$txtWork2 = controleMe ($_POST['txtWork2'], 'txtWork2', $digit, 'Null', '0,5'); // 8497
$txtWork3 = controleMe ($_POST['txtWork3'], 'txtWork3', $digit, 'Null', '0,13'); // 752472
// $txtMobile1 = controleMe ($_POST['txtMobile1'], 'txtMobile1', $digit, 'notNull', '1'); // 8
$txtMobile2 = controleMe ($_POST['txtMobile2'], 'txtMobile2', $digit, 'notNull', '3'); // 915
$txtMobile3 = controleMe ($_POST['txtMobile3'], 'txtMobile3', $digit, 'notNull', '3'); // 471
$txtMobile4 = controleMe ($_POST['txtMobile4'], 'txtMobile4', $digit, 'notNull', '2'); // 81
$txtMobile5 = controleMe ($_POST['txtMobile5'], 'txtMobile5', $digit, 'notNull', '2'); // 34
//echo $_POST['txtEmail'];
$txtIcq = controleMe ($_POST['txtIcq'], 'txtIcq', $required, 'Null', '-1'); // ICQ
$txtEmail = controleMe ($_POST['txtEmail'], 'txtEmail', $email, 'Null', '-1'); // email
$areaComment = controleMe ($_POST['areaComment'], 'areaComment', $required, 'Null', '-1'); // комментарий
// $_SESSION['finalPhone1'] = $txtPhone1;
$_SESSION['finalPhone2'] = $txtPhone2;
$_SESSION['finalPhone3'] = $txtPhone3;
// $_SESSION['finalWork1'] = $txtWork1;
$_SESSION['finalWork2'] = $txtWork2;
$_SESSION['finalWork3'] = $txtWork3;
// $_SESSION['finalMobile1'] = $txtMobile1;
$_SESSION['finalMobile2'] = $txtMobile2;
$_SESSION['finalMobile3'] = $txtMobile3;
$_SESSION['finalMobile4'] = $txtMobile4;
$_SESSION['finalMobile5'] = $txtMobile5;
$_SESSION['finalIcq'] = $txtIcq;
$_SESSION['finalEmail'] = $txtEmail;
$_SESSION['finalComment'] = $areaComment;
setErrors();
break;
case 'step7Form':
$radTarif = controleMe ($_POST['radTarif'], 'radTarif', $digit, 'notNull', '-1'); // id тарифа
$sltKnowFrom = controleMe ($_POST['sltKnowFrom'], 'sltKnowFrom', $required, 'notNull', '-1'); // откуда узнали
$_SESSION['finalTarif'] = $radTarif;
if ($sltKnowFrom == 'others') { // если выбрали другое
$txtKnowFrom = controleMe ($_POST['txtKnowFrom'], 'txtKnowFrom', $required, 'notNull', '-1'); // введённый текст
$_SESSION['finalKnowFromText'] = $txtKnowFrom;
$_SESSION['finalKnowFromId'] = false;
} else { // если выбрали из списка
$sltKnowFrom = controleMe ($_POST['sltKnowFrom'], 'sltKnowFrom', $digit, 'notNull', '-1'); // ид варианта
$_SESSION['finalKnowFromId'] = $sltKnowFrom;
$_SESSION['finalKnowFromText'] = false;
}
// вопрос
require_once (»../classes/dbclass.php»);
$obj = new dbClass();
$obj->connect ('web47_db2');
$id = trim (preg_replace ('/\D/', «, $_POST['currQuestionId'])); // ид вопроса
$txtQuestion = strtolower (controleMe($_POST['txtQuestion'], 'txtQuestion', $required, 'notNull', '-1')); // откуда узнали
$str = «SELECT otvet FROM kil_bots WHERE id=».$id;
$resultOtvet = $obj->query($str);
$resultOtvet2 = $resultOtvet;
//echo «SELECT otvet FROM kil_bots where id = '».$id. «';»;
$realAnswer = strtolower (mysql_result ($resultOtvet2, 0, 'otvet')); // правильный ответ
if ($realAnswer == $txtQuestion) $_SESSION['finalQuestionId'] = $id; // если ответили правильно, то записываем в финал ид вопроса
else { // если не правильно
$_SESSION['finalQuestionId'] = false; // то записываем фолс
$arrOfErrors[] = 'txtQuestion'; // и пишем ошибку
}
// вопрос
setErrors();
if ($strErrors == 'noErrors') $formName = 'done';
else {
$obj->disconnect();
break;
}
case 'done':
if ($_SESSION['finalHouseId']) { // если выбрали дом из списка
$check_query=«select id from z_connection
where gorod='».$_SESSION['finalCity']. "'
and ulitsa='».$_SESSION['finalStreet']. "'
and dom='».$_SESSION['finalHouseId']. "'
and kvartira='».$_SESSION['finalKvartira']. «'»;
$house=mysql_result ($obj->query («select number from houses where id_house=$_SESSION[finalHouseId]»), 0);
} else { // если сами вписали дом
$check_query=«select id from z_connection
where gorod='».$_SESSION['finalCity']. "'
and ulitsa='».$_SESSION['finalStreet']. "'
and temp_dom='».$_SESSION['finalHouseText']. "'
and kvartira='».$_SESSION['finalKvartira']. «'»;
$house=$_SESSION['finalHouseText'];
};
$city=mysql_result ($obj->query («select name from cities where id_city=$_SESSION[finalCity]»), 0);
$street=mysql_result ($obj->query («select street_name from streets where id=$_SESSION[finalStreet]»), 0);
# echo $check_query;
$result=$obj->query ($check_query);
if (mysql_num_rows($result) > 0) { // если заявку уже подавали
$strErrors = 'alreadyWas'; // то возвращаем значение, что уже подавали
break; // вылетаем
} else { // а если заявку не подавали
// id связки паспортных данных и данных о подключении
$id_sv=time();
// сам запрос mysql_escape_string
$imy=mysql_real_escape_string ($_SESSION['finalName']);
$fam=mysql_real_escape_string ($_SESSION['finalSurname']);
$otz=mysql_real_escape_string ($_SESSION['finalFathername']);
$cit=mysql_real_escape_string ($_SESSION['finalCity']);
$str=mysql_real_escape_string ($_SESSION['finalStreet']);
$hss=mysql_real_escape_string ($_SESSION['finalHouseId']);
$kvr=mysql_real_escape_string ($_SESSION['finalKvartira']);
$pod=mysql_real_escape_string ($_SESSION['finalPodezd']);
$etg=mysql_real_escape_string ($_SESSION['finalEtazh']);
$mob=mysql_real_escape_string ('8 ('.$_SESSION['finalMobile2'].')'.$_SESSION['finalMobile3'].'-'.$_SESSION['finalMobile4'].'-'.$_SESSION['finalMobile5']);
if ($_SESSION['finalPhone2']&&$_SESSION['finalPhone3']) {
$domt=mysql_real_escape_string ('8 ('.$_SESSION['finalPhone2'].')'.$_SESSION['finalPhone3']);
} else {
$domt='';
}
if ($_SESSION['finalWork2']&&$_SESSION['finalWork3']) {
$rab=mysql_real_escape_string ('8 ('.$_SESSION['finalWork2'].')'.$_SESSION['finalWork3']);
} else {
$rab='';
}
$icq=mysql_real_escape_string ($_SESSION['finalIcq']);
$mai=mysql_real_escape_string ($_SESSION['finalEmail']);
$com=mysql_real_escape_string ($_SESSION['finalComment']);
$tar=mysql_real_escape_string ($_SESSION['finalTarif']);
$sn0=mysql_real_escape_string ($_SESSION['finalSeria']); // Cерия паспорта
$sn1=mysql_real_escape_string ($_SESSION['finalNomer']); // Номер паспорта
$wd0=mysql_real_escape_string ($_SESSION['finalWho']); // Кем выдан
$wd1=mysql_real_escape_string ($_SESSION['finalWhoDay'].'.'.$_SESSION['finalWhoMonth'].'.'.$_SESSION['finalWhoYear']); // Koгда выдан
$prp=mysql_real_escape_string ($_SESSION['finalAddress']); // Прописка
$bd=mysql_real_escape_string ($_SESSION['finalBirthDay'].'.'.$_SESSION['finalBirthMonth'].'.'.$_SESSION['finalBirthYear']); // Дата рождения
//mysql_query («SET NAMES 'utf8'»);
if ($_SESSION['finalHouseId']) {
$query=«insert into z_connection
values (null, '$imy', '$fam', '$otz',
'$cit', '$str', '$hss',
'$kvr', '$pod', '$etg',
'$mob', '$domt', '$rab',
'$icq', '$mai', '$com', 0,8,0,
'0000-00-00', NOW(), '29', 1,
'0000-00-00', null, 0, null, 0,'0', '29',
'$data_zak', '$id_sv', '$tar', '1', '-', '0', '-', null)»;
$queryForKnowFrom = «select id from z_connection where gorod=».$cit.» and ulitsa=».$str.» and dom=».$hss.» and kvartira=».$kvr;
} else {
$query=«insert into z_connection
values (null, '$imy', '$fam', '$otz',
'$cit', '$str', '0',
'$kvr', '$pod', '$etg',
'$mob', '$domt', '$rab',
'$icq', '$mai', '$com', 0,9,0,
'0000-00-00', NOW(), '29', 1,
'0000-00-00', null, 0, null, 0,'0', '29',
'$data_zak', '$id_sv', '$tar', '1', '-', '0', '-', '».$_SESSION['finalHouseText']. «')»;
$queryForKnowFrom = «select id from z_connection where gorod=».$cit.» and ulitsa=».$str.» and temp_dom=».$_SESSION['finalHouseText'].» and kvartira=».$kvr;
};
$query0=«insert into con_cross_pas
(id, snn, vidan, date_birth, propiska, ip, sno, da_vidan, l_auth)
values ('».$id_sv. «', '».$sn0. «', '».$wd0. «', '».$bd. «', '».$prp. «', '».$_SERVER ['REMOTE_ADDR']. «', '».$sn1. «', '».$wd1. «', '29')»;
if(($obj->query($query)) && ($obj->query($query0))) {
// ************ Откуда узнали о компании ************
$zid=mysql_result ($obj->query($queryForKnowFrom), 0);
if ($_SESSION['finalKnowFromId']) {
$knowStr = mysql_real_escape_string ($_SESSION['finalKnowFromId']);
} else {
$knowStr = mysql_real_escape_string ($_SESSION['finalKnowFromText']);
}
$obj->query («insert into stat (id, know_from) values ('».$zid. «', '».$knowStr. «')»);
// **************************************************
if ($_SESSION['finalHouseId']) {
$strErrors = 'done';
$mailText= «Спасибо, заявка на подключение принята.\n Ваша заявка будет обязательно учтена при развитии и планировании участком сети. Когда Ваш дом будет подключен вы получите уведомление на электронную почту.»;
} else {
$strErrors = 'willBeDone';
$mailText= «Спасибо, заявка на подключение принята.\n В течении двух дней с Вами свяжется специалист нашей компании и подтвердит техническую возможность подключения, а так же объяснит дальнейшие процедуры для успешного завершения данной заявки.»;
}
}
}
if($zid) {
if (mysql_result ($obj->query («select conn_status from houses where id_house='».$_SESSION['finalHouseId']. «'»), 0)=='5') { // если дом подключен
$m_c=»
<p>
<table class=\ «info\» border=\ «1\» id=\ «subj\»>
<tr><td>Номер заявки</td>
<td>$zid</td>
</tr>
<tr><td>Адрес</td>
<td>$city, ул. $street, д. $house, кв. $kvr</td>
</tr>
<tr><td><nobr>Фамилия, Имя, Отчество<nobr/></td>
<td>».$fam. "».$imy. "».$otz. «</td>
</tr>
<tr><td>Контактный телефон</td>
<td>».$mob. «</td>
</tr>
</table>
</p>»;
} else { // если дом не подключен
$m_c=»
<p>
<table class=\ «info\» border=\ «1\» id=\ «subj\»>
<tr><td>Номер заявки</td>
<td>$zid</td>
</tr>
<tr><td>Адрес</td>
<td>$city, ул. $street, д. $house, кв. $kvr</td>
</tr>
<tr><td><nobr>Фамилия, Имя, Отчество<nobr/></td>
<td>».$fam. "».$imy. "».$otz. «</td>
</tr>
<tr><td>Контактный телефон</td>
<td>$mob</td>
</tr>
</table>
</p>»;
}
$m_c = $mailText.$m_c;
$doctype=mysql_result ($obj->query («select doctype from cities where id_city=$cit»), 0);
if ($_SESSION['finalEmail']) mail_them ($_SESSION['finalEmail'],$doctype, 'connect@rialcom.ru',$zid,$m_c);
}
break;
}
echo trim($strErrors);
function controleMe ($value, $inputName, $template, $null, $strLen) {
global $arrOfErrors;
$newValue = trim($value);
$newValue = htmlspecialchars ($newValue); // тэги заменяем на текст
$newValue = str_replace («query», "»,$newValue); // MySQL
$newValue = str_replace («select», "»,$newValue);
$newValue = str_replace («from», "»,$newValue);
$newValue = str_replace («delete», "»,$newValue);
$newValue = str_replace («insert», "»,$newValue);
$newValue = str_replace («update», "»,$newValue);
$newValue = str_replace (»;», "»,$newValue);
$newValue = str_replace («'», "»,$newValue);
$newValue = str_replace («», "»,$newValue);
// $newValue = str_replace («@», "»,$newValue);
$newValue = str_replace («$», "»,$newValue);
$newValue = str_replace («^», "»,$newValue);
$newValue = str_replace («=», "»,$newValue);
$final = true;
$arrLen = split (', ', $strLen);
if (count($arrLen) == 1) { // если задан 1 параметр
if ($arrLen[0] <> -1) { // если этот параметр не равен -1
if (strlen($newValue) <> $arrLen[0]) { // если длина строки не равна этому параметру
$final = false;
}
// $newValue = substr ($newValue, 0, $len); // длина значения
}
}
if (count($arrLen) == 2) { // если задано 2 параметра
if (strlen($newValue) < $arrLen[0]) { // если длина строки меньше минимума
$final = false;
}
if (strlen($newValue) > $arrLen[1]) { // если длина строки больше максимума
$final = false;
}
}
if (($null == 'notNull')&&(!$newValue)) $final = false; // если значение обязательное и пустое
if (($newValue)&&(! preg_match ($template, $newValue))) $final = false; // если значение обязательное и не правильно заполнено
if (!$final) {
$arrOfErrors[] = $inputName;
//echo $newValue;
return false;
} else {
return $newValue;
}
}
function setErrors() { // функция добавления ошибок в строку вывода
global $arrOfErrors, $strErrors;
if (count($arrOfErrors) == 0) {
$strErrors = 'noErrors';
} else {
$str = «;
$strErrors = «;
for ($i=0; $i<count($arrOfErrors); $i++) {
if ($i<>0) $str = ', ';
$strErrors.= $str.$arrOfErrors[$i];
}
}
}
?>
<?
function mail_them ($to,$doctype,$from,$num,$addt) {
$headers= «From: $from\r\n»;
$headers.= «Reply-To: $to\r\n»;
$headers.= «Status: ND\r\n»;
$headers.= «Content-Type: text/html; charset=UTF-8\n»;
$subj='=? UTF-8? B?'.base64_encode («Ваша заявка на подключение принята.»).'?=';
# Методом исключения:) Переписать на прямой метод
if ($doctype==1) {
$cont=»
<p>$addt</p>
По всем интересующим Вас вопросам вы можете обращаться по телефонам в любое представительство ЗАО \ «Риал Ком\», для идентификации вам необходимо указать номер вашей заявки:<br>
<ul>Фактический адрес:
<li> Московская обл., г. Подольск, ул. Свердлова, д. 15 (центральный офис), тел. 8 (495) 502-79-46</li>
</ul>
<ul>Адреса Представительств:
<li>г. Москва, ул. Грина, д. 18, «Солярис», тел. (499) 500-31-11;</li>
<li>г. Щербинка, «Капитал», тел. (495) 580-27-30;</li>
<li>г. Климовск, ул. Заводская, д. 2, тел. (495) 500-07-89;</li>
<li>г. Серпухов, ул. Ворошилова, дом 130а (5й этаж), тел: (495) 544-00-04:</li>
</ul>»;
} else {
$cont=»
<p>$addt</p>
По всем интересующим Вас вопросам вы можете обращаться по телефонам в ООО \ «Абевег\», для идентификации вам необходимо указать номер вашей заявки:<br>
<ul>Фактический адрес:
<li>г. Чехов, ул. Полиграфистов, д. 1, тел. (49672) 75-8-75, (495) 580-57-77.</li>
</ul>»;
};
$ms=mail ($to,$subj,$cont,$headers);
if($ms) {
# echo («Письмо выслано.»);
} else {
# echo(«Письмо не выслано.»);
};
return false;
};
?>
// JavaScript Document
house = 1;
window.addEvent ('domready', function() {
getCities();
});
function getSelectText(id) {
n = $(id).selectedIndex;
if (n == -1) return «;
txt = $(id).options[n].text;
return txt;
}
function cityChange() { // событие изменения города
getStreets();
//changeAgreement();
}
function streetChange() {
getHouses();
}
function houseChange() {
// $('txtHousesDisabled').value = getSelectText('sltHouse'); // записываем во второй шаг
}
function getCities() { // возвращает города
addLoader ('tdCities', 1, 2);
var req = new Request({
url: «cities.php» + fuckCash(),
method:'get',
onSuccess: function(xhr) {
$('tdCities').innerHTML = xhr.replace ('?', '\r');
getStreets();
cityChange();
},
onFailure: function() {
$('tdCities').innerHTML = 'error';
}
});
req.send();
}
function getStreets() { // возвращает улицы
addLoader ('tdStreets', 1, 2);
var city = $('sltCity').value;
var req = new Request({
url: «streets.php» + fuckCash(),
method:'post',
data: {sltCity:city},
onSuccess: function(xhr) {
$('tdStreets').innerHTML = xhr.replace ('?', '\r');
getTarifs();
getHouses();
streetChange();
},
onFailure: function() {
$('tdStreets').innerHTML = 'error';
}
});
req.send();
}
function getHouses() { // возвращает дома
addLoader ('tdHouses', 1, 2);
var street = $('sltStreet').value;
var req = new Request({
url: «houses.php» + fuckCash(),
method:'post',
data: {sltStreet:street},
onSuccess: function(xhr) {
$('tdHouses').innerHTML = xhr.replace ('?', '\r');
$('chkHouseExist').checked = «; // отменяем, что нет дома
setHouse($('chkHouseExist').checked); // выводим селект
Подобные документы
Логическая структура программы. Руководство системного программиста, пользователя. Требования к уровню обеспечения информационной безопасности. Цели и задачи защиты данных. Расчет себестоимости и отпускной цены системы. Техника безопасности, охрана труда.
дипломная работа [1,5 M], добавлен 27.06.2014Выбор инструментальных и программных средств для создания сайта. Структура программного продукта. Создание сайта при помощи программы WordPress. Тестирование разработанной программы. Разработка структуры и дизайна сайта. Наполнение сайта контентом.
курсовая работа [1,0 M], добавлен 09.01.2014Языки написания сайта, принципы и обоснование их отбора. Программы создания web-страниц, их функциональные особенности и возможности. Технология и основные этапы разработки интернет-сайта, правила его составления, оформления, заполнения, программный код.
курсовая работа [3,1 M], добавлен 20.05.2015Общие сведения о языке ассемблера. Назначение команды прерывания INT число. Описание логической структуры программы: алгоритм работы, используемые методы, входные и выходные данные. Структура и тестирование программы. Руководство оператора программы.
курсовая работа [90,0 K], добавлен 01.12.2009Описание математической модели. Обоснование метода реализации. Вид алгоритма и программы. Руководство системного программиста, оператора. Комбинирование метод хорд и касательных. Интерпретация и анализ результатов. Листинг программы, контрольный пример.
курсовая работа [3,3 M], добавлен 12.01.2014- Разработка группы и страницы в социальной сети Facebook на основе сайта "Программы двойных дипломов"
Раскрутка сайта: черные, серые, белые методы продвижения. Сохранение позиций и поддержка результатов продвижения. Оценивание интернет-ресурса "Программы двойных дипломов", его структура. Перспективы использования объектов Facebook для данного сайта.
курсовая работа [5,6 M], добавлен 15.09.2014 Понятие web-сайта и их типы. Программы для создания web-сайта. Описание структуры проекта. Алгоритм создания сайта. Описание конструктора Jimdo. Языки программирования серверного выполнения. Создание полнофункционального веб-сайта для ОАО "КУЛЗ".
курсовая работа [3,5 M], добавлен 05.06.2015Проектирование аппаратно-программной конфигурации. Разработка прикладной автоматизированной системы. Проектирование информационных потоков. Функциональная структура программы. Расчет необходимого компьютерного, сетевого и программного оборудования.
курсовая работа [7,9 M], добавлен 31.05.2015Анализ существующего программного обеспечения. Этапы создания проекта. Концептуальное, логическое и физическое проектирование базы данных. Структура программного продукта. Руководство программиста и оператора. Тестирование программного продукта.
курсовая работа [586,4 K], добавлен 26.06.2015Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.
дипломная работа [1,5 M], добавлен 12.06.2009