|
|
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo
|
|
Przesunięty przez: joli 26-09-2007, 08:04 |
SQL tabele |
Autor |
Wiadomość |
scorpi23
Posty: 27
|
Wysłany: 21-02-2006, 16:17 SQL tabele
|
|
|
moze mi ktos powiedziec do jakich tabel zapisywane są informacje o nowym temacie ???
chce sobie stworzyc taki skrypt do dodawania newsow w portalu i autmatycznie zeby mi tworzylo temat na forum o takiej samej nazwie jak nazwa artykułu
tematy na forum bylyby tworzone w tylko w jednym dziale forum np. "Komentarze do artykułów" |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
Radek
Pomógł: 955 razy Posty: 4614
|
Wysłany: 21-02-2006, 16:20
|
|
|
phpbb_topics
topic_id ustawia sie samoczynnie |
|
|
|
|
scorpi23
Posty: 27
|
Wysłany: 21-02-2006, 17:10
|
|
|
a tabele
phpbb_posts
phpbb_posts_text
tam chyba tez musi byc zapisywany pierwszy post w temacie |
|
|
|
|
Radek
Pomógł: 955 razy Posty: 4614
|
Wysłany: 21-02-2006, 17:12
|
|
|
w topics masz id pierwszego postu w temacie, potem w posts masz dokladne info o poscie, potem w phpbb_posts_text masz text postu i id przypisane do tabeli phpbb_posts |
|
|
|
|
scorpi23
Posty: 27
|
Wysłany: 21-02-2006, 18:32
|
|
|
tak zgadza, juz sobie poradzilem
moze komus sie to przyda :
Kod: | $result=mysql_query("SELECT max(topic_id) FROM phpbb_topics")
or die ('Error: ' . mysql_error());
while ($query_data = mysql_fetch_row($result))
{
$id_tematu=$query_data[0]+1;
}
$result=mysql_query("SELECT max(post_id) FROM phpbb_posts")
or die ('Error: ' . mysql_error());
while ($query_data = mysql_fetch_row($result))
{
$id_postu=$query_data[0]+1;
}
//echo $id_tematu.'<br>'.$id_postu;
$result=mysql_query("INSERT INTO `phpbb_topics` VALUES ($id_tematu, 3, '$nazwa_artykulu', 2, 1140538818, 2, 0, 0, 0, 0, $id_postu, $id_postu, 0, 0, 0, 0, '', 'Skomentuj artykul', 0, 0, 0, 0)")
or die ('Error: ' . mysql_error());
$result=mysql_query("INSERT INTO `phpbb_posts` VALUES ($id_postu, $id_tematu, 3, 2, 1140538818, '530be7d3', '', 1, 0, 1, 0, 0, 0, 0, 'a:3:{i:0;s:47:\"icon_windows_xp_2003.gif\" width=\"20\" height=\"18\";i:1;s:39:\"icon_firefox.gif\" width=\"18\" height=\"18\";i:2;s:87:\"Mozilla/5.0 (Windows; U; Windows NT 5.1; pl-PL; rv:1.7.12) Gecko/20050919 Firefox/1.0.7\";}', 0, 0, 0, NULL, 1, 0, 0, 0, 1)")
or die ('Error: ' . mysql_error());
$result=mysql_query("INSERT INTO `phpbb_posts_text` VALUES ($id_postu, '3d0b81c176', '$nazwa_artykulu', 'Zapraszamy do dodawania własnych komentarzy\r\n\r\n [img]http://www.adres....//$id.jpg[/img]')")
or die ('Error: ' . mysql_error()); |
tylko mam jescze problem z wklejeniem obrazka bo jak daje tak jak wyzej to zamiast obrazka pokazuje mi sie BBCODE poprawny czyli [ING]http://adres/1.jpg[ING] (oczywiscie ma byc [IMG]
dopiero jak juz z poziomu forum dam edycje tematu i potwierdze zmiane to wtedy obrazek sie dobrze pokazuje |
|
|
|
|
Radek
Pomógł: 955 razy Posty: 4614
|
Wysłany: 21-02-2006, 19:42
|
|
|
scorpi23 napisał/a: | Kod: | $result=mysql_query("SELECT max(topic_id) FROM phpbb_topics")
or die ('Error: ' . mysql_error());
while ($query_data = mysql_fetch_row($result))
{
$id_tematu=$query_data[0]+1;
} | |
zupelnie zbedne, topic_id jest polem auto_increment (samo ustala id)
scorpi23 napisał/a: | Kod: | $result=mysql_query("SELECT max(post_id) FROM phpbb_posts")
or die ('Error: ' . mysql_error());
while ($query_data = mysql_fetch_row($result))
{
$id_postu=$query_data[0]+1;
} | |
tez zbedne - post_id tez jest auto_increment
scorpi23 napisał/a: | Kod: | INSERT INTO `phpbb_topics` VALUES ($id_tematu, |
|
zamiest tego dajesz
scorpi23 napisał/a: | Kod: | INSERT INTO `phpbb_posts` VALUES ($id_postu, $id_tematu, |
|
zamiast tego dajemy:
Kod: |
$id_tematu = mysql_insert_id();
INSERT INTO `phpbb_posts` VALUES (NULL, $id_tematu
|
analogicznie do posts_text zastosuj mysql_insert_id
[ Dodano: 21-02-2006, 19:44 ]
poza tym, jezeli to jest phpbb uzywamy gotowej klasy $db |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
scorpi23
Posty: 27
|
Wysłany: 27-02-2006, 23:29
|
|
|
ok, dzieki
a mam jeszcze jeden problem a mianowicie chce sobie zrobic takie zapytanie aby zwrocilo mi temat topicu a pod nim wszystkie posty do niego przynależne, na samym koncu linia oddzielajaca i kolejny temat
takie cos sobie napisalem ale to nie dziala bo zwraca za duzo danych, bo do kazdego postu dodaje topic
Kod: | $result=mysql_query("SELECT a.topic_id, a.topic_title, b.topic_id , b.post_id, c.post_id, c.post_text FROM phpbb_topics a, phpbb_posts b, phpbb_posts_text c WHERE a.topic_id = b.topic_id AND b.post_id = c.post_id ORDER BY a.topic_id" )
or die ('Error: ' . mysql_error())
while ($query_data = mysql_fetch_row($result))
{
echo $query_data[1].$query_data[6].'<br><hr>';
}
; |
jakby ktos nie zrozumial to chcialbym cos takiego otrzymac
TOPIC 1
post 1
post 2
----------
TOPIC 2
post 3
post 4
---------
a teraz otrzymuje
TOPIC 1 post 1
---------------
TOPIC 1 post 2
-----------------
TOPIC 2 post 3
itd. |
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!
Powered by phpBB modified by Przemo © 2003 phpBB
| Strona wygenerowana w 0,07 sekundy. Zapytań do SQL: 12 | |
|
|