Отпрака формы без рефлэша

Discussion in 'PHP' started by Google00, 16 Feb 2007.

  1. Google00

    Google00 Member

    Joined:
    28 Dec 2006
    Messages:
    19
    Likes Received:
    5
    Reputations:
    0
    Возможно ли, если да то как, осуществить такое:
    Несколько форм, пользователь вводит данные, после нажимает кнопку submit, данные отправляются, но страница не обновляется, форма скрывается, а появляется текс типа "всё супер гуд, все отправлено" .
    Буду очень рад любым советам и замечаниям.
     
  2. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
  3. nc.STRIEM

    nc.STRIEM Members of Antichat

    Joined:
    5 Apr 2006
    Messages:
    1,036
    Likes Received:
    347
    Reputations:
    292
    AJAX!!!
     
  4. cRiLaZ

    cRiLaZ Member

    Joined:
    17 Oct 2006
    Messages:
    21
    Likes Received:
    15
    Reputations:
    18
    http://www.intenter.ru/me/articles/poll.jsp

    Это должно помоч
     
  5. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    nc.STRIEM, это был риторический вопрос)

    чтоб не флеймить, покажу пример
    HTML:
    <script>
    function start(){
    
    	var xmlhttp = false;
    
    
    
    	try{
    
    		xmlhttp = new ActiveXObject("Mcxml2.XMLHTTP");
    
    	}
    
    
    
    	catch(e){
    
    
    
    		try{
    
    			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    
    		}
    
    		catch(E){
    
    		xmlhttp = false;
    
    		}
    
    	}
    
    
    
    	if(!xmlhttp && typeof XMLHttpRequest != 'undefined'){
    
    		xmlhttp = new XMLHttpRequest();
    
    
    
    	}
    
    	return xmlhttp;
    
    }
    
    
    
    function AJAX_Enter(name, pass, remember){
    
    
    
    	var xmlhttp = start();
    
    	var obj = document.getElementById('loginhtml');
    
    	obj.innerHTML  = "<div class='ajaxload'><img src='templates/" + BOARD_TEMPLATE + "/images/ajax_load.gif'></div>";
    
    	xmlhttp.open("POST", "ajax.php?act=login&name="+name+"&password="+pass+"&remember="+remember);
    
    	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
    
    	xmlhttp.onreadystatechange = function(){
    
    		if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
    
    			obj.innerHTML = xmlhttp.responseText;
    
    		}
    
    	}
    
    	xmlhttp.send(null);
    
    }
    </script>
    
    <div align='center' id='loginhtml'>
    
                      <form action='index.php?act=login' method='post' name='loginform'>
    
                      	{L_NAME} <br /><input type='text' name='name'  OnFocus="this.value=''" />
    
                      	<br />
    
                      	{L_PASSWORD} <br /><input type='password' name='password'  OnFocus="this.value=''" />
    
                      	<br />
    
                      	<input type='checkbox' value='y' name='remember' title='{L_REMEMBER}' />
    
                      	<script>
    
                      	document.write("<input type='button' value='{L_ENTER}' name='enter' Onclick=\"AJAX_Enter(loginform.name.value, loginform.password.value, loginform.remember.value)\"/>");
    
                      	</script>
    
                      	<noscript>
    
                      	<input type='submit' name='enter' value='{L_ENTER}' />
    
                      	</noscript>
    
                      </form>
    
                      </div>
    
    
    взял со своего разрабатуещгося движка, но суть ясна.
     
    1 person likes this.
  6. Google00

    Google00 Member

    Joined:
    28 Dec 2006
    Messages:
    19
    Likes Received:
    5
    Reputations:
    0
    Круто!!! Оперативно!!! Щас читаю.
     
  7. Abra

    Abra Member

    Joined:
    17 Sep 2005
    Messages:
    278
    Likes Received:
    51
    Reputations:
    29
    поиск в гугле по XMLHttpRequest так же даст много полезной информации
     
    1 person likes this.
  8. Trinux

    Trinux Members of Antichat

    Joined:
    26 Nov 2004
    Messages:
    1,403
    Likes Received:
    296
    Reputations:
    364
    а еще, помимо присловутой ajax. формы без перезагрузки можно отправлять таргетом, типа
    <form target="ogogo"...
    где "ogogo", если не ошибаюсь, идентификатор обычно фрейма или i-фрейма.
     
    _________________________