[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: JS, AJAX не коректно работает
RuslanMRP
Привет! Помогите!!!!! Проблема такова. Разробатывал сайт на своем компе. Выложил на hosting. Форма заказа сделана на JavaScript и AJAX - сайт от куда взята - http://ruseller.com/lessons.php?rub=37&id=422. У меня отображает как и надо всплывают подсказки над полями которые не заполнены. Захожу на сайт с другого компа - всплытие окон не отображает. Всем может быть проблема. И еще проблема - в Opere сайт разворачивает на весь монитор, а в Explorer - нет. Помогите пожалуйста!!!!!!!!!!!!

Сайт для просмотра tartuga.by - Помогите!!!!!





Спустя 13 минут, 12 секунд (19.11.2010 - 10:55) Basili4 написал(а):
RuslanMRP
там в правом верхнем углу див висит не к селу не к городу.

ничего не всплывает.
Защите твоей от бота грошь цена.

ты или циферки на кратинке рисуй или вопрос там человечий задавай президент РФ ну и меняй их каждый раз чем больше вопросов тем лучше.


Спустя 8 минут, 26 секунд (19.11.2010 - 11:03) RuslanMRP написал(а):
Про защиту понял. СПАСИБО.

Не понял почему форма не так работает и в Explorer сайт не раздвигаеться!

Простите за глупые вопросы! только не давно начал изучать все!


Спустя 8 минут, 4 секунды (19.11.2010 - 11:11) Basili4 написал(а):
RuslanMRP
не страшно. код показывай который у тебя окна всплывающие делает.

Спустя 6 минут, 25 секунд (19.11.2010 - 11:18) RuslanMRP написал(а):

* Inline Form Validation Engine 1.4, jQuery plugin
*
*
Copyright© 2009, Cedric Dugas
* http://www.position-relative.net
*
*
Form validation engine which allow custom regex rules to be added.
*
Licenced under the MIT Licence
*/
(
function($) {
$.fn.validationEngine = function(settings) {

if($.validationEngineLanguage){ // IS THERE A LANGUAGE LOCALISATION ?
allRules = $.validationEngineLanguage.allRules
}else{
allRules = {"required":{ // Add your regex rules here, you can take telephone as an example
"regex":"none",
"alertText":"* Обязательное поле",
"alertTextCheckboxMultiple":"* Пожалуйста сделайте выбор",
"alertTextCheckboxe":"* This checkbox is required"},
"length":{
"regex":"none",
"alertText":"*Between ",
"alertText2":" and ",
"alertText3": " characters allowed"},
"maxCheckbox":{
"regex":"none",
"alertText":"* Checks allowed Exceeded"},
"minCheckbox":{
"regex":"none",
"alertText":"* Пожалуйста выберите ",
"alertText2":" options"},
"confirm":{
"regex":"none",
"alertText":"* Ваше поле не соответствует"},
"VIN":{
"regex":"/^[a-zA-Z0-9]{17}+$/",
"alertText":"* 17 символов"},
"Year":{
"regex":"/^[0-9]{4}+$/",
"alertText":"* 4 цифры"},
"Volume":{
"regex":"/^(([0-9]{1})+?.[0-9]{1})+$/",
"alertText":"* 2 цифры пример 2.3"},
"telephone":{
"regex":"/^[0-9\-\(\)\ ]+$/",
"alertText":"* Неверный номер телефона"},
"email":{
"regex":"/^([a-zA-Z0-9]{3,})(((\.|\-|\_)[a-zA-Z0-9]{2,})+)?@([a-z]{3,})(\-[a-z0-9]{3,})?(\.[a-z]{2,})+$/",
"alertText":"* Неверный адрес"},
"date":{
"regex":"/^[0-9]{4}\-\[0-9]{1,2}\-\[0-9]{1,2}$/",
"alertText":"* Invalid date, must be in YYYY-MM-DD format"},
"onlyNumber":{
"regex":"/^[0-9\ ]+$/",
"alertText":"* Только число"},
"noSpecialCaracters":{
"regex":"/^[0-9a-zA-Z]+$/",
"alertText":"* No special caracters allowed"},
"ajaxUser":{
"file":"validateUser.php",
"alertTextOk":"* Этот пользователь доступен",
"alertTextLoad":"* Загрузка, пожалуйста ждите",
"alertText":"* Такой пользователь уже есть"},
"ajaxName":{
"file":"validateUser.php",
"alertText":"* Такое название уже есть",
"alertTextOk":"* Это название доступно",
"alertTextLoad":"* Загрузка, пожалуйста ждите"},
"onlyLetter":{
"regex":"/^[а-яА-Я\ \']+$/",
"alertText":"* Заполните поле"}
}
}
settings = jQuery.extend({
allrules:allRules,
inlineValidation: true,
ajaxSubmit: false,
promptPosition: "topRight", // OPENNING BOX POSITION, IMPLEMENTED: topLeft, topRight, bottomLeft, centerRight, bottomRight
success : false,
failure : function() {}
}, settings);



$.validationEngine.ajaxValidArray = new Array() // ARRAY FOR AJAX: VALIDATION MEMORY

$(this).bind("submit", function(caller){ // ON FORM SUBMIT, CONTROL AJAX FUNCTION IF SPECIFIED ON DOCUMENT READY
$.validationEngine.onSubmitValid = true;

if($.validationEngine.submitValidation(this,settings) == false){
if($.validationEngine.submitForm(this,settings) == true) {return false;}
}else{
settings.failure && settings.failure();
return false;
}
})
if(settings.inlineValidation == true){ // Validating Inline ?

$(this).find("[class^=validate]").not("[type=checkbox]").bind("blur", function(caller){ _inlinEvent(this) })
$(this).find("[class^=validate][type=checkbox]").bind("click", function(caller){ _inlinEvent(this) })

function _inlinEvent(caller){
if($.validationEngine.intercept == false || !$.validationEngine.intercept){ // STOP INLINE VALIDATION THIS TIME ONLY
$.validationEngine.onSubmitValid=false;
$.validationEngine.loadValidation(caller,settings);
}else{
$.validationEngine.intercept = false;
}
}
}
};
$.validationEngine = {
submitForm : function(caller){
if($.validationEngine.settings.ajaxSubmit){
$.ajax({
type: "POST",
url: $.validationEngine.settings.ajaxSubmitFile,
async: true,
data: $(caller).serialize(),
beforeSend: function(){

},
success: function(data){
if(data == "true"){ // EVERYTING IS FINE, SHOW SUCCESS MESSAGE
$(caller).css("opacity",1)
$(caller).animate({opacity: 0, height: 0}, function(){
$(caller).css("display","none")
$(caller).before("<div class='ajaxSubmit'>"+$.validationEngine.settings.ajaxSubmitMessage+"</div>")
$.validationEngine.closePrompt(".formError",true)
$(".ajaxSubmit").show("slow")
if ($.validationEngine.settings.success){ // AJAX SUCCESS, STOP THE LOCATION UPDATE
$.validationEngine.settings.success && $.validationEngine.settings.success();
return false;
}
})
}else{ // HOUSTON WE GOT A PROBLEM (SOMETING IS NOT VALIDATING)
data = eval( "("+data+")");
errorNumber = data.jsonValidateReturn.length
for(index=0; index<errorNumber; index++){
fieldId = data.jsonValidateReturn[index][0];
promptError = data.jsonValidateReturn[index][1];
type = data.jsonValidateReturn[index][2];
$.validationEngine.buildPrompt(fieldId,promptError,type);
}
}
}
})
return true;
}
if ($.validationEngine.settings.success){ // AJAX SUCCESS, STOP THE LOCATION UPDATE
$.validationEngine.settings.success && $.validationEngine.settings.success();
return true;
}
return false;
},
buildPrompt : function(caller,promptText,type,ajaxed) { // ERROR PROMPT CREATION AND DISPLAY WHEN AN ERROR OCCUR
var divFormError = document.createElement('div');
var formErrorContent = document.createElement('div');

linkTofield = $(caller).attr("id") + "formError";
linkTofield = linkTofield.replace("[",""); linkTofield = linkTofield.replace("]","");

$(divFormError).addClass("formError")

if(type == "pass"){ $(divFormError).addClass("greenPopup") }
if(type == "load"){ $(divFormError).addClass("blackPopup") }
if(ajaxed){ $(divFormError).addClass("ajaxed") }

$(divFormError).addClass(linkTofield)
$(formErrorContent).addClass("formErrorContent")

$("body").append(divFormError)
$(divFormError).append(formErrorContent)

if($.validationEngine.showTriangle != false){ // NO TRIANGLE ON MAX CHECKBOX AND RADIO
var arrow = document.createElement('div')
$(arrow).addClass("formErrorArrow")
$(divFormError).append(arrow)
if($.validationEngine.settings.promptPosition == "bottomLeft" || $.validationEngine.settings.promptPosition == "bottomRight"){
$(arrow).addClass("formErrorArrowBottom")
$(arrow).html('<div class="line1"><!-- --></div><div class="line2"><!-- --></div><div class="line3"><!-- --></div><div class="line4"><!-- --></div><div class="line5"><!-- --></div><div class="line6"><!-- --></div><div class="line7"><!-- --></div><div class="line8"><!-- --></div><div class="line9"><!-- --></div><div class="line10"><!-- --></div>');
}
if($.validationEngine.settings.promptPosition == "topLeft" || $.validationEngine.settings.promptPosition == "topRight"){
$(divFormError).append(arrow)
$(arrow).html('<div class="line10"><!-- --></div><div class="line9"><!-- --></div><div class="line8"><!-- --></div><div class="line7"><!-- --></div><div class="line6"><!-- --></div><div class="line5"><!-- --></div><div class="line4"><!-- --></div><div class="line3"><!-- --></div><div class="line2"><!-- --></div><div class="line1"><!-- --></div>');
}
}
$(formErrorContent).html(promptText)

callerTopPosition = $(caller).offset().top;
callerleftPosition = $(caller).offset().left;
callerWidth = $(caller).width()
inputHeight = $(divFormError).height()

/* POSITIONNING */
if($.validationEngine.settings.promptPosition == "topRight"){callerleftPosition += callerWidth -30; callerTopPosition += -inputHeight -10; }
if($.validationEngine.settings.promptPosition == "topLeft"){ callerTopPosition += -inputHeight -10; }

if($.validationEngine.settings.promptPosition == "centerRight"){ callerleftPosition = $('#errOffset').offset().left; }

if($.validationEngine.settings.promptPosition == "bottomLeft"){
callerHeight = $(caller).height();
callerleftPosition = callerleftPosition;
callerTopPosition = callerTopPosition + callerHeight + 15;
}
if($.validationEngine.settings.promptPosition == "bottomRight"){
callerHeight = $(caller).height();
callerleftPosition += callerWidth -30;
callerTopPosition += callerHeight + 15;
}
$(divFormError).css({
top:callerTopPosition,
left:callerleftPosition,
opacity:0
})
return $(divFormError).animate({"opacity":0.87},function(){return true;});
},
updatePromptText : function(caller,promptText,type,ajaxed) { // UPDATE TEXT ERROR IF AN ERROR IS ALREADY DISPLAYED

linkTofield = $(caller).attr("id") + "formError";
linkTofield = linkTofield.replace("[",""); linkTofield = linkTofield.replace("]","");

updateThisPrompt = "."+ linkTofield


(type == "pass") ? $(updateThisPrompt).addClass("greenPopup") : $(updateThisPrompt).removeClass("greenPopup");
(
type == "load") ? $(updateThisPrompt).addClass("blackPopup") : $(updateThisPrompt).removeClass("blackPopup");
(
ajaxed) ? $(updateThisPrompt).addClass("ajaxed") : $(updateThisPrompt).removeClass("ajaxed");

$(updateThisPrompt).find(".formErrorContent").html(promptText)
callerTopPosition = $(caller).offset().top;
inputHeight = $(updateThisPrompt).height()

if($.validationEngine.settings.promptPosition == "bottomLeft" || $.validationEngine.settings.promptPosition == "bottomRight"){
callerHeight = $(caller).height()
callerTopPosition = callerTopPosition + callerHeight + 15
}
if($.validationEngine.settings.promptPosition == "centerRight"){ callerleftPosition += callerWidth +13;}
if($.validationEngine.settings.promptPosition == "topLeft" || $.validationEngine.settings.promptPosition == "topRight"){
callerTopPosition = callerTopPosition -inputHeight -10
}
$(updateThisPrompt).animate({
top:callerTopPosition
});
},
loadValidation : function(caller,settings) { // GET VALIDATIONS TO BE EXECUTED
$.validationEngine.settings = settings
rulesParsing = $(caller).attr('class');
rulesRegExp = /\[(.*)\]/;
getRules = rulesRegExp.exec(rulesParsing);
str = getRules[1]
pattern = /\W+/;
result= str.split(pattern);

var validateCalll = $.validationEngine.validateCall(caller,result)
return validateCalll
},
validateCall : function(caller,rules) { // EXECUTE VALIDATION REQUIRED BY THE USER FOR THIS FIELD
var promptText =""
var prompt = $(caller).attr("id");
var caller = caller;
ajaxValidate = false
var callerName = $(caller).attr("name")
$.validationEngine.isError = false;
$.validationEngine.showTriangle = true
callerType = $(caller).attr("type");

for (i=0; i<rules.length;i++){
switch (rules[i]){
case "optional":
if(!$(caller).val()){
$.validationEngine.closePrompt(caller)
return $.validationEngine.isError
}
break;
case "required":
_required(caller,rules);
break;
case "custom":
_customRegex(caller,rules,i);
break;
case "ajax":
if(!$.validationEngine.onSubmitValid){
_ajax(caller,rules,i);
}
break;
case "length":
_length(caller,rules,i);
break;
case "maxCheckbox":
_maxCheckbox(caller,rules,i);
groupname = $(caller).attr("name");
caller = $("input[name='"+groupname+"']")
break;
case "minCheckbox":
_minCheckbox(caller,rules,i);
groupname = $(caller).attr("name");
caller = $("input[name='"+groupname+"']")
break;
case "confirm":
_confirm(caller,rules,i);
break;
default :;
};
};
if ($.validationEngine.isError == true){

radioHackOpen();
if ($.validationEngine.isError == true){ // show only one
($("div."+prompt).size() ==0) ? $.validationEngine.buildPrompt(caller,promptText,"error") : $.validationEngine.updatePromptText(caller,promptText);
}
}else{
radioHackClose();
$.validationEngine.closePrompt(caller);
}
/* UNFORTUNATE RADIO AND CHECKBOX GROUP HACKS */
/* As my validation is looping input with id's we need a hack for my validation to understand to group these inputs */

function radioHackOpen(){

if($("input[name="+callerName+"]").size()> 1 && callerType == "radio") { // Hack for radio group button, the validation go the first radio
caller = $("input[name="+callerName+"]:first");
$.validationEngine.showTriangle = false;
var callerId ="."+ $(caller).attr("id");
if($(callerId).size()==0){ $.validationEngine.isError = true; }else{ $.validationEngine.isError = false;}
}
if($("input[name="+callerName+"]").size()> 1 && callerType == "checkbox") { // Hack for checkbox group button, the validation go the first radio
caller = $("input[name="+callerName+"]:first");
$.validationEngine.showTriangle = false;
var callerId ="div."+ $(caller).attr("id");
if($(callerId).size()==0){ $.validationEngine.isError = true; }else{ $.validationEngine.isError = false;}
}
}
function radioHackClose(){
if($("input[name="+callerName+"]").size()> 1 && callerType == "radio") { // Hack for radio group button, the validation go the first radio
caller = $("input[name="+callerName+"]:first");
}
if($("input[name="+callerName+"]").size()> 1 && callerType == "checkbox") { // Hack for checkbox group button, the validation go the first radio
caller = $("input[name="+callerName+"]:first");
}
}
/* VALIDATION FUNCTIONS */
function _required(caller,rules){ // VALIDATE BLANK FIELD
callerType = $(caller).attr("type");
if (callerType == "text" || callerType == "password" || callerType == "textarea"){

if(!$(caller).val()){
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules[rules[i]].alertText+"<br />";
}
}
if (callerType == "radio" || callerType == "checkbox" ){
callerName = $(caller).attr("name");

if($("input[name="+callerName+"]:checked").size() == 0) {
$.validationEngine.isError = true;
if($("input[name="+callerName+"]").size() ==1) {
promptText += $.validationEngine.settings.allrules[rules[i]].alertTextCheckboxe+"<br />";
}else{
promptText += $.validationEngine.settings.allrules[rules[i]].alertTextCheckboxMultiple+"<br />";
}
}
}
if (callerType == "select-one") { // added by paul@kinetek.net for select boxes, Thank you
callerName = $(caller).attr("id");

if(!$("select[name="+callerName+"]").val()) {
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules[rules[i]].alertText+"<br />";
}
}
if (callerType == "select-multiple") { // added by paul@kinetek.net for select boxes, Thank you
callerName = $(caller).attr("id");

if(!$("#"+callerName).val()) {
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules[rules[i]].alertText+"<br />";
}
}
}
function _customRegex(caller,rules,position){ // VALIDATE REGEX RULES
customRule = rules[position+1];
pattern = eval($.validationEngine.settings.allrules[customRule].regex);

if(!pattern.test($(caller).attr('value'))){
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules[customRule].alertText+"<br />";
}
}
function _ajax(caller,rules,position){ // VALIDATE AJAX RULES

customAjaxRule = rules[position+1];
postfile = $.validationEngine.settings.allrules[customAjaxRule].file;
fieldValue = $(caller).val();
ajaxCaller = caller;
fieldId = $(caller).attr("id");
ajaxValidate = true;
ajaxisError = $.validationEngine.isError;

/* AJAX VALIDATION HAS ITS OWN UPDATE AND BUILD UNLIKE OTHER RULES */
if(!ajaxisError){
$.ajax({
type: "POST",
url: postfile,
async: true,
data: "validateValue="+fieldValue+"&validateId="+fieldId+"&validateError=& quot;+customAjaxRule,
beforeSend: function(){ // BUILD A LOADING PROMPT IF LOAD TEXT EXIST
if($.validationEngine.settings.allrules[customAjaxRule].alertTextLoad){

if(!$("
div."+fieldId)[0]){
return $.validationEngine.buildPrompt(ajaxCaller,$.validationEngine.settings.allrules[customAjaxRule].alertT extLoad,"
load");
}else{
$.validationEngine.updatePromptText(ajaxCaller,$.validationEngine.settings.allrules[customAjaxRule].a lertTextLoad,"
load");
}
}
},
success: function(data){ // GET SUCCESS DATA RETURN JSON
data = eval( "
("+data+")"); // GET JSON DATA FROM PHP AND PARSE IT
ajaxisError = data.jsonValidateReturn[2];
customAjaxRule = data.jsonValidateReturn[1];
ajaxCaller = $("
#"+data.jsonValidateReturn[0])[0];
fieldId = ajaxCaller;
ajaxErrorLength = $.validationEngine.ajaxValidArray.length
existInarray = false;

if(ajaxisError == "
false"){ // DATA FALSE UPDATE PROMPT WITH ERROR;

_checkInArray(false) // Check if ajax validation alreay used on this field

if(!existInarray){ // Add ajax error to stop submit
$.validationEngine.ajaxValidArray[ajaxErrorLength] = new Array(2)
$.validationEngine.ajaxValidArray[ajaxErrorLength][0] = fieldId
$.validationEngine.ajaxValidArray[ajaxErrorLength][1] = false
existInarray = false;
}

$.validationEngine.ajaxValid = false;
promptText += $.validationEngine.settings.allrules[customAjaxRule].alertText+"
<br />";
$.validationEngine.updatePromptText(ajaxCaller,promptText,"",true);
}else{
_checkInArray(true)

$.validationEngine.ajaxValid = true;
if($.validationEngine.settings.allrules[customAjaxRule].alertTextOk){ // NO OK TEXT MEAN CLOSE PROMPT
$.validationEngine.updatePromptText(ajaxCaller,$.validationEngine.settings.allrules[customAjaxRule].a lertTextOk,"
pass",true);
}else{
ajaxValidate = false;
$.validationEngine.closePrompt(ajaxCaller);
}
}
function _checkInArray(validate){
for(x=0;x<ajaxErrorLength;x++){
if($.validationEngine.ajaxValidArray[x][0] == fieldId){
$.validationEngine.ajaxValidArray[x][1] = validate
existInarray = true;

}
}
}
}
});
}
}
function _confirm(caller,rules,position){ // VALIDATE FIELD MATCH
confirmField = rules[position+1];

if($(caller).attr('value') != $("
#"+confirmField).attr('value')){
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules["
confirm"].alertText+"<br />";
}
}
function _length(caller,rules,position){ // VALIDATE LENGTH

startLength = eval(rules[position+1]);
endLength = eval(rules[position+2]);
feildLength = $(caller).attr('value').length;

if(feildLength<startLength || feildLength>endLength){
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules["
length"].alertText+startLength+$.validationEngine.set tings.allrules["length"].alertText2+endLength+$.validationEngine.settings.allrules["le ngth"].alertText3+"<br />"
}
}
function _maxCheckbox(caller,rules,position){ // VALIDATE CHECKBOX NUMBER

nbCheck = eval(rules[position+1]);
groupname = $(caller).attr("
name");
groupSize = $("
input[name='"+groupname+"']:checked").size();
if(groupSize > nbCheck){
$.validationEngine.showTriangle = false
$.validationEngine.isError = true;
promptText += $.validationEngine.settings.allrules["
maxCheckbox"].alertText+"<br />";
}
}
function _minCheckbox(caller,rules,position){ // VALIDATE CHECKBOX NUMBER

nbCheck = eval(rules[position+1]);
groupname = $(caller).attr("
name");
groupSize = $("
input[name='"+groupname+"']:checked").size();
if(groupSize < nbCheck){
$.validationEngine.isError = true;
$.validationEngine.showTriangle = false;
promptText += $.validationEngine.settings.allrules["
minCheckbox"].alertText+" "+nbCheck+" "+$.validationEngine.settings.allrules["minCheckbox"].alertText2+"<br />";
}
}
return($.validationEngine.isError) ? $.validationEngine.isError : false;
},
closePrompt : function(caller,outside) { // CLOSE PROMPT WHEN ERROR CORRECTED
if(outside){
$(caller).fadeTo("
fast",0,function(){
$(caller).remove();
});
return false;
}
if(!ajaxValidate){
linkTofield = $(caller).attr("
id") + "formError";
linkTofield = linkTofield.replace("
[",""); linkTofield = linkTofield.replace("]","");

closingPrompt = "
."+linkTofield;

$(closingPrompt).fadeTo("
fast",0,function(){
$(closingPrompt).remove();
});
}
},
submitValidation : function(caller,settings) { // FORM SUBMIT VALIDATION LOOPING INLINE VALIDATION
var stopForm = false;
$.validationEngine.settings = settings
$.validationEngine.ajaxValid = true
$(caller).find("
.formError").remove();
var toValidateSize = $(caller).find("
[class^=validate]").size();

$(caller).find("
[class^=validate]").each(function(){
callerId = $(this).attr("
id")
if(!$("
."+callerId).hasClass("ajaxed")){ // DO NOT UPDATE ALREADY AJAXED FIELDS (only happen if no normal errors, don't worry)
var validationPass = $.validationEngine.loadValidation(this,settings);
return(validationPass) ? stopForm = true : "";
}
});
ajaxErrorLength = $.validationEngine.ajaxValidArray.length // LOOK IF SOME AJAX IS NOT VALIDATE
for(x=0;x<ajaxErrorLength;x++){
if($.validationEngine.ajaxValidArray[x][1] == false){
$.validationEngine.ajaxValid = false
}
}
if(stopForm || !$.validationEngine.ajaxValid){ // GET IF THERE IS AN ERROR OR NOT FROM THIS VALIDATION FUNCTIONS
destination = $("
.formError:not('.greenPopup'):first").offset().top;
$("
html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, 1100);
return true;
}else{
return false
}
}
}
})(jQuery);

Спустя 2 минуты, 46 секунд (19.11.2010 - 11:20) RuslanMRP написал(а):
Форма:

<?php
$title = 'Заказ автозапчастей Тартуга-драйв';
session_name("fancyform");
session_start();
$_SESSION['n1'] = rand(1,20);
$_SESSION['n2'] = rand(1,20);
$_SESSION['expect'] = $_SESSION['n1']+$_SESSION['n2'];
$str='';
if($_SESSION['errStr'])
{
$str='<div class="error">'.$_SESSION['errStr'].'</div>';
unset($_SESSION['errStr']);
}
$success='';
if($_SESSION['sent'])
{
$success='<h1>Спасибо!</h1>';
$css='<style type="text/css">#contact-form{display:none;}</style>';
unset($_SESSION['sent']);
}
?>
<?

include ("topheader.php");
include ("leftmenu.html");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
http-equiv="Content-Type" content="text/html; charset=windows-1251">








<link
rel="stylesheet" type="text/css" href="jqtransformplugin/jqtransform.css" />
<link
rel="stylesheet" type="text/css" href="formValidator/validationEngine.jquery.css" />
<link
rel="stylesheet" type="text/css" href="css/forma.css" />

<?=
$css?>

<script
type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script
type="text/javascript" src="jqtransformplugin/jquery.jqtransform.js"></script>
<script
type="text/javascript" src="formValidator/jquery.validationEngine.js"></script>

<script
type="text/javascript" src="JavaScript/script.js"></script>

<style
type="text/css">
select {
width: 145px;
}
</style>

<script
type="text/javascript">
(function($){
// очищаем select
$.fn.clearSelect = function() {
return this.each(function(){
if(this.tagName=='SELECT') {
this.options.length = 0;
$(this).attr('disabled','disabled');
}
}
);
}
// заполняем select
$.fn.fillSelect = function(dataArray) {
return this.clearSelect().each(function(){
if(this.tagName=='SELECT') {
var currentSelect = this;
$.each(dataArray,function(index,data){
var option = new Option(data.text,data.value);
if($.support.cssFloat) {
currentSelect.add(option,null);
} else {
currentSelect.add(option);
}
}
);
}
}
);
}
}
)(jQuery);
</script>
<script
type="text/javascript">
$(document).ready(function(){

// выбор автомобиля
function adjustAuto(){
var countryValue = $('#country').val();
var tmpSelect = $('#auto');
if(countryValue.length == 0) {
tmpSelect.attr('disabled','disabled');
tmpSelect.clearSelect();
adjustModel();
} else {
$.getJSON('cascadeSelectAuto.php',{country:countryValue},function(data) { tmpSelect.fillSelect(data).attr('disabled',''); adjustModel(); });

}
}
;

$('#country').change(function(){
adjustAuto();
}).change();
$('#auto').change(adjustModel);


});
</script>

</head>
<body>
<table
bgcolor=#dadada border="0" width="100%" height="100%">
<tr>
<td
valign="right" width="100%" height="100%" align="center" bgcolor=#f5f5f5>
<div
id="main-container">

<div
id="form-container">
<h1>
ФОРМА ЗАКАЗА</h1>
<h2>
Тартуга-драйв</h2>

<form
id="contact-form" name="contact-form" method="post" action="submit.php">
<table
width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td
width="15%"><label for="name">Контактное имя<font color="red">*</font></label></td>
<td
width="70%"><input type="text" class="validate[required,custom[onlyLetter]]" name="name" id="name" value="<?=$_SESSION['post']['name']?>" /></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td
width="15%"><label for="VIN">Номер кузова<font color="red">*</font></label></td>
<td><input
type="text" class="validate[required,custom[VIN]]" name="VIN" id="VIN" value="<?=$_SESSION['post']['VIN']?>" /></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td
class="border"><label for="country">Марка<font color="red">*</font></label></td>
<td><select
id="country" name="country">
<option
value=""></option>
<option
value="Alfa Romeo">Alfa Romeo</option>
<option
value="Audi">Audi</option>
<option
value="Bentley">Bentley</option>
<option
value="BMW">BMW</option>
<option
value="Buick">Buick</option>
<option
value="Cadillac">Cadillac</option>
<option
value="Chery">Chery</option>
<option
value="Chevrolet">Chevrolet</option>
<option
value="Chrysler">Chrysler</option>
<option
value="Citroen">Citroen</option>
<option
value="Dacia">Dacia</option>
<option
value="Daewoo">Daewoo</option>
<option
value="Daihatsu">Daihatsu</option>
<option
value="DODGE">DODGE</option>
<option
value="Fiat">Fiat</option>
<option
value="Ford">Ford</option>
<option
value="Geely">Geely</option>
<option
value="GMC">GMC</option>
<option
value="Honda">Honda</option>
<option
value="Honda Acura">Honda Acura</option>
<option
value="Hummer">Hummer</option>
<option
value="Hyundai">Hyundai</option>
<option
value="Infiniti">Infiniti</option>
<option
value="Isuzu">Isuzu</option>
<option
value="Jaguar">Jaguar</option>
<option
value="Jeep">Jeep</option>
<option
value="KIA">KIA</option>
<option
value="Lancia">Lancia</option>
<option
value="Land Rover">Land Rover</option>
<option
value="Lexus">Lexus</option>
<option
value="Lincoln">Lincoln</option>
<option
value="Maserati">Maserati</option>
<option
value="Maybach">Maybach</option>
<option
value="Mazda">Mazda</option>
<option
value="MCC Smart">MCC Smart</option>
<option
value="Mercedes">Mercedes</option>
<option
value="Mercury">Mercury</option>
<option
value="MG">MG</option>
<option
value="Mini">Mini</option>
<option
value="Mitsubishi">Mitsubishi</option>
<option
value="Nissan">Nissan</option>
<option
value="Oldsmobile">Oldsmobile</option>
<option
value="Opel">Opel</option>
<option
value="Peugeot">Peugeot</option>
<option
value="Plymouth">Plymouth</option>
<option
value="Pontiac">Pontiac</option>
<option
value="Porsche">Porsche</option>
<option
value="Proton">Proton</option>
<option
value="Renault">Renault</option>
<option
value="Rover">Rover</option>
<option
value="SAAB">SAAB</option>
<option
value="Samand">Samand</option>
<option
value="Saturn">Saturn</option>
<option
value="SEAT">SEAT</option>
<option
value="Skoda">Skoda</option>
<option
value="SsangYong">SsangYong</option>
<option
value="Subaru">Subaru</option>
<option
value="Suzuki">Suzuki</option>
<option
value="Toyota">Toyota</option>
<option
value="Volkswagen">Volkswagen</option>
<option
value="Volvo">Volvo</option>
</select></td>
<td>
 </td>
</tr>
<tr>
<td
class="border"><label for="auto">Модель<font color="red">*</font></label></td>
<td><select
id="auto" name="auto" disabled="disabled"></select></td>
<td>
 </td>
</tr>
<tr>
<td
width="15%"><label for="Mark">Марка</label></td>
<td
width="70%"><input type="text" name="Mark" id="Mark" value="<?=$_SESSION['post']['Mark']?>" /></td>
<td
width="15%"><label for="artikul">Если нет в списке</label></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td
width="15%"><label for="Model">Модель</label></td>
<td
width="70%"><input type="text" name="Model" id="Model" value="<?=$_SESSION['post']['Model']?>" /></td>
<td
width="15%"><label for="artikul">Если нет в списке</label></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td
class="border"><label for="Year">Год<font color="red">*</font></label></td>
<td><select
name="Year" id="Year">
<option
value="" selected="selected"></option>
<option
value="2011">2011</option>
<option
value="2010">2010</option>
<option
value="2009">2009</option>
<option
value="2008">2008</option>
<option
value="2007">2007</option>
<option
value="2006">2006</option>
<option
value="2005">2005</option>
<option
value="2004">2004</option>
<option
value="2003">2003</option>
<option
value="2002">2002</option>
<option
value="2001">2001</option>
<option
value="2000">2000</option>
<option
value="1999">1999</option>
<option
value="1998">1998</option>
<option
value="1997">1997</option>
<option
value="1996">1996</option>
<option
value="1995">1995</option>
<option
value="1994">1994</option>
<option
value="1993">1993</option>
<option
value="1992">1992</option>
<option
value="1991">1991</option>
<option
value="1990">1990</option>
<option
value="1989">1989</option>
<option
value="1988">1988</option>
<option
value="1987">1987</option>
<option
value="1986">1986</option>
<option
value="1985">1985</option>
<option
value="1984">1984</option>
<option
value="1983">1983</option>
<option
value="1982">1982</option>
<option
value="1981">1981</option>
<option
value="1980">1980</option>
</select></td>
<td>
 </td>
</tr>
<tr>
<td
width="15%"><label for="Volume">Объем<font color="red">*</font></label></td>
<td><input
type="text" class="validate[required,custom[Volume]]" name="Volume" id="Volume" value="<?=$_SESSION['post']['Volume']?>" /></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td><label
for="subject">ABS<font color="red">*</font></label></td>
<td><select
name="subject" id="subject">
<option
value="" selected="selected"></option>
<option
value="Yeas">Да</option>
<option
value="No">Нет</option>
</select></td>
<td>
 </td>
</tr>
<tr>
<td><label
for="telephone">Контактный телефон<font color="red">*</font></label></td>
<td><input
type="text" class="validate[required,custom[telephone]]" name="telephone" id="telephone" value="<?=$_SESSION['post']['telephone']?>" /></td>
<td>
 </td>
</tr>
<tr>
<td
valign="top"><label for="message">Наименование товара<font color="red">*</font></label></td>
<td><textarea
name="message" id="message" class="validate[required]" cols="35" rows="5"><?=$_SESSION['post']['message']?></textarea></td>
<td
valign="top"> </td>
</tr>
<tr>
<td
width="15%"><label for="artikul">Оригинальный номер детали</label></td>
<td
width="70%"><input type="text" name="artikul" id="artikul" value="<?=$_SESSION['post']['artikul']?>" /></td>
<td
width="15%"><label for="artikul">Если знаете</label></td>
<td
width="15%" id="errOffset"> </td>
</tr>
<tr>
<td><label
for="email">Email<font color="red">*</font></label></td>
<td><input
type="text" class="validate[required,custom[email]]" name="email" id="email" value="<?=$_SESSION['post']['email']?>" /></td>
<td>
 </td>
</tr>
<tr>
<td><label
for="captcha"><?=$_SESSION['n1']?> + <?=$_SESSION['n2']?> =</label></td>
<td><input
type="text" class="validate[required,custom[onlyNumber]]" name="captcha" id="captcha" /></td>
<td
valign="top"> </td>
</tr>
<tr>
<td
valign="top"> </td>
<td
colspan="2"><input type="submit" name="button" id="button" value="Отправить" />
<input
type="reset" name="button2" id="button2" value="Сброс" />

<?=
$str?> <img id="loading" src="images/ajax-load.gif" width="16" height="16" alt="loading" /></td>
</tr>
</table>
</form>
<?=
$success?>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
<?

include ("copyright.html");
?>

Спустя 7 часов, 37 минут, 41 секунда (19.11.2010 - 18:58) inpost написал(а):
RuslanMRP
Как много, и опять приходится копаться в чужих кодах... кто-то создал багнутые формы, другие их берут и приносят на сайт: "как исправить то, что какой-то Ахмед Муссурам" напортил...

Спустя 35 минут, 23 секунды (19.11.2010 - 19:33) sergeiss написал(а):
RuslanMRP - вот вообще неохота вникать в твой код... Как ты думаешь, я один такой? wink.gif

Но судя по подсветке кода, у тебя где-то там, в коде JS, не хватает двойных кавычек. Либо - одна лишняя. Посмотри сам.

Спустя 48 минут, 35 секунд (19.11.2010 - 20:22) inpost написал(а):
sergeiss
ты совершенно прав, там как раз перед плюсом нету кавычки закрывающейся

Спустя 14 часов, 22 минуты, 51 секунда (20.11.2010 - 10:45) RuslanMRP написал(а):
Ребята извините за код! Подскажите пожалуйста, где нужно поставить ковычки. Код уже просмотрел раз 20.

Спустя 2 часа, 25 минут, 44 секунды (20.11.2010 - 13:11) DySprozin написал(а):
RuslanMRP
у тебя:
data: "validateValue="+fieldValue+"&validateId="+fieldId+"&validateError=& quot;+customAjaxRule,

надо:
data: "validateValue="+fieldValue+"&validateId="+fieldId+"&validateError="+customAjaxRule,

Спустя 11 минут, 9 секунд (20.11.2010 - 13:22) inpost написал(а):
Вверху подсветка стоит! Смотри там, где ВСЁ КРАСНОЕ начинается. Вот там перед плюсом надо.

Спустя 5 минут, 6 секунд (20.11.2010 - 13:27) RuslanMRP написал(а):
Ошибся, извините, у меня :

data: "validateValue="+fieldValue+"&validateId="+fieldId+"&validateError="+customAjaxRule,

Спустя 6 минут, 8 секунд (20.11.2010 - 13:33) RuslanMRP написал(а):
Там везде открываються и закрываються ""

Спустя 5 минут, 3 секунды (20.11.2010 - 13:38) inpost написал(а):
Как ты мог ошибиться при копи-пасте?

Спустя 5 минут, 1 секунда (20.11.2010 - 13:43) DySprozin написал(а):
inpost
он не мог ошибиться (; просто тут скрипт кода глючит (;
сам подставляет & quote; вместо кавычек в некоторых случаях );

Спустя 16 минут, 36 секунд (20.11.2010 - 14:00) RuslanMRP написал(а):
Я сам не понимаю - как она эту строку подставила!!!!! ohmy.gif

Спустя 49 минут, 45 секунд (20.11.2010 - 14:49) inpost написал(а):
RuslanMRP
А так, ничем не можем помочь, врядли кто-то будет разбираться и тратить часы в поисках глюков! Лучший вариант - самому такое написать, чем пользоваться чужими багнутыми готовыми скриптами.
Быстрый ответ:

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