Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Formularz dodający posty

Założony przez  seek.

wersja skryptu MyBB: 1.6.x
adres forum: www.planeta-skilla.pl
na czym polega problem (screen, opis, komunikaty): brak dostatecznych umiejętności programistycznych

Witam,
postanowiłem na swoim forum zrobić formularz, po wypełnieniu którego na forum zostanie dodany nowy post. Wszystko ładnie działa, tylko mam problem, jak dodać załącznik. Mianowicie formularz polega na tym, że wpisujemy pewne informacje i dodajemy załącznik, następnie klikamy przycisk wyślij, tworzy się nowy post z informacjami które wprowadziliśmy + załącznik.

Niestety nie potrafię dodać załącznika. Do utworzenia nowego wątku używam funkcji createThread(). Tutaj jest link do formularza: http://www.planeta-skilla.pl/formularz.php?id=2
Matslom napisał 05.07.2013, 15:47:
Przenoszę [Obrazek: modnotice_howto.png]
Nie lepiej użyć pluginu xthread?
1. Chciałem poćwiczyć swoje umiejętności, nauczyć się czegoś nowego.
2. Nie słyszałem o takowym pluginie
http://mybbhacks.zingaburga.com/showthread.php?tid=288
@up dzięki za link, ale wolę sam pokombinować.

Okej troszkę posunąłem się do przodu, ale jeszcze jest jakiś mały błąd. Oto co wykminiłem:

require_once 'inc/functions_upload.php'; //dodajemy funkcje upload_attachment
(...)
$plik = $_FILES["plik"];
$plik['name'] = time()."-".$plik['name']; // dzieki temu, nie wyskoczy nigdy error o powtórzonej nazwie
$upload_info = upload_attachment($plik); // funkcja upload_attachment dodaje na forum załącznik

Czyli mamy już załącznik na forum, ale nie jest on przypisany do żadnego postu, a więc aktualizujemy rekord w bazie danych:

$create = $MyBBI->createThread($data); // funkcja która słuzy do utworzenia nowego tematu
$query = $db->query("
        UPDATE ".TABLE_PREFIX."attachments
        SET pid='".$create['pid']."' , uid='".$mybb->user['uid']."'
        WHERE aid='".$upload_info['aid']."'
    ");
Dzięki temu zapytaniu, dajemy autora naszemu załącznikowi oraz przydzielamy go do odpowiedniego tematu.

I tutaj pojawia się błąd: jak wejdziemy do tematu, który został utworzony przez skrypt, to nie widać tego załącznika, aczkolwiek gdy klikniemy "pełna edycja" to wygląda tak jakby załącznik został normalnie dodany. Gdy klikniemy podgląd, to normalnie się ten załącznik wyświetla. Niestety po kliknięciu "Aktualizuj post" dalej załącznika nie widać, tak jakby brakowało jakiegoś wpisu jeszcze gdzieś. Ktoś ma jakiś pomysł?

Okej już wszystko działa. Trzeba było zaktualizować ilość załączników w danym temacie:

$query = $db->query("
            UPDATE ".TABLE_PREFIX."threads
            SET attachmentcount='1'
            WHERE tid='".$create['tid']."'
        ");
$post = $db->fetch_array($query);

Problem można rzec rozwiązany. Temat do zamknięcia.
SLAVOO napisał 06.07.2013, 04:54:
Na tym forum nie zamykamy tematów.



Użytkownicy przeglądający ten wątek:

2 gości