Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Formularz i zagnieżdżanie, bez programu pocztowego wysyłanie maili ze strony i zagnieżdżenie skry
Less
post 4.06.2007, 22:21:54
Post #1





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Cześć!

Mam problem,

1.

mam stronę w html i formularz.
Chciałbym, aby przy wysyłaniu takiego formularza, nie otwierał się program pocztowy (może być problem w kawiarenkach ), ale aby treść formularza była przesyłana bezpośrednio na adres mailowy ze strony.

Słyszałem, że można to zrobić w PHP. Jak? Napisać jakiś skrypt odbierający, jaki ? Ustawić jakoś nagłówki, jak ?


2.

Dodatkowy problem: jak zagnieździć taki skrypt PHP w stronie html...?


Proszę o pomoc i uwagi i bardzo dziękuje.
Less


--------------------
Less
:)
Go to the top of the page
+Quote Post
nexis
post 4.06.2007, 22:38:15
Post #2





Grupa: Zarejestrowani
Postów: 1 012
Pomógł: 109
Dołączył: 26.09.2003
Skąd: nexis.pl

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


Zapoznaj się z funkcją mail" title="Zobacz w manualu PHP" target="_manual lub biblioteką PHPMailer.


--------------------
Zend Certified Engineer

Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
Go to the top of the page
+Quote Post
Less
post 5.06.2007, 17:20:58
Post #3





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Oto prosty kod wpisany na stronie index.php
o poniższej treści,

nie wysyła maili, które wpadałyby do wybranej skrzynki !


Dlaczego ? Ktoś wie ?

  1. <?$mailTo = "adresat@gdzies.pl";$mailSubject = "Test";$mailBody = "Bla, bla, bla...";$mailHeaders = "From: nadawca@gdzies.pl";mail($mailTo, $mailSubject, $mailBody, $mailHeaders);?>


Pozdr worriedsmiley.gif
Less


--------------------
Less
:)
Go to the top of the page
+Quote Post
barat
post 5.06.2007, 17:34:04
Post #4





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 19.05.2007

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


a wywala jakiś błąd ? może funkcja mail() jest zablokowana ?

Poczytaj o PHPMailer - dużo wygodniejszy i ciekawszy sposób wysyłania maili ze strony WWW smile.gif
Go to the top of the page
+Quote Post
Less
post 6.06.2007, 12:22:42
Post #5





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Dzięki...

Nie, nie wywala błedu... ale moze być zablokowane... Jak instalować te biblioteki na czyimś serwerze ?

:roll2:
Less

Poszedłaem dalej w testowaniu funkcji mail... ale nie wychodzi...

Sytuacja: Dwa serwery, oba obsługuja PHP, na jednym mam formularz, który przesyłany jest do drugiego, gdzie odbiera go skrypt:

  1. <?
  2. $mailTo = "ktos@gdzies.pl";
  3. $mailSubject = $_POST['Temat'];
  4. $mailBody = $_POST['Uwagi'];
  5. $mailHeaders = "From: ".$_POST['Email']."rn";
  6.  
  7. @mail($mailTo, $mailSubject, $mailBody, $mailHeaders);
  8. ?>


Niestety wywala się już od razu na drugiej linii, bład:

"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/webicon1/public_html/zewnetrznapoczta/versuspost.php on line 2"


O co chodzi ? Któryś serwer to blokuje ?

Proszę o pomoc
Less sad.gif


--------------------
Less
:)
Go to the top of the page
+Quote Post
Darti
post 6.06.2007, 12:39:00
Post #6





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


Może zamień na początku <? na <?php bo niekiedy konfiguracja php nie kuma samego <?

Edit:
no właśnie: Wyskakiwanie z html'a

Ten post edytował Darti 6.06.2007, 12:41:17


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Less
post 6.06.2007, 13:13:14
Post #7





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Niestety nic nie pomogło... dopisanie <?php ... ?>

W formularzu był znacznik: enctype - ale usunięcie go, też nic nie dało...



Less
worriedsmiley.gif


--------------------
Less
:)
Go to the top of the page
+Quote Post
Darti
post 6.06.2007, 13:20:41
Post #8





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


To pokaż/wklej tutaj kilka pierwszych linii pliku versuspost.php bo nie coś wierze że to co pokazujesz jest tym plikiem


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Less
post 6.06.2007, 13:28:54
Post #9





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Formularz w uproszczonej wersji, wygląda tak:

  1. <form action="http://www.gdzies.pl/zewnetrznapoczta/post.php" method="post">
  2. <legend><strong>Skorzystaj z poniższego formularza, aby przesłać wiadomość</strong></legend>
  3. <p><strong>Imię</strong>: <input type="text" name="Imie" value="Jan" size="30" maxlength="40" style="jakiestam"></p>
  4. <p><strong>Nazwisko</strong>: <input type="text" name="Nazwisko" value="Kowalski" size="30" maxlength="40" ></p>
  5. <p><strong>Adres e-mail</strong>: <input type="text" name="Email" value="e-mail" size="30" maxlength="40" ></p>
  6. <p><strong>Temat wiadomości</strong>: <input type="text" name="Temat" value="Temat wiadomości" size="30" maxlength="40" > </p>
  7. <p><strong>Wpisz swoją wiadomość:</strong></p>
  8. <p><textarea name="Uwagi" rows="8" cols="45" >
  9. tutaj jest miejsce na twoją wiadomość (do 1024 znaków)
  10. </textarea></p>
  11. <input name="Submit" type="submit" value="Wyślij wiadomość">
  12. <input name="Reset" type="reset" value="Usuń informacje">
  13. </form>



Less
tiredsmiley.gif

Tak to wygląda: (teraz)


  1. <?php
  2.  
  3. //komentarz
  4. $mailTo = "ktos@gdzies.pl";
  5. $mailSubject = $_POST['Temat'];
  6. $mailBody = $_POST['Uwagi'];
  7. $mailHeaders = "From: ".$_POST['Email']."rn";
  8.  
  9. @mail($mailTo, $mailSubject, $mailBody, $mailHeaders);
  10. //komentarz
  11. ?>


withstupidsmiley.gif Less

Versuspost.php = post.php

Ściśle mówiąc, wywala się na 4 linii...

Słyszałem... że to może mieć coś wspólnego z ochroną przed spamami... jakaś blokada... na serwerze...


questionmark.gif?
Less


--------------------
Less
:)
Go to the top of the page
+Quote Post
Darti
post 6.06.2007, 13:35:08
Post #10





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


To coś powyżej jest OK (przynajmniej w miejscu, gdzie błąd powstaje), możesz ewentualnie zmienić na pojedyncze cudzysłowy ($mailTo = 'ktos@gdzies.pl'; ) ale to raczej nic nie zmieni. Czy przed wklejeniem na forum kodu z pliku, który generuje błąd, zmieniasz coś ? kasujesz, edytujesz ?


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Less
post 6.06.2007, 15:46:51
Post #11





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Nie rozumiem? Stale robię podmianki, aby wykryć, gdzie tkwi bład...


******************************************************

Na zakończenie:

Administrator serwera przepisał wszystko litera w literę i zadziałało... Coś nie tak z kodowaniem pliku... prawdopodobnie...

Dzięki wszystkim za pomoc...

P.S. ...a swoją drogą, ciekawy problem... sprawdzę dlaczego tym razem wystąpił...



Less
aarambo.gif



*******************************************************

Jeszcze ostatnie... było kodowane w ANSI... powinno być w Unicode, czy UTF-8 ? Podobno to nie ma znaczenia...

Less
cool.gif

Ten post edytował Less 6.06.2007, 16:02:17


--------------------
Less
:)
Go to the top of the page
+Quote Post
LonelyKnight
post 6.06.2007, 16:11:28
Post #12





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

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


Nic w tym ciekawego. Po prostu pewnie miałeś jakieś znaki, których nie wiedziałeś w, jak zakładam, notatniku...

Co do kodowania - radzę UTF-8.


--------------------
Good programming is 99% sweat and 1% coffee.
Make it idiot proof and someone will make a better idiot...
Go to the top of the page
+Quote Post
Less
post 8.06.2007, 11:48:51
Post #13





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


A tak przy okazji... jak zrobić, aby przy wysyłaniu tego formularza otwierało się nowe okno z informacją i nie zamykało okno strony formularza ?


i drugie ewentualnie: aby wpisy w formularzu się kasowały (a więc uruchamiał się jakiś skrypt jednocześnie z łączeniem) ?



Less
smile.gif

*********************************************
A propos pktu 1. czy trzeba formularz zrobić na dodatkowo otwieranym oknie (np przez JS) ? Czy mozna inaczej...


i dodatkowo: jak zrobić, aby po wysłaniu, oglądający automatycznie wrócił do poprzedniej strony...


i jeszcze, jak zrobić, aby np mail nadającego... wpisany w formularzu, pojawił się w wiadomości w wierszu: od (tak jak w zwykłym wysyłanym mailu) questionmark.gifquestionmark.gif




Please... o info, gdzie to znajdę
Dzięki
Less
ohmy.gif

Proszę o pomoc... tak jak pisałem wyżej...


Dzięki
Less

Ten post edytował Less 8.06.2007, 11:40:30


--------------------
Less
:)
Go to the top of the page
+Quote Post
Darti
post 8.06.2007, 12:43:11
Post #14





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


To może zamiast przesyłać dane z formularza do pliku post.php ustaw action tak: action="" a przed formularzem sprawdź czy $_POST['Submit']=='Wyślij wiadomość' i jeśli tak to zrób include('post.php').
Dzięki temu możesz zachować wartości formularza stosując takie coś:
  1. <input type="text" name="Nazwisko" value="<?php echo $_POST['Nazwisko']; ?>" size="30" maxlength="40" >


A co do wartości od: to dla windowsowych klientów trzeba jeszcze ustawić nagłówek Reply-To:

Ten post edytował Darti 8.06.2007, 12:44:36


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Less
post 8.06.2007, 13:00:17
Post #15





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


Wydaje mi się, że kod html wpisany przez Ciebie... się nie wpisał...


Less
smile.gif


--------------------
Less
:)
Go to the top of the page
+Quote Post
Darti
post 8.06.2007, 13:11:57
Post #16





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


Cytat(Less @ 8.06.2007, 12:00:17 ) *
Wydaje mi się, że kod html wpisany przez Ciebie... się nie wpisał...
Less
smile.gif


ja wpisałem tylko jedną linijkę kodu html (z zagnieżdżonym kawałkiem PHP). No przecież nie będę za Ciebie aplikacji pisał bo za to oczekiwałbym zapłaty tongue.gif


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Less
post 8.06.2007, 16:11:50
Post #17





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

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


No dobra... jeśli to tak miało być... to i tak dzięki za nakierowanie...

Less



A swoją drogą... chętnie się odwdzięczę...


Less guitar.gif



Wielkie dzięki Darti za propozycję... ile by to kosztowało? ale właściwie... to niewielka rzecz i już to prawie zrobiłem... a poza tym to mój "niekomercyjny" projekt...


Less

Ten post edytował Less 8.06.2007, 16:12:49


--------------------
Less
:)
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 29.06.2025 - 06:50