Tworzenie tematu/postu spoza phpbb

Forum przeznaczone na rozmowy między autorami modyfikacji i inne pytania związane z poważniejszą ingerencją w kod phpBB 3.0.x.
Heniek

Tworzenie tematu/postu spoza phpbb

Post autor: Heniek » 14 września 2011, 14:38

Chciałbym nauczyć się jak dodawać nowe posty (tworząc przy tym temat) spoza phpbb. Oczywiści wykorzystując istniejące w tym systemie funkcje. Z zewnątrz podawałbym id użytkownika zarejestrowanego na forum (zakładamy, że może tworzyć nowe tematy/posty w wybranym dziale), id forum, tytuł i treść posta.

Mógłby ktoś wskazać pomocne materiały?

jaroslw
Zasłużony
Posty: 4524
Rejestracja: 10 grudnia 2005, 18:48
Kontakt:

Re: Tworzenie tematu/postu spoza phpbb

Post autor: jaroslw » 14 września 2011, 16:05

Przydatna będzie funkcja submit post() z pliku includes/functions_posting.php.
Pobierz styl: we_universalwe_clearblue
Nowości i aktualizacje: FacebookGoogle+Twitter

Heneik

Re: Tworzenie tematu/postu spoza phpbb

Post autor: Heneik » 14 września 2011, 18:43

Czy po prostu trzeba ją wywołać?

Kod: Zaznacz cały

function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $update_message = true, $update_search_index = true)
Rozumiem, że:

Kod: Zaznacz cały

$mode = "post";
$subject = "Tytuł tematu";
$username - wiadomo
a pozostałe zmienne co reprezentują?

Heneik

Re: Tworzenie tematu/postu spoza phpbb

Post autor: Heneik » 14 września 2011, 18:59

W którym pliku jest funkcja:

Kod: Zaznacz cały

generate_text_for_storage()

Heniek

Re: Tworzenie tematu/postu spoza phpbb

Post autor: Heniek » 14 września 2011, 19:48

Wszystkie problemy powyższe już rozwiązałem. Wyczytałem, że aby utworzyć post w już istniejącym temacie wystarczy w tablicy $data ustawić wartość pola topic_id na wartość reprezentowaną przez jakiś temat. Niestety chyba to za mało, ponieważ tworzy mi się nowy temat. Jak z tym sobie poradzić?

jaroslw
Zasłużony
Posty: 4524
Rejestracja: 10 grudnia 2005, 18:48
Kontakt:

Re: Tworzenie tematu/postu spoza phpbb

Post autor: jaroslw » 14 września 2011, 20:21

Wymagane jest chyba pełne uzupełnienie tablicy $data. Funkcja przykładowo powinna zostać wywołana tak:

Kod: Zaznacz cały

// Pusta, jeśli brak ankiety
$poll = array();

// Tablica ze szczegółowymi danymi postu
$data = array();

$post = submit_post('reply', 'Nazwa tematu', 'Nazwa użytkownika', POST_NORMAL, $poll, $data); 
Co do funkcji generate_text_for_storage(), wpisz jej nazwę w wyszukiwarkę na wiki.phpbb.com, a dostaniesz kilka artykułów na temat przetwarzania tekstu.
Pobierz styl: we_universalwe_clearblue
Nowości i aktualizacje: FacebookGoogle+Twitter

Heniek

Re: Tworzenie tematu/postu spoza phpbb

Post autor: Heniek » 20 września 2011, 19:10

Napisałem funkcję, ale mam taki problem, że ciągle jako autor postu/tematu jest podawany admin (user o id =2) A sprawdzałem kilka razy, jako autora tematu podawałem kogo innego.

Heniek

Re: Tworzenie tematu/postu spoza phpbb

Post autor: Heniek » 20 września 2011, 19:29

Chodzi mi o to, że jeden użytkownik podaje jakieś informacje, drugi je potwierdza i wtedy pojawiają się dwa posty. Czy da się stworzyć jednocześnie dwa posty, żeby kto inny był ich autorem. Czyli, żeby podać jakoś funkcji submit_post id uzytkownika który ma być autorem postu.

Awatar użytkownika
daroPL
Zasłużony
Posty: 4564
Rejestracja: 24 czerwca 2005, 13:36
Lokalizacja: Poznań
Kontakt:

Re: Tworzenie tematu/postu spoza phpbb

Post autor: daroPL » 21 września 2011, 10:33

Heniek, funkcja submit_post() za autora postu bierzę, tego którego dotyczy aktywna sesja. Pozostaje Ci przerobić funkcję samodzielnie, tak aby było można przekazywać także identyfikator użytkownika.

Zablokowany

Wróć do „Dla deweloperów”