hi,
die join using() habe ich wg. Deinem Hinweis geändert, statt
-- bisher
join revision on page.page_id = revision.rev_page
join text on text.old_id = revision.rev_text_id
-- nun
join revision on revision.rev_id = page.page_latest
join text on text.old_id = revision.rev_text_id
ist da wohl korrekter, obwohl möglicherweise dasselbe dabei rauskommt. Aber so richtig steige ich noch nicht durchs DB Design, insbesondere was die Kategorien (table category) einschl. deren ref. Integrität betrifft.
In Fakt sind die Inhalte mit dem title like "%.html" komplette Beispiele von <doctype> bis </html>. Mein Ziel ist eine BinärDatei die mit JS lesbar ist. Das Problem ist also nicht
dass aus Seitentiteln wie beispielweise "HTML/Tutorials" oder "Kategorie:HTML" irgendwie ein Dateiname erstellt werden muss
sondern wie ich Kategorie-Seiten und #Weiterleitungsseiten beim Extrahieren des Content rausfiltern kann. Die BinDatei wird eine EAV-Datenstruktur beiinhalten mit den Seitentiteln als Entity. So wie im Wiki gut zusehen ist, liegen ja die Titel der Verlinkung zugrunde und nicht etwa die page_id.
{
'cat_files' => 0,
'cat_id' => 9065,
'cat_pages' => 10,
'cat_subcats' => 0,
'cat_title' => 'Zeichenkodierung'
},
ist ein Stück aus der category-table. Im Online Wiki nachvollziehbar ist, daß es 10 Seiten zu dieser Kategorie gibt. Also muss die cat_id irgendwie in den anderen Tabellen referenziert sein, fragt sich nur in welcher. Wenn Du ne Idee hierzu hast, lass es mich bitte wissen. Ich vermute eine Verbindung über page_namespace (und ggf. eine weitere Tabelle) aber für Heute reichts 😉
Schöne Grüße!
PS: Geht doch 😉