Beitrag bei Themenbewertung v.1.0

AngelOfMine
Titel: Beitrag bei Themenbewertung v.1.0
Version: 1.0
Beschreibung: Was macht der Hack:
Bewertet ein User eine Thema so wird automatisch ein Beitrag im entsprechenden Beitrag erstellt, indem steht,
dass der User das Thema mit xx "Punkten" bewertet hat.

Eigentlich das Übliche zu Anfang:
- Board offline schalten
- Backup der threadrating.php machen

Und dann zum Eigentlichen:

threadrating.php (root Verzeichnis):

SUCHE:
php:
1:
if ($dorate == 1) {


füge DARUNTER ein:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
// Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 START
    $vote_time=time();
    $vote_message addslashes(" "."\n"."[b]Das Thema wurde von mir mit "."$rating"." von 10 Punkten bewertet.[/b]"."\n"."[SIZE=10](automatisch generierter Beitrag)[/SIZE]");

    list($boardid)= $db->query_first("SELECT boardid FROM bb".$n."_threads WHERE threadid='$threadid'");
    list($posttopic)= $db->query_first("SELECT posttopic FROM bb".$n."_posts WHERE threadid='$threadid'");
    list($parentlist)= $db->query_first("SELECT parentlist FROM bb".$n."_boards WHERE boardid='$boardid'");

    $db->query("INSERT INTO bb".$n."_posts SET 
    threadid='$threadid',    
    posttopic='$posttopic',    
    message='$vote_message', 
    posttime='$vote_time',
    userid='$wbbuserdata[userid]',
    username='".addslashes($wbbuserdata[username])."',visible='1'");
    
    $db->query("UPDATE bb".$n."_boards SET
    threadcount=threadcount+1,
    postcount=postcount+1,
    lastthreadid='$threadid',
    lastposttime='$vote_time',
    lastposterid='$wbbuserdata[userid]',
    lastposter='".addslashes($wbbuserdata[username])."' WHERE boardid='$boardid'");

    /* update board info */
    $db->unbuffered_query("UPDATE bb".$n."_boards SET threadcount=threadcount+1, postcount=postcount+1, lastthreadid='$threadid', lastposttime='$vote_time', lastposterid='$wbbuserdata[userid]', lastposter='".addslashes($wbbuserdata['username'])."' WHERE boardid IN ($parentlist,$boardid)"1);
    /* update global threadcount & postcount */
    $db->unbuffered_query("UPDATE bb".$n."_stats SET threadcount=threadcount+1, postcount=postcount+1"1);
    // Userbeiträge
    $db->unbuffered_query("UPDATE bb".$n."_users SET userposts=userposts+1 WHERE userid = '$wbbuserdata[userid]'",1);

    // Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 END


Zum Schluss auch wieder das Übliche:
- threadrating.php hochladen
- Board online schalten
- FERTIG Augenzwinkern


Viel Spaß damit!
----


weiter zum Download
-=DV|$tr@nger=-
Darf man irgendwo sehen wie das dann aussieht, also der Beitrag?
AngelOfMine
Büdde...
-=DV|$tr@nger=-
Dönge!

Wie ich sehe wir der Post von einem Bot Account erstellt oder wie sehe ich das?
AngelOfMine
Nicht wirklich *g* Der Hack erstellt das Posting unter dem Account, der bewertet hat.

Das [Spiele Bot] hängt nur mit dem Account bei Web Dynamic zusammen Augenzwinkern Ist aber auch kein großes Ding da eine feste UserID vorzugeben.
-=DV|$tr@nger=-
Achso, gut zu Wissen. Freude

Als Vorschlag, ich würde es viel Interessanter finden wenn es nicht direkt ein Post ist, sondern eher eine kleine Zeile zwischen den Posts ist wo drinnen steht "XXX hat das Thema mit 7 von 10 Punkten bewertet". Also eher unauffälliger und nicht als Post. Ist aber sicher umständlicher wie die jetzige Version.
Seraphine
Eher so ein kleiner Link unter dem Forum "Wer hat bewertet?" auf den man dann klickt und das Fenster öffnet sich - Ergebnis. Eine Tabelle, in welche die User eingetragen wird und eine weitere Spalte, wo dann die "6 Punkte von 10 Punkten" steht Augenzwinkern
Diver
Hi,

folgendes Problem, wenn ein User ein Thema bewertet wird zwar ein Post erzeugt, doch wird er nicht mit gezählt.

Angenommen ich habe 20 Beiträge pro Seite, 5 davon sind Themenbewertungen, wird die nächste Seite erst angezeigt wenn effektiv 20 richtige Post gemacht wurden.

Sprich von 15 - 20 werden die gemachten Post nicht angezeigt, es wird keine weitere Seite eröffnet.

Erstellt man einen neuen Beitrag, sieht man in der Übersicht die Beiträge die davor gemacht wurden.

Klickt man dann auf speichern, sieht man den eigenen gemachten Post auch nicht mehr. Erst beim 25 Post würde man ihn wieder sehen.

Kann mir da einer helfen?

Thread: klick

Direkter Sprung zum Beitrag, selber Thread: klick
AngelOfMine
Stimmt denn Anzahl an Postings im Thema mit der Anzahl der Beitrage in der Themenübersicht überein?
Diver
Nein, sie stimmen nicht überein.

Mit den Bewertungen sind es 67 Beiträge, in der Übersicht werden aber nur 60 angezeigt.

Die 7 Bewertungen werden nicht mitgezählt. Aber pro Seite werden sie mit einberechnet.

Habe es so eingestellt das man 20 Beiträge pro Seite hat. Das paßt auch.

Sieht du mein Problem?

Gruß
Diver
Diver
Hi,

kannst du dir das bitte nochmal anschauen? Ansonsten haue ich die Erweiterung wieder raus.

Gruß
Diver
p1zz@k1ng
Zitat:
Original von AngelOfMine
Ist aber auch kein großes Ding da eine feste UserID vorzugeben.


wurde es gerne so umaendern im mein board, wie soll ich vorgehen?
danke
Agi
Versuchs mal so (den neuen Code vom ersten Beitrag hiermit ersetzen):

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
// Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 START
    $userid 1// Hier deine Userid angeben
    $username 'Agi'// Den passenden Usernamen zur Userid angeben
    $vote_time=time();
    $vote_message addslashes(" "."\n"."[b]Das Thema wurde von mir mit "."$rating"." von 10 Punkten bewertet.[/b]"."\n"."[SIZE=10](automatisch generierter Beitrag)[/SIZE]");

    list($boardid)= $db->query_first("SELECT boardid FROM bb".$n."_threads WHERE threadid='$threadid'");
    list($posttopic)= $db->query_first("SELECT posttopic FROM bb".$n."_posts WHERE threadid='$threadid'");
    list($parentlist)= $db->query_first("SELECT parentlist FROM bb".$n."_boards WHERE boardid='$boardid'");

    $db->query("INSERT INTO bb".$n."_posts SET 
    threadid='$threadid',    
    posttopic='$posttopic',    
    message='$vote_message', 
    posttime='$vote_time',
    userid='$userid',
    username='".addslashes($username)."',visible='1'");
    
    $db->query("UPDATE bb".$n."_boards SET
    threadcount=threadcount+1,
    postcount=postcount+1,
    lastthreadid='$threadid',
    lastposttime='$vote_time',
    lastposterid='$userid',
    lastposter='".addslashes($username)."' WHERE boardid='$boardid'");

    /* update board info */
    $db->unbuffered_query("UPDATE bb".$n."_boards SET threadcount=threadcount+1, postcount=postcount+1, lastthreadid='$threadid', lastposttime='$vote_time', lastposterid='$userid', lastposter='".addslashes($username)."' WHERE boardid IN ($parentlist,$boardid)"1);
    /* update global threadcount & postcount */
    $db->unbuffered_query("UPDATE bb".$n."_stats SET threadcount=threadcount+1, postcount=postcount+1"1);
    // Userbeiträge
    $db->unbuffered_query("UPDATE bb".$n."_users SET userposts=userposts+1 WHERE userid = '$userid'",1);

    // Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 END
p1zz@k1ng
jo das klapp Agi, danke dir! Und gibts die moeglichkeit so einzustellen das keine postings gezaehlt werden?

edit***

habe einfach mal die code hier
code:
1:
2:
 // Userbeiträge
    $db->unbuffered_query("UPDATE bb".$n."_users SET userposts=userposts+1 WHERE userid = '$wbbuserdata[userid]'",1);


und scheint so zu klappen.
Agi
Probiers mal so:

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
// Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 START
    $userid 1// Hier deine Userid angeben
    $username 'Agi'// Den passenden Usernamen zur Userid angeben
    $vote_time=time();
    $vote_message addslashes(" "."\n"."[b]Das Thema wurde von mir mit "."$rating"." von 10 Punkten bewertet.[/b]"."\n"."[SIZE=10](automatisch generierter Beitrag)[/SIZE]");

    list($boardid)= $db->query_first("SELECT boardid FROM bb".$n."_threads WHERE threadid='$threadid'");
    list($posttopic)= $db->query_first("SELECT posttopic FROM bb".$n."_posts WHERE threadid='$threadid'");
    list($parentlist)= $db->query_first("SELECT parentlist FROM bb".$n."_boards WHERE boardid='$boardid'");

    $db->query("INSERT INTO bb".$n."_posts SET 
    threadid='$threadid',    
    posttopic='$posttopic',    
    message='$vote_message', 
    posttime='$vote_time',
    userid='$userid',
    username='".addslashes($username)."',visible='1'");
    
    $db->query("UPDATE bb".$n."_boards SET
    threadcount=threadcount+1,
    postcount=postcount+1,
    lastthreadid='$threadid',
    lastposttime='$vote_time',
    lastposterid='$userid',
    lastposter='".addslashes($username)."' WHERE boardid='$boardid'");

    /* update board info */
    $db->unbuffered_query("UPDATE bb".$n."_boards SET threadcount=threadcount+1, postcount=postcount+1, lastthreadid='$threadid', lastposttime='$vote_time', lastposterid='$userid', lastposter='".addslashes($username)."' WHERE boardid IN ($parentlist,$boardid)"1);
    /* update global threadcount & postcount */
    $db->unbuffered_query("UPDATE bb".$n."_stats SET threadcount=threadcount+1, postcount=postcount+1"1);

    // Beitrag bei Bewertung Hack v1.0 by AngelOfMine 12/2005 END
p1zz@k1ng
Nochmal danke Agi! Freude
Agi
Keine Ursache Augenzwinkern
SMHAMK1985
Das finde ich ja cool und erstmal Danke für diesen Hack. Aber was ich gut finden würde ist, dass es auf einer extra seite alles ausgegeben wird welcher User mit Wieviel punkten das Thema bewertet hat. Ist das möglich?

Danke

Mfg
AngelOfMine
Da gibts bereits einen Hack dafür. Nennt sich "Who voted". Den findest du hier in der Datenbank.

Und Danke Augenzwinkern Immer schön zu höen, dass ein Hack gut ankommt...
SMHAMK1985
Hallo Angel,

hab mir mal das Hack "Who Voted" eingerichtet, aber dort werden Bewertungen nicht angezeigt. Sprich ich kann nur sehen WER Gevotet hat, aber nicht mit wieviel Punkten.

Ich möchte in einem neuem Fenster sehen können WELCHER USER mit WIEVIEL Punkten gevotet hat. Ist das möglich? Oder habe ich ein falschen Hack genommen!

Danke für deine Hilfe

Mfg