Aufeinanderfolgende Beiträge eines Users verhindern

B.SCHEUERT
Hi,

auf Eurem Board ist etwas das mich interessiert. Nun weiß ich nicht ob das eine Funktion des WBB 2.3.4 ist. Ich nutze die 2.1.6er Version und würde gerne zwei aufeinanderfolgende Beiträge einer Person verhindern, und diese darauf hinweisen: "Sie sind nicht berechtigt mehrere Antworten direkt hintereinander auf ein Thema abzugeben. Bitte editieren Sie Ihren vorherigen Beitrag.".

Ich habe über die Suche nichts gefunden, evtl. falsche Suchworte benutzt. Kann mir da jemand helfen?
Broken Sword
ohne schnickschnack:
[addreply.php]
suche
code:
1:
/* check message */

füge darunter
code:
1:
2:
3:
4:
5:
  $id = $db->query_first("SELECT MAX(postid) as a FROM bb".$n."_posts where threadid = '$threadid'");
  $lastid = $db->query_first("SELECT userid FROM bb".$n."_posts WHERE postid = '".$id['a']."' AND threadid='$threadid'");
  if($wbbuserdata['userid'] == $lastid['userid']) $error.= "Sie sind nicht berechtigt mehrere Antworten direkt hintereinander auf ein Thema abzugeben. Bitte editieren Sie Ihren vorherigen Beitrag.";

ein und du bist glücklich \o/

->irgendwie funktioniert das bei mir mit subqueries net ;___; (vielleicht mysql-version...kp >.>) (darum habsch mal ohne jemacht Oo)
B.SCHEUERT
Hat prima geklappt, Danke.

Was genau meinst Du mit
Zitat:
->irgendwie funktioniert das bei mir mit subqueries net ;___; (vielleicht mysql-version...kp >.>) (darum habsch mal ohne jemacht Oo)


Mit PHP und MySQL stehe ich noch auf Kriegsfuß. Hoffe bald damit anzufangen und es schnell zu lernen.

//EDIT

Kann ich die Gruppen ADMINS und MODS davon ausschließen?
Broken Sword
Zitat:
Original von B.SCHEUERT
Was genau meinst Du mit...

subqueries sind queries in queries sprich eigentlich müsst das auch so gehen
code:
1:
2:
3:
4:
  $lastid = $db->query_first("SELECT userid FROM bb".$n."_posts WHERE postid = (SELECT MAX(postid) as a FROM bb".$n."_posts) AND threadid='$threadid'");
  if($wbbuserdata['userid'] == $lastid['userid']) $error.= "Sie sind nicht berechtigt mehrere Antworten direkt hintereinander auf ein Thema abzugeben. Bitte editieren Sie Ihren vorherigen Beitrag.";

aber bei mir kommt dann eine fehlermeldung >.>
darum habsch anders gemacht ^^


Zitat:
Original von B.SCHEUERT

Kann ich die Gruppen ADMINS und MODS davon ausschließen?

klar
ersetz dann einfach
code:
1:
2:
3:
if($wbbuserdata['userid'] == $lastid['userid']) $error.= "Sie sind nicht berechtigt mehrere Antworten direkt hintereinander auf ein Thema abzugeben. Bitte editieren Sie Ihren vorherigen Beitrag.";

mit
code:
1:
2:
3:
if($wbbuserdata['userid'] == $lastid['userid'] AND !checkmodpermissions("m_can_thread_close")) $error.= "Sie sind nicht berechtigt mehrere Antworten direkt hintereinander auf ein Thema abzugeben. Bitte editieren Sie Ihren vorherigen Beitrag.";
KleenMicha
Thema Verschoben.