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>
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>
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>
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.
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!!!