Wysyłanie danych z JavaScript do PHP

0

Witam, w chwili obecnej przygotowuję prosty skrypt sprawdzający poprawność danych podczas wysyłania maila z strony www. Jak wiadomo JavaScript nie może wysłać skryptu i tu pojawia się problem. Proszę o propozycje rozwiązania tego problemu...

Poniżej część kodu JavaScript

if(error == false)
	{
		sendMessage.style.display = 'block';
		sendMessageButton.style.display = 'none';
		
		//setTimeout("parent.location.href='index.php?p=send';",5000); 
		
		//<?php
		//	$to = '[email protected]';
		//	$subject = 'Mail ze strony www, autor: '.$_POST['userName'].', mail:'.$_POST['userMail'].'';
		//	$body = $_POST['textMail'];
		//	if (mail($to, $subject, $body)) 
		//	{
		//		echo("<p>Message successfully sent!</p>");
		//	} 
		//	else 
		//	{
		//		echo 'Błąd podczas wysyłania mail\'a... proszę spróbować później...';
		//	}
		//?>
	}
0

A nie prościej sprawdzić wszystko już w JS zamiast zapychać serwer zbędnymi zapytaniami? Jak już się chcesz uprzeć to możesz to zrobić AJAX'em, ale pytanie po co?

0

Ale ja sprawdzam wszystko w JavaScript, a na koniec jeżeli error == false chcę wysłać to poprzez php tylko jak połączyć jedno z drugim?

0

Wymusić submit na form. Albo wywołać window.open. Polecam to pierwsze.

0

Jakiś przykład "wymuszenia" submit'a?

1
<form id="form" action="mm.php" method="GET" >
<a href="javascript:xx();"><img src="mm.jpg" ></a>
</form>
<script type="text/javascript">
<!--
function xx()
{
  document.forms['form'].submit();
}
-->
</script>
0

Zacznijmy od tego że javascript jest wykonywane po stronie klienta, a php po stronie serwera. Sposób komunikacji klienta (przeglądarki) z serwerem to request-response http.
Reszta już została napisana, ale powtórzę. Albo dokonujesz request do serwera po przez submit jakiegoś formularza, albo wykonujesz XMLHttpRequest, czyli zapytanie techniką ajax (oczywiście masz jakieś frameworki js, które ci pomogą, nie musisz ręcznie tworzyć tego obiektu i dokonywać na nim zabiegów).

1 użytkowników online, w tym zalogowanych: 0, gości: 1