Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Działa - nie działa, Skrypt raz działa - raz nie działa
Kris1971
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 23.07.2014

Ostrzeżenie: (0%)
-----


Witam szanownych Forumowiczów. Na początek małe wyjaśnienie - jeśli chodzi o js to moja wiedza jest praktycznie zerowa, ale staram się uczyć i czytać. Jak to wychodzi - cóż pewnie zobaczycie poniżej. Opierając się na kilku książkach i ... google.pl napisałem a raczej adoptowałem skrypty do strony. I po załadowaniu na serwer zadziałało. Ale po kilku godzinach już nie. Więc przerobiłem kod, załadowałem, zadziałało a potem ... znowu nie.

Najpierw skrypt obsługujący walidację formularza:
Kod
<script type="text/javascript">
    function SprawdzDane()
    {
    var imNaz = document.getElementById('pol1');
    var eMail = document.getElementById('pol2');
    var temat = document.getElementById('pol3');
    var tresc = document.getElementById('pol4');
    var kontr = document.getElementById('pol5');
    
    var imNazT = pol1.value;
    var eMailT = pol2.value;
    var tematT = pol3.value;
    var trescT = pol4.value;
    var kontrT = pol5.value;
    
    var err = false;
    
    if(imNazT == "") { pol1.style.backgroundColor = "#ffcaca";
    pol1.style.color = "red";
    pol1.placeholder = "Pole nie zostało wypełnione";
    
    err = true;
    } else {
    pol1.style.backgroundColor = "white";
    pol1.style.color = "#484848";
    pol1.style.fontWeight = "normal";
    }
    if(eMailT == "") { pol2.style.backgroundColor = "#ffcaca";
    pol2.style.color = "red";
    pol2.placeholder = "Pole nie zostało wypełnione";
    err = true;
    } else {
    pol2.style.backgroundColor = "white";
    pol2.style.color = "#484848";
    pol2.style.fontWeight = "normal";
    }
    if(tematT == "") { pol3.style.backgroundColor = "#ffcaca";
    pol3.style.color = "red";
    pol3.placeholder = "Pole nie zostało wypełnione";
    err = true;
    } else {
    pol3.style.backgroundColor = "white";
    pol3.style.color = "#484848";
    pol3.style.fontWeight = "normal";
    }
    if(trescT == "") { pol4.style.backgroundColor = "#ffcaca";
    pol4.style.color = "red";
    pol4.placeholder = "Pole nie zostało wypełnione";
    err = true;
    } else {
    pol4.style.backgroundColor = "white";
    pol4.style.color = "#484848";
    pol4.style.fontWeight = "normal";
    }
    if(err){
    alert("Proszę wypełnić wszystkie pola formularza!");} else {
                var http = new XMLHttpRequest();
                var tekst1 = document.getElementById("pol1").value;
                var tekst2 = document.getElementById("pol2").value;
                var tekst3 = document.getElementById("pol3").value;
                var tekst4 = document.getElementById("pol4").value;
                var tekst5 = document.getElementById("pol5").value;
                            var email = document.getElementById("pol2").value;
                            var re = /^[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)*@([a-zA-Z0-9_-]+)(\.[a-zA-Z0-9_-]+)*(\.[a-zA-Z]{2,4})$/i;
                                    if(email.match(re) == null) {
                                            alert('Wpisz poprawny adres e-mail!');
                                            pol2.style.backgroundColor = "#ffcaca";
                                            pol2.style.color = "red";
                                            pol2.style.fontWeight = "bold";
                                            pol2.value="";
                                            pol2.placeholder = "błędny format adresu";
                                            return false;
                                            }
                        var tekst6 = document.getElementById("pol6").value;
                        var chaptakontr = document.getElementById("chaptain").value;
                                    if(tekst6!==chaptakontr) {
                                            alert('Błędna wartość pola');
                                            pol6.style.backgroundColor = "#ffcaca";
                                            pol6.style.color = "red";
                                            pol6.style.fontWeight = "bold";
                                            pol6.value="";
                                            pol6.placeholder = "błędna wartość pola";
                                            return false;
                                    }
                var str = "pole1=" + tekst1 + "&pole2=" + tekst2 + "&pole3=" + tekst3 + "&pole4=" + tekst4 + "&pole5=" + tekst5;
                
var url = "wyslij.php";
http.open("POST", "http://kryoart.pl/wyslij.php", true);

//Send the proper header information along with the request
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

http.onreadystatechange = function wyslijDane() {
    if(http.readyState == 4 && http.status == 200) {
            alert(http.responseText);
            setTimeout(function(){ window.location.href = "index.php";
            }, 100);
    }
}
http.send(str);
    }}
    </script>


Potem jest skrypt do takiej mikro - captchy (a raczej do zamiany losowych znaków bez przeładowania strony)...
Kod
<script type="text/javascript">
    var XMLHttpRequestObject = false;
    if(window.XMLHttpRequest) {
    XMLHttpRequestObject = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
    XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }
    function pobierzDane()
    {
    if(XMLHttpRequestObject) {
    var p = document.getElementById("chapta");
    
    XMLHttpRequestObject.open("GET","http://kryoart.pl/dane1.php");
    XMLHttpRequestObject.onreadystatechange = function()
    {
    if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
    var powrot = XMLHttpRequestObject.responseText;
    p.innerHTML = (powrot);
    jQuery(function(){
                $("#chaptain").val(powrot);
        });
    }
    }
    XMLHttpRequestObject.send(null);
    }
    }
    </script>

Ze względów graficzno - estetycznych przy formularzu jest jeszcze taki skrypt:
Kod
<script type="text/javascript">
                var div = document.getElementById("chapta");
                var mytext =  document.getElementById("chaptain").value;
                div.textContent = (mytext);
                var text = div.textContent;
                </script>

A w jednym z elementów jest też skrypt
Kod
<script language="javascript" type="text/javascript">
    function playSound(soundfile) {
  document.getElementById("sg1").innerHTML=
    "<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\" />";
}
</script>
niezwiązany z formularzem.


I tak jak pisałem w nagłówku - działa - nie działa.
Problem zaczyna się już od alertu w pierwszym skrypcie - wysyła maila ale alert się nie pojawia ...
Help!!!

Ten post edytował Kris1971 23.07.2014, 07:46:25
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 06:44