25.08.2015, 09:37
25.08.2015, 10:44
So, im erneuten Anlauf, habe ich es doch geschafft, damit das alles korrekt angezeigt wird und ohne dass die Charakternamen zu Doppellungen führen
Damit wird der Text in der Beschreibung nur als Monat identifiziert, wenn es so aussieht: ". Monat"
Bei mir im Testforum hat's jedenfalls geklappt, dass das Thema mit der Beschreibung "15. Januar 2016 | mit Julia, Maia und April" wirklich nur im Januar 2016 angezeigt wird
Code:
AND t.description LIKE '%. $monthName%'
Damit wird der Text in der Beschreibung nur als Monat identifiziert, wenn es so aussieht: ". Monat"
Bei mir im Testforum hat's jedenfalls geklappt, dass das Thema mit der Beschreibung "15. Januar 2016 | mit Julia, Maia und April" wirklich nur im Januar 2016 angezeigt wird
25.08.2015, 12:33
Gerade eingebaut und getestet: Bei mir funktioniert es auch einwandfrei. Damit zum mindestens dritten Mal danke
26.08.2015, 19:40
Ok, ich hab noch eine Sache, die ich gerne angezeigt hätte und das ist die Option, ob der Thread als erledigt markiert wurde oder nicht. Ich hab es bisher so versucht:
Diese Zeile:
habe ich um ein t.threadsolved ergänzt.
In die while-Schleife habe ich nach
folgendes eingefügt:
Mit der Zeile wird ja auch im Plugin gearbeitet.
Leider hab ich mal wieder irgendwo einen Fehler drinnen, denn mir wird trotz vorhandener {$threadsolved}-Variable kein Haken angezeigt, obwohl ich sicher bin, dass es als erledigt markierte Szenen gibt und da entsprechend auch in der Datenbank eine 1 vermerkt ist.
Findet irgendjemand den Fehler und weiß, was ich anders machen muss?
Diese Zeile:
Code:
SELECT t.subject, t.description, t.tid, p.username, p.uid, p.pid, p.dateline
In die while-Schleife habe ich nach
Code:
$szenen_desc = "<br /><span class=\"tdesc\">{$row['description']}</span>";
Code:
if($thread['threadsolved'] == "1") {
$threadsolved = "<img src=\"images/solved.png\" border=\"0\" alt=\"\" style=\"vertical-align: middle;\" />";
}
Leider hab ich mal wieder irgendwo einen Fehler drinnen, denn mir wird trotz vorhandener {$threadsolved}-Variable kein Haken angezeigt, obwohl ich sicher bin, dass es als erledigt markierte Szenen gibt und da entsprechend auch in der Datenbank eine 1 vermerkt ist.
Findet irgendjemand den Fehler und weiß, was ich anders machen muss?
27.08.2015, 08:36
Es muss so lauten:
Unterschied: $thread['threadsolved'] --> $row['threadsolved']
PHP-Code:
if($row['threadsolved'] == "1") {
$threadsolved = "<img src=\"images/solved.png\" border=\"0\" alt=\"\" style=\"vertical-align: middle;\" /> ";
}
Unterschied: $thread['threadsolved'] --> $row['threadsolved']
27.08.2015, 10:00
Ich wusste, ich hab gestern was vergessen zu schreiben xD Das hab ich bereits ausprobiert, weil die anderen ja auch so angegeben sind, allerdings hab ich dann das Phänomen, dass alle meine Szenen als erledigt gekennzeichnet werden und nicht nur die, die es auch sind.
Aber ich hab gerade noch einmal rumprobiert und festgestellt, dass es einfach eine Zeile zu wenig war, die ich kopiert hatte
Der komplette Code muss lauten:
Aber ich hab gerade noch einmal rumprobiert und festgestellt, dass es einfach eine Zeile zu wenig war, die ich kopiert hatte
Der komplette Code muss lauten:
Code:
$threadsolved = $threadsolved_button = "";
if($row['threadsolved'] == "1") {
$threadsolved = "<img src=\"images/solved.png\" border=\"0\" alt=\"\" style=\"vertical-align: middle;\" /> ";
}
27.08.2015, 10:23
Danke für die Ergänzung
27.08.2015, 14:16
Und jetzt ich ;D
Ich habe es eingebaut wie hier im Startpost. Allerdings habe ich in meinem Forum keine Themenbeschreibungen, sondern per xthreads drei Fehler erstellt, nämlich "Mitspieler", "Datum" und "Tageszeit". Diese frage ich durch mybb_threadfields_data.feldname ab. Wenn ich es so mache wie in Post #1, das heißt ich packe die Foren-IDs in ein Array, funktioniert alles. Möchte ich allerdings doch lieber, dass direkt in der Abfrage geprüft wird, in welchem Unterforum das Thema steckt, geht es schief (es erfolgt keine Ausgabe) - wieso? Eine Fehlermeldung bekomme ich nicht, die ID 17 stimmt ebenfalls.
Ich bin mir fast sicher, einfach nur einen sehr dämlichen denkfehler gemacht zu haben.. hmm. Nur ich finde ihn nicht.
Ich habe es eingebaut wie hier im Startpost. Allerdings habe ich in meinem Forum keine Themenbeschreibungen, sondern per xthreads drei Fehler erstellt, nämlich "Mitspieler", "Datum" und "Tageszeit". Diese frage ich durch mybb_threadfields_data.feldname ab. Wenn ich es so mache wie in Post #1, das heißt ich packe die Foren-IDs in ein Array, funktioniert alles. Möchte ich allerdings doch lieber, dass direkt in der Abfrage geprüft wird, in welchem Unterforum das Thema steckt, geht es schief (es erfolgt keine Ausgabe) - wieso? Eine Fehlermeldung bekomme ich nicht, die ID 17 stimmt ebenfalls.
PHP-Code:
$monthOpen = array(
'Oktober' => 'Okt',
'November' => 'Nov',
'Dezember' => 'Dez',
);
foreach( $monthOpen as $monthName ) {
$query = "SELECT mybb_threads.subject, mybb_threads.tid, mybb_posts.username, mybb_posts.uid, mybb_threadfields_data.mitspieler, mybb_threadfields_data.datum, mybb_threadfields_data.tageszeit
FROM mybb_threads
INNER JOIN mybb_forums ON mybb_threads.fid = mybb_forums.fid AND mybb_forums.parentlist LIKE '17,%'
INNER JOIN mybb_posts ON mybb_threads.tid = mybb_posts.tid
INNER JOIN mybb_threadfields_data ON mybb_threads.tid = mybb_threadfields_data.tid
WHERE (mybb_posts.uid='".$memprofile['uid']."') AND mybb_threadfields_data.datum LIKE '%$monthName%'
GROUP BY mybb_threads.subject, mybb_posts.username";
$profilGrabbler=$db->query($query);
while( $result=$db->fetch_array($profilGrabbler) ) {
$threadtitelProfil = $result['subject'];
$threadidProfil = $result['tid'];
$mitspieler = $result['mitspieler'];
$datum = $result['datum'];
$tageszeit = $result['tageszeit'];
eval("\$profil_ausgabe_$monthName.= \"".$templates->get("profil_ausgabe")."\";");
}
}
Ich bin mir fast sicher, einfach nur einen sehr dämlichen denkfehler gemacht zu haben.. hmm. Nur ich finde ihn nicht.
27.08.2015, 16:44
Ich hab's auch mit xThreads-Feldern gemacht und so sieht die Abfrage aus:
PHP-Code:
$query = $db->query("
SELECT d.efday, d.efmonth, d.efyear, d.eftime, d.efchara, t.subject, t.tid, t.threadsolved, p.username, p.uid, p.pid, p.dateline
FROM ".TABLE_PREFIX."threadfields_data d
INNER JOIN ".TABLE_PREFIX."threads t ON t.tid=d.tid
INNER JOIN ".TABLE_PREFIX."forums f ON t.fid=f.fid AND f.parentlist LIKE '1%'
INNER JOIN ".TABLE_PREFIX."posts p ON t.tid=p.tid
WHERE (p.uid='".$memprofile['uid']."') AND d.efmonth = '$monthName'
GROUP BY t.subject, p.username
ORDER BY d.efday ASC, p.dateline DESC
");
27.08.2015, 17:40
Hmpf >_> ich habe nun einfach meinen gesamten Code mit deiner Lösung aus #16 ersetzt und die Abfrage von deinem letzten Post reingepackt und angepasst.
Das Ergebnis: Nichts, denn es passiert nichts. *seufz* Templates sind alle erstellt, Variablen eingefügt.. wie gesagt, die parent-ID ist DEFINITIV 17, Themen mit dem entsprechenden Datum sind vorhanden und die Felder heißen auch so - mit der Abfrage aus Post #1 hat es ja geklappt .. >_<
PHP-Code:
// START Szenen
$monthOpen = array(
'Oktober' => 'Okt',
'November' => 'Nov',
'Dezember' => 'Dez',
);
foreach($monthOpen as $monthName) {
$query = $db->query("
SELECT d.datum, d.tageszeit, d.mitspieler, t.subject, t.tid, p.username, p.uid, p.pid, p.dateline
FROM ".TABLE_PREFIX."threadfields_data d
INNER JOIN ".TABLE_PREFIX."threads t ON t.tid=d.tid
INNER JOIN ".TABLE_PREFIX."forums f ON t.fid=f.fid AND f.parentlist LIKE '17%'
INNER JOIN ".TABLE_PREFIX."posts p ON t.tid=p.tid
WHERE (p.uid='".$memprofile['uid']."') AND d.datum LIKE '%$monthName%'
GROUP BY t.subject, p.username
ORDER BY d.datum ASC, p.dateline DESC
");
while($row = $db->fetch_array($query)) {
$userid = $row['uid'];
$row['pid'] = $row['pid'];
$row['tid'] = $row['tid'];
if(my_strlen($row['subject']) > 25) {
$row['subject'] = my_substr($row['subject'], 0, 50)."...";
}
$szenen_lastpost = my_date('relative', $row['dateline']);
$szenen_subject = "<h1><a href=\"showthread.php?tid={$row['tid']}&pid={$row['pid']}#pid{$row['pid']}\">".htmlspecialchars_uni($row['subject'])."</a></h1>";
$szenen_desc = "<br /><span class=\"tdesc\">{$row['mitspieler']} spielen {$row['tageszeit']} am {$row['datum']}.</span>";
eval("\$memprofile_szenen_$monthName .= \"".$templates->get("member_profile_szenen_listbit")."\";");
eval("\$memprofile_szenen = \"".$templates->get("member_profile_szenen")."\";");
}
if(!$memprofile_szenen) {
eval("\$memprofile_szenen = \"".$templates->get("member_profile_szenen_empty")."\";");
}
}
// ENDE Szenen
Das Ergebnis: Nichts, denn es passiert nichts. *seufz* Templates sind alle erstellt, Variablen eingefügt.. wie gesagt, die parent-ID ist DEFINITIV 17, Themen mit dem entsprechenden Datum sind vorhanden und die Felder heißen auch so - mit der Abfrage aus Post #1 hat es ja geklappt .. >_<