Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.02.2012, 13:34
Профессор
Отправить личное сообщение для KamalovRadik Посмотреть профиль Найти все сообщения от KamalovRadik
 
Регистрация: 03.08.2011
Сообщений: 150

Как послать php обработчику переменную, находящуюся в js коде
Хочу сделать бронирование мест на одном сайте.
с аяксом я даже не знакомился, а там код на нем.

Вот хтмл код:
<form action="./js/reservations.php" method="post" class="reservationForm" id="reservationForm">
                
                	<!-- column 1 -->
                    <div class="col col_1_2 alpha">
                        <div class="row field_select">
							<label>Choose medical department:</label><br />
                          
						</div>
                        
                        <div class="row field_text">
							 <label>Your full name:</label><br />
                            <input name="name" value="" id="name" class="inputtext required" size="40" type="text" />	
						</div>
                        
                        <div id = 'emailId' class="row field_text">
                            <label>Your email address:</label><br />
                          <input name="email" value="" id="email" class="inputtext required" size="40" type="text" />
						</div>
                        <div class="row">
                        	<input type="submit" value="MAKE APPOINTMENT" id="send" class="btn-send" />
                        </div>
                    </div>
                    <!--/ column 1 -->
                    
                    <!-- column 2 -->
                	<div class="col col_1_2 omega">
                    	<div class="row field_date">
                          
                            <div id="date_in"></div>
                            <input name="date_in_input" value="" id="date_in_input" type="hidden" />
                            
                            <div class="notice_table"><span class="square-green">your selection</span> <span class="square-disable">not available</span></div>
						</div>
                  	</div>
                    <!--/ column 2 -->
                    
                    
                    <div class="field_submit">
                        <p class="sending"><img id="sending" src="./images/ajax-loader.gif" alt="" /></p>
                       
                    </div>
                </form>



Это присоединенный js код

jQuery(document).ready(function(){ 
	tfuse_reservations_form();
   
						});
   

function tfuse_reservations_form(){ 
	var my_error;
	jQuery("#send").bind("click", function(){
		
	my_error = false;
	jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").each(function(i)
	{
				var surrounding_element = jQuery(this);
				var value               = jQuery(this).attr("value");
				var check_for 			= jQuery(this).attr("id");
				var required 			= jQuery(this).hasClass("required");

				if(check_for == "email"){
					surrounding_element.removeClass("error valid");
					baseclases = surrounding_element.attr("class");
					if(!value.match(/^\w[\w|\.|\-]+@\w[\w|\.|\-]+\.[a-zA-Z]{2,4}$/)){
						surrounding_element.attr("class",baseclases).addClass("error");
						my_error = true;
					}else{
						surrounding_element.attr("class",baseclases).addClass("valid");
					}
				}

				if(required && check_for != "email"){
					surrounding_element.removeClass("error valid");
					baseclases = surrounding_element.attr("class");
					if(value == ""){
						surrounding_element.attr("class",baseclases).addClass("error");
						my_error = true;
					}else{
						surrounding_element.attr("class",baseclases).addClass("valid");
					}
				}


			   if(jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").length  == i+1){
					if(my_error == false){
						jQuery("#reservationForm p.notice, #reservationForm #send").hide();
                        jQuery("#reservationForm p.sending").show();


						var $datastring = "ajax=true";
						jQuery("#reservationForm input, #reservationForm textarea, #reservationForm radio, #reservationForm select").each(function(i)
						{
							var $name = jQuery(this).attr('name');
							$value = encodeURIComponent(jQuery(this).attr('value'));
							$datastring = $datastring + "&" + $name + "=" + $value;
						});

					jQuery.ajax({
						   type: "POST",
						
						   data: $datastring,
						      url: "./js/reservations.php",
						   success: function(response){
                               jQuery("#reservationForm p.sending, #reservationForm p.notice").hide();
                               if(response) {
                                  alert('сообещние отправлено')
                               } else {
                                  alert('нет')
                               }
						   }
						}); 
					}
				}

			});
			return false;
	});
}


Вот тут я пытался писать reservation.php

$name = $_POST['name'];
$email = $_POST['email'];
$date = $_POST['date'];

Последний раз редактировалось KamalovRadik, 17.02.2012 в 13:43.
Ответить с цитированием
  #2 (permalink)  
Старый 17.02.2012, 14:15
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

jQuery("#send").bind("click", function(){
    jQuery.ajax({
        type: 'post',
        url: "./js/reservations.php",
        data: jQuery( "#reservationForm" ).serialize(),
        success: function( response ){
            // .......
        }
    });
    return false;
});
Ответить с цитированием
  #3 (permalink)  
Старый 17.02.2012, 15:11
Профессор
Отправить личное сообщение для KamalovRadik Посмотреть профиль Найти все сообщения от KamalovRadik
 
Регистрация: 03.08.2011
Сообщений: 150

После этого кода, к элементам:
$name = $_POST['name'];
$email = $_POST['email'];

могу получить доступ, а к дате нет.

$date = $_POST['date']; <- так правильно писать? Если до строки jQuery.ajax({ прописать еще
date = jQuery( "#reservationForm" ).serialize();

Последний раз редактировалось KamalovRadik, 18.02.2012 в 01:08.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать локальную переменную глобальной?? Дмитрий Общие вопросы Javascript 8 02.11.2010 03:33
Вставка блока php в js...Как сделать? reup Общие вопросы Javascript 2 30.07.2009 11:02
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20
Как вывести переменную из php в сценарий Vitaly jQuery 5 02.07.2009 17:54
Как обозначить переменную выбранную в FileChooser? woo_hoo Общие вопросы Javascript 4 03.07.2008 12:58