Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Wysyłanie email z treściąścią zależną od linka
NorQ
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Witam, poszukuję skryptu PHP który będzie wysyłać e-mail. Jednak nie będzie to formularz, gdyż treść będzie się znajdować w linku.

Więc jeżeli będę chciał wysłać jakiś mail za pośrednictwem danego skryptu, to link musi być ustalony.

NP.
Cytat
www.mail.com/skrypt.php?mail=witaj na naszej stronie, twój kod aktywacyjny to: sadsfdfsads


I skrypt.php wysyła maila z treścią podaną w linku.

Więc, nadawca, tytuł i inne będą się znajdować w skrypcie, w przypadku treści będzie to link.

Wiadomo o co chodzi?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Jednak nie będzie to formularz, gdyż treść będzie się znajdować w linku.

...
No to zamiast z $_POST pobieraj dane z $_GET
Go to the top of the page
+Quote Post
NorQ
post
Post #3





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Niezbyt rozumiem, mógłbym prosić o opis jak to wykonać? Bądź gotowy skrypt który będzie mieć treść w linku, a nadawca, temat itd będą w skrypcie.(To nie ma być formularz)!

// Czyli że jak uruchomię skrypt, to wyśle mi maila według szablonu zamieszczonego w kodzie. Jedynie treść oraz odbiorca(danego maila) będzie się znajdować w linku.

Ten post edytował NorQ 21.02.2012, 14:57:05
Go to the top of the page
+Quote Post
Micchaleq
post
Post #4





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Nikt raczej nie będzie pisał za Ciebie,

Jeżeli chcesz używać GET-a to przekazujesz do adresu parametry które interesują np index.php?imie=Michal&nazwisko=Kowalski

i następnie możęsz sobie to pobrać
$_GET['imie'] // bedzie tu Michal
$_GET['nazwisko'] // będzie tu Kowalski
Go to the top of the page
+Quote Post
NorQ
post
Post #5





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


A jak umieścić treść w kodzie że nie trzeba używać S_GET ani S_POST?
Go to the top of the page
+Quote Post
Micchaleq
post
Post #6





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Cytat(NorQ @ 21.02.2012, 15:14:03 ) *
A jak umieścić treść w kodzie że nie trzeba używać S_GET ani S_POST?


kompletnie już nie rozumiem?

skoro chcesz aby twoj email zawierał dane użytkownika to musisz poprosić go o ich podanie przez formularz.

Jeżeli chcesz przypisać jakies wartości na stałe to już mowa o zmiennych.

Ewentualnie kompletnie nie rozumiem o co Ci chodzi.

Ten post edytował Micchaleq 21.02.2012, 15:18:20
Go to the top of the page
+Quote Post
NorQ
post
Post #7





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Cytat(Micchaleq @ 21.02.2012, 15:17:51 ) *
kompletnie już nie rozumiem?

skoro chcesz aby twoj email zawierał dane użytkownika to musisz poprosić go o ich podanie przez formularz.

Jeżeli chcesz przypisać jakies wartości na stałe to już mowa o zmiennych.

Ewentualnie kompletnie nie rozumiem o co Ci chodzi.


Ja tworzę skrypt, który będzie wysyłać dane od konta gry, link chcę wstawić w kod moda serwera. Np. Że jak ktoś chce odzyskać hasło, w trakcie gry wysyła się specjalny link.
Go to the top of the page
+Quote Post
Micchaleq
post
Post #8





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Wydaje mi się, że wszystkie odpowiedzi na twój problem padły wyżej.

Jeżeli chcesz przesyłać maila z jakimiś stałymi wartościamy to masz je zapisane w zmiennych, jeżeli chcesz je przekazywać przez adres to dajesz sobie

  1. < a href="przypomnij.php?haslo=".$haslo."&login=".$uzytkonik.">Przypomnij</a>


i w pliku przypomnij z pewnością powinineś mieć w takim przypadku metodu $_GET i funkcje mail.

// jeżeli chcesz to robić jakoś automatyczniej czy coś to już z pewnością js się kłania.

PS: Po co komu dane w trakcie gry?

Ten post edytował Micchaleq 21.02.2012, 15:30:40
Go to the top of the page
+Quote Post
NorQ
post
Post #9





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Dany link wstawię w kod serwera gry. Jeżeli gracz będzie chciał przypomnieć hasło to serwer uruchamia specjalny link do skryptu.

A skrypt wykonuje to:
Odbiorca - (wartość podana w linku wysłanym przez serwer) S_GET
Treść - (wartość podana w linku wysłanym przez serwer) S_GET
Tytuł - (wartość podana w kodzie PHP) Nie będzie to s_get, ani s_post. Tytuł będzie podany w kodzie skryptu.
Nadawca - (wartość podana w kodzie PHP) Nie będzie to s_get, ani s_post. Nadawca będzie podany w kodzie skryptu.

Podam kod skryptu:
  1. <?php
  2.  
  3. if ($_POST['bt'] == "wyslij") { /* sprawdzam czy formularz został wysłany */
  4. if (($_POST['email'] != "") AND ($_POST['tytul'] != "") AND ($_POST['tresc'] != "")) { /* sprawzdam czy każde pole jest wypełnione */
  5. $send = mail("norq@onet.pl",$_POST['tytul'],$_POST['tresc'],"From: Wiadomość ze strony <".$_POST['email'].">");
  6. if ($send) /* sprawdzam czy wiadomośc została wysłana */
  7. $message = "Wiadomość została wysłana...";
  8. else
  9. $message = "Widomość nie została wysłana, ponów próbę...";
  10. } else
  11. $message = "Nie wypełniono wszystkich pól...";
  12. }
  13.  
  14. ?>
  15.  
  16. <html>
  17. <head>
  18. <title>Wysyłanie widomości e-mail</title>
  19. <meta http-equiv="content-type" content="text/xml; charset=iso-8859-2" />
  20. <meta http-equiv="content-language" content="pl" />
  21.  
  22. </head>
  23. <body>
  24. <p><?php echo $message ?></p>
  25. <form action="" method="post">
  26. e-mail: <input type="text" name="email" /><br />
  27. tytuł: <input type="text" name="tytul" /><br />
  28. treść: <textarea name="tresc"></textarea>
  29. <input type="submit" name="bt" value="wyslij" />
  30. </form>
  31. </body>
  32. </html>

* Email podany w kodzie, czyli norq@onet.pl to nadawca.
Go to the top of the page
+Quote Post
Micchaleq
post
Post #10





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Cytat
Witam, poszukuję skryptu PHP który będzie wysyłać e-mail. Jednak nie będzie to formularz, gdyż treść będzie się znajdować w linku.


Jeżeli treści nie ustalisz na sztywno, bądz nie przekarzesz jej przez formularz to sama się nie wyczaruje.
Aby treść znalazła się w linku również trzeba ją tam umieścić albo ze stałych wartości, albo z formularza.

Formularz możesz przesłać postem albo getem ty wysyłasz postem i to w zasadzie na przykładzie który podałeś nie ma większej rożnicy.
// Get jest moim zdaniem bardziej niebezpieczny.

Zakładam, że użytkownik nie jest zalogowany skoro chce przypomnieć sobie dane, więć musi podać swoje jakieś prywatne dane a do tego niezbędby jest formularz.

Podając te dane możesz je przekazać za pomocą posta czy get-a do funkcji która wyszuka odpowiednie wartości w bazie danych czy innym źródle w którym znajdują się informacje i je prześle odpowiednio podstawiająć do funkcji mail.

Jeżeli nie pomaga Ci to co powyżej napisałem to nietety nie potrafię Ci dalej pomóc.
Go to the top of the page
+Quote Post
NorQ
post
Post #11





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Jednak zrobię wszystko na GET, tyle że pojawił się problem - linijka 5(patrz na kod wyżej). Jak ten typ kodu:
Cytat
$send = mail("norq@onet.pl",$_POST['tytul'],$_POST['tresc'],"From: Wiadomość ze strony <".$_POST['email'].">");

A w szczególności
Cytat
mail("norq@onet.pl",[...]

Jak zamienić na GET?

Mógłby ktoś odpowiedzieć? (IMG:style_emoticons/default/tongue.gif)
Jak usunąć button "wyslij" i zrobić tak żeby się wysyłało po wejściu na url...

Oto kod submita, który zadziała dopiero po naciśnięciu inputa "submit".

  1. if ($_POST['bt'] == "wyslij")


Jak zamienić go na taki, który uruchamia się automatycznie po wejściu na skrypt z strony?

Ten post edytował NorQ 21.02.2012, 17:05:08
Go to the top of the page
+Quote Post
Micchaleq
post
Post #12





Grupa: Zarejestrowani
Postów: 186
Pomógł: 4
Dołączył: 13.10.2009

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


Wiesz co kolego wydaje mi się, że kompletnie nie czytasz tego co się do Ciebie pisze.
Jeżeli nie pomagają Ci takie wskazówki powinieneś napisać ogłoszenie ze zapłacisz jakieś 10-20zł i ci to ktoś myśle napisze.

Mam dobry dzień więc po raz 4 napiszę Ci to samo co wyżęj.

W przypadku kiedy użytkownik jest ZALOGOWANY i chcesz mu przesłać koniecznie na emaila token

to musisz jakoś wykryć w swoim skrypcie nick tego użytkownika np przez sesje i przypuśćmy ze masz go zapisanego w $użytkownik

a więć tworzysz sobie link:
<a href="skrypt.php?user=".$uzytkownik.">wyslij</a>

i teraz w pliku skrypt.php pobierasz sobie go np $user = $_GET['user']; i tym sposobem masz w skrypt.php zmienną $user która przechowuje przesłanego użytkownika.

jeżeli zaś użytkownik nie jest zalogowany bez formularza się nie obejdzie !

Co do twojego powyżej pytania
przypisuj sobie zmienne z $_POST czy z $_GET do zmiennej i wtedy wklejaj do funkcji mail. Pozwoli Ci to łatwiej szukać błędu i ułatwi ci wpisywanie danych do funkcji np:

  1. $tytul = $_POST['tytul'];
  2. $send = mail("norq@onet.pl", $tytul , $_POST['tresc'],"From: Wiadomość ze strony <".$_POST['email'].">");

itd.

A jeżeli chcesz robić to bez wiedzy użytkownika bez klikania i wysyłania to jedyne co możesz zrobić to:

to musisz mieć jakies dane o tym użytkowniku więc jeżezli jest zalogowany to zasada taka sama jak w przypadku linku tylko zamiast linku musisz wpisać w kod strony treść funkcji która ma się wykonać. // co powinno być oczywiste.

czyli musisz sobie dać jakiegoś if-a
  1. if(user = login) mail();


Ten post edytował Micchaleq 22.02.2012, 09:23:10
Go to the top of the page
+Quote Post
NorQ
post
Post #13





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Źle mnie zrozumiałeś,

Skrypt będzie mi służyć do przypominania hasła na serwerze gry.

W skrypcie mapy serwera (.pwn) będzie podany link, jeżeli gracz będzie chciał sobie przypomnieć hasło, mapa uruchamia link, w którym jest treść z hasłem. Następnie skrypt PHP po otrzymaniu polecenia mapy, przesyła to na zarejestrowany mail w grze.

A więc, mapa będzie sama zamieniać hasło, oraz mail w linku następnie go uruchamiając. Mapy po includowaniu nie można odczytać(kod źródłowy). A link który uruchamia mapa jest uruchamiany na serwerze a nie w własnej przeglądarce !

Więc zostały mi te dwie rzeczy:
1) Jak umieścić e-mail nadawcy w S_GET (email nadawcy w kodzie to email@email.com [nie podam własnego publicznie])
2) Jak usunąć 'submit' oraz zrobić tak że po wejściu na link skrypt sam się uruchamia.

Mój kod:
  1. <?php
  2.  
  3. if ($_POST['bt'] == "wyslij") { /* sprawdzam czy formularz został wysłany */
  4. if (($_GET['email'] != "") AND ($_GET['tytul'] != "") AND ($_GET['tresc'] != "")) { /* sprawzdam czy każde pole jest wypełnione */
  5. $send = mail("email@email.com",$_GET['tytul'],$_GET['tresc'],"From: GrandStreet;");
  6. if ($send) /* sprawdzam czy wiadomośc została wysłana */
  7. $message = "Wiadomość wysłana!";
  8. else
  9. $message = "Error, proszę ponownie...";
  10. } else
  11. $message = "Wypełnij wszystkie pola.";
  12. }
  13. ?>
  14.  
  15. <html>
  16. <body>
  17. <p><?php echo $message ?></p>
  18. <form action="" method="post">
  19. <input type="submit" name="bt" value="wyslij" />
  20. </form>
  21. </body>
  22. </html>


Proszę po prostu podać mi przykład zamiany kodu. To nie będzie skrypt na stronę, jedynie będzie wysyłać e-mail z hasłem z serwera gry.

Ten post edytował NorQ 23.02.2012, 18:42:02
Go to the top of the page
+Quote Post

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: 25.08.2025 - 16:25