04.06.2017, 21:10
Ich bin gerade dabei eine kleine hilfs-php für mein Forum zu schreiben, in dem ich unter anderem auch Links zu allen Posts in einem bestimmten Zeitraum erzeugen möchte. Das Funktioniert (nach langem rumprobieren) auch alles genau wie ich es möchte, bis auf den kleinen Umstand, dass der Link der erzeugt wird, zwar zu dem richtigen Thema, allerdings nicht direkt zu dem Post verlinkt.
Es werden Zahlen eingetragen, allerdings stehen die in keinerlei Verbindung zum fraglichen Post oder Thema oder Forum in dem es gepostet ist. Ich habe das in der DB nachgesehen und bin echt überfragt woher diese random wirkenden Zahlen kommen. Ich kann sie mir echt nicht erklären. Die Zahlen 'müssten' im niedrigen 6-stelligen Bereich liegen, schwanken aber eher im 2-3-stelligen Bereich und dabei treten manche Zahlen vermehrt in verschiedensten Szenen auf (aufgefallen sind mir 12,26,27,68 und 401, die wie gesagt in den DB-Tabellen der fraglichen Posts wirklich nirgends vorkommen).
Ich hoffe gerade, dass ich irgendeinen total dämlichen Anfängerfehler gemacht habe (das ist die erste php die ich ohne Tutorial für mich erstellt habe ).
Würde mich freuen falls Jemand eine Idee hat woran das liegen könnte, oder mir einen Schubs in eine Richtung gibt, die Funktionieren könnte.
Liebe Grüße
Luna
Es werden Zahlen eingetragen, allerdings stehen die in keinerlei Verbindung zum fraglichen Post oder Thema oder Forum in dem es gepostet ist. Ich habe das in der DB nachgesehen und bin echt überfragt woher diese random wirkenden Zahlen kommen. Ich kann sie mir echt nicht erklären. Die Zahlen 'müssten' im niedrigen 6-stelligen Bereich liegen, schwanken aber eher im 2-3-stelligen Bereich und dabei treten manche Zahlen vermehrt in verschiedensten Szenen auf (aufgefallen sind mir 12,26,27,68 und 401, die wie gesagt in den DB-Tabellen der fraglichen Posts wirklich nirgends vorkommen).
Ich hoffe gerade, dass ich irgendeinen total dämlichen Anfängerfehler gemacht habe (das ist die erste php die ich ohne Tutorial für mich erstellt habe ).
PHP-Code:
<?php
define("IN_MYBB", 1);
require_once "./global.php";
require_once MYBB_ROOT."inc/class_parser.php";
add_breadcrumb("blacklisthilfe", "blacklisthilfe.php");
// Zugang nur Admins erlauben
if( !($mybb -> user['additionalgroups'] = 4 OR $mybb -> user['groups'] = 4) )
{
error_no_permission();
}
$name = 'username';
$group = 'usergroup';
$timesearch = time() - 62*24*60*60; // Filter für 2 Monate
$bluserliste = "<strong>User mit 3 oder weniger Inplayposts in den letzten 62 Tagen:</strong> <br />";
$userliste = "<strong>User mit 4 oder mehr Inplayposts in den letzten 62 Tagen:</strong> <br /><table>";
$ipforum = $mybb->settings['inplaytracker_forum'];
$archiv = $mybb->settings['inplaytracker_archiv'];
$communication = $mybb->settings['inplaytracker_communication'];
$communicationarchiv = $mybb->settings['inplaytracker_communicationarchiv'];
// Alle User in der entsprechenden Gruppe
$users = $db->query("SELECT * FROM mybb_users WHERE $group = 8 ORDER BY $name ASC");
while($user = $db->fetch_array($users)){
$blpostcount = 0;
$userID = $user['uid'];
$blposts = $db->query("
SELECT * FROM mybb_posts
LEFT JOIN mybb_threads ON mybb_threads.tid = mybb_posts.tid
LEFT JOIN mybb_forums ON mybb_forums.fid = mybb_threads.fid
WHERE mybb_posts.dateline > $timesearch
AND mybb_posts.uid = $userID
AND (
(mybb_forums.parentlist LIKE '$ipforum,%' AND !(mybb_forums.parentlist LIKE '%,$communication,%'))
OR
(mybb_forums.parentlist LIKE '%,$archiv,%' AND !(mybb_forums.parentlist LIKE '%,$communicationarchiv,%'))
)
ORDER BY mybb_posts.dateline DESC
");
$lastpostlinks = "<span style=\\\"font-size: 11px;\\\">";
while($blpost = $db->fetch_array($blposts)) {
++$blpostcount;
$lastpostlinks .= "[<a href=\\\"showthread.php?tid=".$blpost['tid']."&pid=".$blpost['pid']."#pid".$blpost['pid']."\\\">".$blpostcount."</a>] ";
}
$lastpostlinks .= "</span>";
if($blpostcount < 4){
$bluserliste .= "# ".$user['username']." ".$blpostcount."/ ".$lastpostlinks."<br />";
}
else{
$userliste .= "<tr><td><center>".$blpostcount."</center></td><td>von ".$user['username']." ".$lastpostlinks."</td></tr>";
}
}
$bluserliste .= "<br />";
$userliste .= "</table>";
eval("\$page = \"$bluserliste\";");
eval("\$page .= \"$userliste\";");
output_page($page);
?>
Würde mich freuen falls Jemand eine Idee hat woran das liegen könnte, oder mir einen Schubs in eine Richtung gibt, die Funktionieren könnte.
Liebe Grüße
Luna