Temat z wieloma odpowiedziami

formularz z dynamicznie podstawianym adresem


Autor Wiadomość
Napisane: 04.12.2008 [19:26]
m_kola
Twórca tematu
zarejestrowany: 11.10.2008
Posty: 309
Jako, że mam listę adresów punktów handlowych (tu opisywane to chciałbym móc wysłać maila z tej listy (wygląd jak w załączonym obrazku).
Zamierzam dodać tam link "Wyślij e-mail" i chcę, aby przenosił on do formularza. Oczywiście nie chcę tworzyć tylu formularzy ile jest adresów bo ta lista się zmienia dość często i jest pobierana z bazy (podobnie jak adresy email).
Czy da się np przekazać do formularza parametr (adres)? Jak to rozwiązać? Macie pomysły (oprócz własnego kodu php)?

Wiem, że to burzy wszystko czego was uczono, ale prawda i fałsz istnieją. Tylko dlatego, że nie znacie prawidłowej odpowiedzi, może nawet nie ma takiej możliwości, nie czyni waszej decyzji dobrą, ani nawet niezłą. Sprawa wygląda prościej. Jest ona po prostu zła.

.........................................................................
www.katalog.optiweb.pl - Darmowy katalog linków
Załącznik

lista.jpg (Typ pliku: image/jpeg, Rozmiar: 48.95 kilobajty) — 50 pobrania
Napisane: 05.12.2008 [15:17]
m_kola
Twórca tematu
zarejestrowany: 11.10.2008
Posty: 309
OK, obsługę formularza dopisałem sobie do tego skryptu.
Problem jest taki "okołoTYPOwy" icon_wink.gif
Chcę aby ten form był wysyłany nie z przycisku submit tylko z linka.
Mój formularz wygląda tak:
PHP
echo "<form action=\"\" id=\"form_msg".$j."\" name=\"form_msg".$j."\"  method=\"post\">
<input type=\"hidden\" name=\"step\" value=\"mail\">
</form>
<a href=\"".$_SERVER['REQUEST_URI']."\" onclick=\"document.getElementById(\"form_msg$j\").submit();\">e-mail</a>";


Problem polaga na tym, że nie zmienna step nie jest przekazywana. Próbuję ją wyświetlać ale nic z tego ;(
Jeśli zamiast tego wyślę za pomocą przycisku submit to jest wszystko OK.
Zatem problem leży w samym wysyłaniu tego formularza. Może macie jakiś pomysł w co jest nie tak? Może macie inny sposób na stworzenie linka wysyłającego formularz?
Dodam, że button z obrazkiem odpada icon_wink.gif

P.S. form_msg$j - $j to licznik bo takich formów mam kilka na stronie w pętli więc chodzi o unikalne id icon_smile.gif

Wiem, że to burzy wszystko czego was uczono, ale prawda i fałsz istnieją. Tylko dlatego, że nie znacie prawidłowej odpowiedzi, może nawet nie ma takiej możliwości, nie czyni waszej decyzji dobrą, ani nawet niezłą. Sprawa wygląda prościej. Jest ona po prostu zła.

.........................................................................
www.katalog.optiweb.pl - Darmowy katalog linków
Napisane: 05.12.2008 [15:37]
dpacholczyk
zarejestrowany: 17.09.2008
Posty: 1006
Stworzenie linka który zastąpi ci guzik znajdziesz tu -> http://www.thesitewizard.com/archive/textsubmit.shtml
icon_smile.gif

Certified Level 2 TYPO3 Night Crew Member.
Napisane: 05.12.2008 [18:38]
m_kola
Twórca tematu
zarejestrowany: 11.10.2008
Posty: 309
dpacholczyk napisał/a

Stworzenie linka który zastąpi ci guzik znajdziesz tu -> http://www.thesitewizard.com/archive/textsubmit.shtml


Dzięki, faktycznie jest ale jakoś mi to nie zadziałało więc poddałem się - będą ikony icon_biggrin.gif
Wciąż pozostaje pytanie czy mogę w jakiś sposób wywołać utworzony w TYPO3 formularz kontaktowy ale żeby podać mu adres? Chodzi o wykorzystywanie jednego formularza do wielu kontaktów.

[Ten temat był edytowany 1 razy. Ostatnio 05.12.2008 o 18:38.]

Wiem, że to burzy wszystko czego was uczono, ale prawda i fałsz istnieją. Tylko dlatego, że nie znacie prawidłowej odpowiedzi, może nawet nie ma takiej możliwości, nie czyni waszej decyzji dobrą, ani nawet niezłą. Sprawa wygląda prościej. Jest ona po prostu zła.

.........................................................................
www.katalog.optiweb.pl - Darmowy katalog linków
Napisane: 05.12.2008 [21:03]
dpacholczyk
zarejestrowany: 17.09.2008
Posty: 1006
Oczywiście, ze możesz podpiac zewnetrzny formularz. Kobstruujesz sobie pliczek i podpinasz jako biblioteke zewnetrzna i po sprawie. odrobina dobrego projektowania, kodowania i będzie wspolgral z typo ciagnac wszystko co potrzeba.
pytanie czy nie lepiej poszukac dobrego rozszerzenia bo takie podpinanie bibliotek osobiscie uwazam za ostatecccznosc.

ps. sorry za brak polskich znakow

Certified Level 2 TYPO3 Night Crew Member.
Napisane: 05.12.2008 [21:45]
m_kola
Twórca tematu
zarejestrowany: 11.10.2008
Posty: 309
Zrobiłem swój formularz wyglądający identycznie jak ten co mam wygenerowany z TYPO. Nawet weryfikację wypełnienia pól zrobiłem taką samą ale.. nie jest to TO SAMO tylko TAKIE SAMO.
Rozszerzenia szukałem, znalazłem julle_diffformmailrcp (Differentiated formmail recipients) ale to pozwala w BE dodać kilku odbiorców, nie ma żadnej dokumentacji więc jest dla mnie nieprzydatne.
Nic innego nie znalazłem. Na razie temat załatwiłem jw. ale gdyby ktoś miał jakiś pomysł to ja chętnie posłucham!

Wiem, że to burzy wszystko czego was uczono, ale prawda i fałsz istnieją. Tylko dlatego, że nie znacie prawidłowej odpowiedzi, może nawet nie ma takiej możliwości, nie czyni waszej decyzji dobrą, ani nawet niezłą. Sprawa wygląda prościej. Jest ona po prostu zła.

.........................................................................
www.katalog.optiweb.pl - Darmowy katalog linków
Napisane: 08.12.2008 [20:39]
kss
admin
zarejestrowany: 19.07.2007
Posty: 811
m_kola

mam nadzieję, że sprawdzasz, że adres email, który dostajesz w GET jest w Twojej bazie danych? icon_smile.gif

pzdr
Krystian

Certyfikowany Integrator Systemu TYPO3
http://www.cms-partner.pl
Napisane: 08.12.2008 [20:53]
m_kola
Twórca tematu
zarejestrowany: 11.10.2008
Posty: 309
kss napisał/a

mam nadzieję, że sprawdzasz, że adres email, który dostajesz w GET jest w Twojej bazie danych? icon_smile.gif

Rozwiązałem to tak:
- wchodzisz na stronę z listą biur handlowych (podzielone na województwa)
- znajdujesz interesujące Cię biuro i klikasz ikonę @
- otwiera się podstrona z formularzem, wypełniasz go i wysyłasz
- następuje weryfikacja wypełnionych danych i jeśli coś jest nie tak to oczywiście jest informacja, które z pól jest błędnie wypełnione, poniżej pojawia się formularz z wcześniej wpisanymi danymi
- jeśli jest OK to dopiero dla tego konkretnego biura wyciągany jest adres z bazy i wysyłana wiadomość
- jeśli dane biuro nie ma emaila, skype'a albo gg to na liście biur nie pojawia się ikonka danego medium icon_smile.gif

Wiem, że to burzy wszystko czego was uczono, ale prawda i fałsz istnieją. Tylko dlatego, że nie znacie prawidłowej odpowiedzi, może nawet nie ma takiej możliwości, nie czyni waszej decyzji dobrą, ani nawet niezłą. Sprawa wygląda prościej. Jest ona po prostu zła.

.........................................................................
www.katalog.optiweb.pl - Darmowy katalog linków
Napisane: 08.12.2008 [22:06]
kss
admin
zarejestrowany: 19.07.2007
Posty: 811

W takim razie rozwiązałeś to w bezpieczny sposób icon_smile.gif)

Myślę, że można by to było rozwiązać za pomocą czystego TS, ale czas na to poświęcony mógłby być nieproporcjonalny do rezultatu, który w php można uzyskać znacznie szybciej.

pzdr

Certyfikowany Integrator Systemu TYPO3
http://www.cms-partner.pl
Napisane: 09.12.2008 [19:10]
artur2000
zarejestrowany: 09.12.2008
Posty: 30
Witam wszystkich przy okazji pierwszego meldunku na tym forum.

Co do problemu to ja osobiscie uzywam do formularzy rozszerzenia "pil_mailform". Jest ono bardzo dobrze udokumentowane. Definicja pol w formularzu odbywa sie wylacznie na szablonie HTML / XML a wszelkie ustawienia w Content-Element z formularzem. Tam tez jest pole o nazwie "Multiple recipient", ktore wypelnione seria adresow powoduje zamiane odpowedniego markera w szablonie HTML na SELECT z adresami do wyboru. Taka serie adresow mozna tez podac z poziomu TS:

TYPOSCRIPT
plugin.tx_pilmailform_pi1 {
	dynamicRecipient (
		user1;user1@mail.domain.tld
		user2;user2@mail.domain.tld
	)
}


wtedy SELECT wyglada tak

HTML
<select name="tx_pilmailform_pi1[select][multi_recipient]">
<option value="1" >user1</option>
<option value="2" >user2</option>
</select>


W ten sposob nie ma w formularzu n.p. samych adresow, a rozszerzenie przy wysylaniu samo wyciaga je z TS.

Wiec musisz dynamicznie manipulowac TS-Array plugin.tx_pilmailform_pi1.dynamicRecipient tak aby wypelnic go adresami z bazy danych oraz poprzez XCLASS przeladowac metode tx_pilmailform_pi1->get_multi_recipient() tak aby opcje z jakims szczegolnym adresem opatrzyc atrybutem selected="selected". Potem mozesz ukryc sam SELECT poprzez CSS, tak aby uzytkownik nie mogl zmienic adresu na inny.

Mam nadzieje, ze bedzie to pomocne bo osobiscie kocham te rozszerzenie.

Certified Level 2 TYPO3 Night Crew Member