Webboard

Pełna wersja: Podłączenie zewnętrznej bazy danych
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 1.8.3
adres forum:
na czym polega problem (screen, opis, komunikaty):

Chciałbym się zorientować w którym miejscu (dokument) mam dodać odwłonanie (połączenie) do zewnętrznej bazy danych MySQL oraz później w którym dokumencie mogę wstawiać zapytania MySQL.

Muszę z zewnetrznej bazy danych wyciągnąć informacje do szablonu profilu.

Dzięki za pomoc!
jesli chcesz korzystac z bazy mybb i tej drugiej to musisz napisac plugin
zaczepic sie w pgrofilu i polaczyc z nowa baza
A po co plugin? Chodzi tylko o to gdzie wstawic skrypt polaczenia z baza - do jakiego dokumentu, a dwa jaki dokument pozwala na wykonywania zapytan sql?
EnjoyDM napisał(a):A po co plugin? Chodzi tylko o to gdzie wstawic skrypt polaczenia z baza - do jakiego dokumentu, a dwa jaki dokument pozwala na wykonywania zapytan sql?

Mam wrażenie że sam nie wiesz o co pytasz
w każdym pliku .php możesz wykonać zapytane

Po to plugin bo po to mamy system hookow w mybb
Hmm... może tak, chciałbym wyciągnąć informacje z zewnętrznej bazy danych do szablonu posta, jednak w szablonach nie da rady stosować php w którym wykonujemy zapytanie sql. Dlatego zastanawiam się do jakiego dokumentu mam dodać informacje o połączeniu z bazą oraz w jakim dokumencie powinienem dodać zapytanie sql aby móc w nim wykorzystać zmienną "nazwa użytkownika posta".

Dzięki za pomoc :)
powtorze
najoptymalniej napisac plugin
Czarna magia :)

Założenie jest banalne: wyświetlać dane pod awatarem przy każdym poście z zewnętrznej bazy danych
- identyfikatorem (kluczem) po którym dane będą wyświetlane będzie nazwa użytkownika autora posta (zmienna w kodzie szablonu to {$post['username']} )

Czy ktoś bystry jest mi w stanie pomóc? W kodzie PHP ładnie napisałem sobie standardowy kod sql połączenia do bazy i zapytanie ale niestety takiego kodu nie mogę zamieścić w kodzie szablonu :(

http://docs.mybb.com/1.8/development/plu...e-methods/#$db->select_db
Cuś takiego znalazłem ale nic z tego nie kumam...
w czym dokladnie tkwi problem, skoro zrobiles sam zapytanie to jakieś tam pojecie masz
zobacz w innych kodach na czym polega pisanie pluginow
jesli juz wyskrobiesz jakis kod napisz, podpowiem
Znalazłem plugin pozwalający używać kod PHP w szablonach co mogłoby rozwiązać mój problem ale poza tym że na szybko przetestowałem że działa na funkcji 'echo' to nie mogę już podpiąć bazy danych. W momencie wrzucenia kodu do połączenia z bazą otrzymuję komunikat:

Fatal error: Call to a member function unescape_binary() on a non-object in ***/inc/functions_post.php on line 666

Natomiast wiesz 666 w pliku functions_post.php u mnie to:
$ipaddress = my_inet_ntop($db->unescape_binary($post['ipaddress']));

Znalazłem gdzieś już na forum fragment kodu połączenia z bazą który ładnie działa.
Teraz mam problem z zapytaniem które muszę przerobić bo te które zawsze pisałem w php wykrzaczają się a poniższe przykładowe (również z forum) jest OK. Pomoże mi ktoś to przerobić?

Kod PHP:
$query mysql_query("SELECT * FROM Tabela");
        if(
$query)
        {
            
$num mysql_numrows($query);
            
$i 0;
            
$id;
            
$reason;
            
            while (
$i $num)
            {
                
$uid mysql_result($query$i"JakiesID");
                
$query2 mysql_query("SELECT Cos FROM InnaTabela WHERE id=$uid LIMIT 1");
                
$nick mysql_result($query20"Cos");
                
$id mysql_result($query$i"id");
                
$reason mysql_result($query$i"CosInnego");
                echo 
"$nick";
                
$i++;
            }
        } 
        else 
        {
            echo 
"Nie można wykonać zapytania!";
        } 

Muszę generalnie wyciągnąć z tabeli "test" z którą jestem podłączony informacje z kolumny "tt1" i "tt2" dla usera którego nazwa jest zgodna z nazwą użytkownika posta z którego wywoływane jest to zapytanie. Zapytanie tylko dla 1 usera.

OK. Kolejne postępy. Mogę już wyciągać dane ale nie wiem jak dopisać warunek if aby w przypadku braku danej w bazie nie wyrzucał forum a zwracał "".

Kod PHP:
$ludek $post['username'];

$query mysql_query("SELECT * FROM tabelka WHERE nickname=$ludek");
$dzieci mysql_result($query0"jakastamkolumna"); 
Zobacz tak
Kod PHP:
if($query){
//są dane
else {
//brak