Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php/html]wywołanie funkcji poprzez naciśnięcie klawisza
kitachi
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 30.11.2006

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


Witam
tworzę swój pierwszy nieco bardziej złożony skrypt, założenie jest takie :
1. w pierwszym pliku jest formularz po wypełnieniu którego wysyłane są dane do pliku nr 2
2. w 2 następuje obróbka i sprawdzenie danych, po obróbce i uzupełnieniu o dodatkowe dane miały być dane wysyłane formularzem polami hidden do pliku nr 3. Po akceptacji przez wypełniającego.
3. w trójce miało to być wysyłane mailem gdzie trzeba.

okazało się że pola hidden w 2 obcinają stringi do pierwszej spotkanej spacji i przy polach zawierających np. Imię i Nazwisko dochodziło tylko to co było pierwsze. Mogę podmienić spacje poprzez str_replace ale nie o to chodzi. Postanowiłem umieścić plik nr 3 w postaci funkcji w pliku nr 2. Mam kłopot z wywołaniem tej funkcji przy pomocy button, zamykam to okno tak :
  1. <input type=button class=button value="wróć" onClick="java script:window.close()">

chciałem wywołać tę funkcję analogicznie, ale nie działa.
  1. <input type=button class=button value="wyślij" onClick="wyslij()">

W funkcji zadeklarowałem wszystkie dane jakie mają być w niej używane jako global bo to zmienne formularza czyli obecne w całym pliku nr 2 i ich potrzebuję do wysłania.
Proszę o proste objaśnienia, to moje początki z PHP.
Serdecznie dziękuję i pozdrawiam wszystkich czytających.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kitachi
post
Post #2





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 30.11.2006

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


witam
  1. <HEAD> <TITLE>TEKNOHEAT</TITLE>
  2. <meta http-equiv="Content-Type" content="text/html; lang="pl" charset="iso-8859-2">
  3. <script LANGUAGE="JavaScript">
  4. <!--
  5. function cl()
  6. {
  7. window.close();
  8. }
  9. //-->
  10. <font face="Arial">
  11. <?
  12. print('<form name="teknoheat" action="../moje/podlicz_tekh.php" method="POST">');
  13. print ('<br><br><BR><b><center>');
  14. print ("ZAMAWIASZ TEKNOHEAT");print ('<br>');
  15. print ("Zamówiłe&para; towary :");print ('<br>');
  16. print ('Teknoheat 200 ml. szt : ' . "$t200");print ('<br>');
  17. print ('Teknoheat 500 ml. szt : ' . "$t500");print ('<br>');
  18. print ('Teknoheat 1 l. szt : ' . "$t1");print ('<br>');
  19.  
  20. print ('Teknoheat biały 200 ml. szt : ' . "$tb200");print ('<br>');
  21. print ('Teknoheat biały 500 ml. szt : ' . "$tb500");print ('<br>');
  22. print ('Teknoheat biały 1 l. szt : ' . "$tb1");print ('<br>');
  23.  
  24. print ('Teknoheat złoty 300 ml. szt : ' . "$tz300");print ('<br>');
  25. print ('Teknoheat złoty 750 ml. szt : ' . "$tz750");print ('<br>');
  26. print ('Teknoheat złoty 1,5 l. szt : ' . "$tz15");print ('<br>');
  27.  
  28. print ('Teknoheat miedziany 300 ml. szt : ' . "$tm300");print ('<br>');
  29. print ('Teknoheat miedziany 750 ml. szt : ' . "$tm750");print ('<br>');
  30. print ('Teknoheat miedziany 1,5 l. szt : ' . "$tm15");print ('<br>');
  31.  
  32. print ('Rozpuszczalnik do Teknoheat 0,5 l. szt : ' . "$tr500");print ('<br>');
  33. print ('');
  34.  
  35. $kwota = ($t200 *13.3)+($t500*29)+($t1*56)+($tb200*24)+($tb500*52.2)+($tb1*100.8)+(($tz300+tm300)*24)+(($tz750+$tm750)*52.2)+(($tz15+$tm15)*100.8)+($tr500*8.2);
  36. print ('Na ł&plusmn;czn&plusmn; kwotę : ' . "$kwota" . ' złotych');print ('<br>');
  37.  
  38. print ('<br><br><BR><div align="center">
  39. <input type="hidden" name="kwota" value='.$kwota.'>
  40. <input type="hidden" name="t200" value='.$t200.'>
  41. <input type="hidden" name="t500" value='.$t500.'>
  42. <input type="hidden" name="t1" value='.$t1.'>
  43.  
  44. <input type="hidden" name="tb200" value='.$tb200.'>
  45. <input type="hidden" name="tb500" value='.$tb500.'>
  46. <input type="hidden" name="tb1" value='.$tb1.'>
  47.  
  48. <input type="hidden" name="tz300" value='.$tz300.'>
  49. <input type="hidden" name="tz750" value='.$tz750.'>
  50. <input type="hidden" name="tz15" value='.$tz15.'>
  51.  
  52. <input type="hidden" name="tm300" value='.$tm300.'>
  53. <input type="hidden" name="tm750" value='.$tm750.'>
  54. <input type="hidden" name="tm15" value='.$tm15.'>
  55. <input type="hidden" name="tr500" value='.$tr500.'>
  56.  
  57. <input type="hidden" name="e_mail" value='.$e_mail.'>
  58. <input type="hidden" name="nazwa_fir" value='.$nazwa_fir.'>
  59. <input type="hidden" name="nip" value='.$nip.'>
  60. <input type="hidden" name="imie_i_nazw" value='.$imie_i_nazw.'>
  61. <input type="hidden" name="ulica" value='.$ulica.'>
  62. <input type="hidden" name="kodp" value='.$kodp.'>
  63. <input type="hidden" name="miasto" value='.$miasto.'>
  64. <input type="hidden" name="telefon" value='.$telefon.'>
  65. <input type=button class=button value="wróć do zamówienia" onClick="java script:window.close()">
  66. <input type="submit" value="Wy&para;lij zamówienie" name="submit">
  67. </form>
  68. </div>');
  69. //}
  70. ?>
  71. </font>
  72. </body></HTML>

to kod pliku nr 2 po przesłaniu danych z formularza od pliku nr 1
  1. <META http-equiv="content-type" content="text/html; lang="pl" charset="iso-8859-2">
  2. <script LANGUAGE="JavaScript">
  3. <!--
  4. function cl()
  5. {
  6. window.close();
  7. }
  8. //-->
  9. <font face="Arial">
  10. <?
  11.  
  12. print ("Zamówienie zostało przyjęte !<br>");
  13. print("Dziękujemy !");
  14. $from = 'e_mail';
  15. $to = '1@eranet.pl';
  16. $szef = '2@eranet.pl';
  17. $subject = 'zamówienie ze strony www';
  18. $body = ("Zamówienie \n\n
  19. Zamówienie \n ================================================================================
    == \n\n
  20. Firma : $nazwa_fir \n
  21. NIP : $nip \n
  22. Imie i nazwisko : $imie_i_nazw \n
  23. Ulica : $ulica \n
  24. Kod pocztowy : $kodp \n
  25. Miasto : $miasto \n
  26. Telefon : $telefon \n
  27. e-mail : $e_mail \n \n
  28. Zamówienie Teknoheat 200 ml.: $t200 \n
  29. Zamówienie Teknoheat 500 ml.: $t500 \n
  30. Zamówienie Teknoheat 1 l.: $t1 \n
  31. Zamówienie Teknoheat biały 200 ml.: $tb200 \n
  32. Zamówienie Teknoheat biały 500 ml.: $tb500 \n
  33. Zamówienie Teknoheat biały 1 l.: $tb1 \n
  34. Zamówienie Teknoheat złoty 300 ml.: $tz300 \n
  35. Zamówienie Teknoheat złoty 750 ml.: $tz750 \n
  36. Zamówienie Teknoheat złoty 1,5 l.: $tz15 \n
  37. Zamówienie Teknoheat miedziany 300 ml.: $tm300 \n
  38. Zamówienie Teknoheat miedziany 750 ml.: $tm750 \n
  39. Zamówienie Teknoheat miedziany 1,5 l.: $tm15 \n
  40. Zamówienie rozpuszczalnik do Teknoheat 500 ml.: $tr500 \n
  41. warto&para;ć zamówienia : $kwota \n ");
  42. mail ($to,$subject,$body,"From : $from \n ");
  43. mail ($e_mail,$subject,$body,"From : $to \n Return-Path: <1@eranet.pl>");
  44. mail ($szef,$subject,$body,"From : $from \n ");
  45.  
  46. print ('<br><br><BR><div align="center">
  47. <input type=button class=button value="zamknij" onClick="java script:window.close()">
  48. </div>');
  49.  
  50.  
  51. ?>
  52. </font>
  53. </body></HTML>

to kod pliku wysyłającego nr 3 zamieniłem go na funkcję i wstawiłem do pliku nr 2 pod taką postacią
  1. function wyslij ()
  2. {
  3. global $kwota;
  4. global $t200; global $t500; global $t1;
  5. global $tb200; global $tb500; global $tb1;
  6. global $tz300; global $tz750; global $tz15;
  7. global $tm300; global $tm750; global $tm15;
  8. global $tr500;
  9.  
  10. $from = 'e_mail';
  11. $to = '1@eranet.pl';
  12. $szef = '2@eranet.pl';
  13. $subject = 'zamówienie ze strony www';
  14. $body = ("Zamówienie \n\n
  15. Zamówienie \n ================================================================================
    == \n\n
  16. Firma : $nazwa_fir \n
  17. NIP : $nip \n
  18. Imie i nazwisko : $imie_i_nazw \n
  19. Ulica : $ulica \n
  20. Kod pocztowy : $kodp \n
  21. Miasto : $miasto \n
  22. Telefon : $telefon \n
  23. e-mail : $e_mail \n \n
  24. Zamówienie Teknoheat 200 ml.: $t200 \n
  25. Zamówienie Teknoheat 500 ml.: $t500 \n
  26. Zamówienie Teknoheat 1 l.: $t1 \n
  27. Zamówienie Teknoheat biały 200 ml.: $tb200 \n
  28. Zamówienie Teknoheat biały 500 ml.: $tb500 \n
  29. Zamówienie Teknoheat biały 1 l.: $tb1 \n
  30. Zamówienie Teknoheat złoty 300 ml.: $tz300 \n
  31. Zamówienie Teknoheat złoty 750 ml.: $tz750 \n
  32. Zamówienie Teknoheat złoty 1,5 l.: $tz15 \n
  33. Zamówienie Teknoheat miedziany 300 ml.: $tm300 \n
  34. Zamówienie Teknoheat miedziany 750 ml.: $tm750 \n
  35. Zamówienie Teknoheat miedziany 1,5 l.: $tm15 \n
  36. Zamówienie rozpuszczalnik do Teknoheat 500 ml.: $tr500 \n
  37. warto&para;ć zamówienia : $kwota \n ");
  38. mail ($to,$subject,$body,"From : $from \n ");
  39. mail ($e_mail,$subject,$body,"From : $to \n Return-Path: <1@eranet.pl>");
  40. mail ($szef,$subject,$body,"From : $from \n ");
  41.  
  42. print ('<br><br><BR><div align="center">
  43. <input type=button class=button value="zamknij" onClick="java script:window.close()">
  44. </div>');
  45. }

chciałbym wywołać funkcję "wyslij()" w pliku nr 2 po naciśnięciu klawisza
  1. <input type=button class=button value="wyślij" onClick="wyslij()">

tak aby ona zadziałała, może być inny sposów wywołania funkcji po naciśnięciu obrazka i tp. lub jeśli można coś poradzić aby pola hidden nie obcinały stringów.
Przy okazji znalazłem parę braków deklaracji zmiennych global do funkcji.
Pozdrawiam.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 7.10.2025 - 04:45