Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Ajax Contact Forma

[es] :: Javascript i AJAX :: Ajax Contact Forma

[ Pregleda: 2436 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Take
Ivan Vicentijevic
d.o.o Magic Design
Kragujevac

Član broj: 147842
Poruke: 83
77.46.175.*

Sajt: www.ubzrs.org


Profil

icon Ajax Contact Forma28.10.2007. u 03:55 - pre 200 meseci
Uradio sam ajax kontakt formu koja normalno funkcionise u IE ali u Firefox-u ne radi.
Evo *.js koda pa ako neko zna sta treba promeniti neka napise.
Hvala.


Code:
<script language="javascript">

function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();

function sendemail() {
    var ime = document.contactform.ime.value;
    var email = document.contactform..value;
    var tel = document.contactform.tel.value;
    var mob = document.contactform.net.value;
    document.contactform.send.disabled=true; 
    document.contactform.send.value='Sending....';

    http.open('get', 'konta.php?ime='+ime+'&email='+email+'&tel='+tel+'&mob='+mob+'&action=send');
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function handleResponse() {
    if(http.readyState == 4){
        var response = http.responseText;
        var update = new Array();

        if(response.indexOf('|' != -1)) {
            update = response.split('|');
            document.getElementById(update[0]).innerHTML = update[1];
         
        }
    }
}
</script>
 
Odgovor na temu

Br@nkoR
http://localhost

Član broj: 2597
Poruke: 1603

Sajt: localhost


+23 Profil

icon Re: Ajax Contact Forma29.10.2007. u 10:10 - pre 200 meseci
Postavi i html kôd koji ide uz ovaj js kôd, a takođe i primer podataka koje šalje server nakom izvršenog ajax zahteva, ili postavi link gde ovo koristiš, mada:
Citat:
Take:
Code:
var email = document.contactform..value;

Banned - Not available
 
Odgovor na temu

Take
Ivan Vicentijevic
d.o.o Magic Design
Kragujevac

Član broj: 147842
Poruke: 83
91.150.117.*

Sajt: www.ubzrs.org


Profil

icon Re: Ajax Contact Forma29.10.2007. u 23:00 - pre 200 meseci
Html kod

Code:
<!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=utf-8" />
<title>Kontakt</title>

<script language="javascript">

function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();

function sendemail() {
    var ime = document.contactform.ime.value;
    var email = document.contactform..value;
    var tel = document.contactform.tel.value;
    var mob = document.contactform.net.value;
    document.contactform.send.disabled=true; 
    document.contactform.send.value='Sending....';

    http.open('get', 'konta.php?ime='+ime+'&email='+email+'&tel='+tel+'&mob='+mob+'&action=send');
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function handleResponse() {
    if(http.readyState == 4){
        var response = http.responseText;
        var update = new Array();

        if(response.indexOf('|' != -1)) {
            update = response.split('|');
            document.getElementById(update[0]).innerHTML = update[1];
         
        }
    }
}
</script>


</head>

<body>
    <div id="kontakt">
   <form name="form" id="contactform">
     <table width="600" border="0" cellpadding="1">
       <tr>
         <td width="85">&nbsp;</td>
         <td width="152">Ime:<br /></td><td width="104">&nbsp;</td>
         <td width="152">E-mail:</td>
         <td width="85">&nbsp;</td>
       </tr>
       <tr>
         <td>&nbsp;</td>
         <td class="text"><input name="ime" type="text" id="ime" /></td>
         <td class="text">&nbsp;</td>
         <td><span class="text">
           <input name="email" type="text" id="email" />
         </span></td>
         <td>&nbsp;</td>
       </tr>
       <tr>
         <td>&nbsp;</td>
         <td>Kontakt telefon :</td>
         <td>&nbsp;</td>
         <td>Mobilni telefon: </td>
         <td>&nbsp;</td>
       </tr>
       <tr>
         <td>&nbsp;</td>
         <td class="text"><input name="tel" type="text" id="tel" /></td>
         <td class="text">&nbsp;</td>
         <td><span class="text">
           <input name="mob" type="text" id="mob" />
         </span></td>
         <td>&nbsp;</td>
       </tr>
       <tr>
         <td>&nbsp;</td>
         <td>&nbsp;</td>
         <td>&nbsp;</td>
         <td><label for="checkbox"></label></td>
         <td>&nbsp;</td>
       </tr>
       <tr>
         <td>&nbsp;</td>
         <td class="text">&nbsp;</td>
         <td class="text"><input name="send" type="submit" onclick="sendemail();" id="send" value="Pošalji"/></td>
         <td>&nbsp;</td>
         <td>&nbsp;</td>
       </tr>
     </table>
     <br />
     <p>&nbsp;</p>
     </form>
     <div id="contactarea">
     </div>
     </div>


Php kod


Code:
<?php

$to = "[email protected]"; //email adresa
$subject_prefix = ""; //prefiks

if(!isset($_GET['action']))
{
die("NO!");
}


$ime = trim($_GET['ime']);
$email = trim($_GET['email']);
$tel = trim($_GET['tel']);
$mob = trim($_GET['mob']);

mail($to,$ime,$tel,"From: ".$email."");

echo 'contactarea|Thank you '.$ime.', poslato.';
?>
 
Odgovor na temu

Br@nkoR
http://localhost

Član broj: 2597
Poruke: 1603

Sajt: localhost


+23 Profil

icon Re: Ajax Contact Forma30.10.2007. u 08:19 - pre 200 meseci
U prethodnoh poruci naveo sam jednu grešku
Code:
var email = document.contactform..value;

Dakle između dve tačke trebalo bi da stoji "email".
Zatim sledeća greška je u liniji
Code:
var mob = document.contactform.net.value;

Ne postoji polje sa imenom "net", verovatno si mislio na "mob".

Zatim FF ne podržava pristup nekom elementu pomoću
Code:
document.IDelementa

Već koristi metod getElementById().

Pošto si već dodelio, submit dugmetu, događaj click na koji pozivaš funkciju sendemail, poništi podrazumevanu akciju (klikom na submit dugme) form elementa, npr. tako što ćeš događaju submit form elementa dodeliti vrednost return false.

Takođe omogući i korisnicima koji nemaju aktiviran JS ili im browser ne podržava XMLHttpRequest upotrebu forme.

Nadam se da sam bio dovoljno jasan i da nisam propustio nijednu više grešku u kôdu.
Banned - Not available
 
Odgovor na temu

[es] :: Javascript i AJAX :: Ajax Contact Forma

[ Pregleda: 2436 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.