Frage blauer Code

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Gesperrt
Less

Frage blauer Code

Beitrag von Less »

meine Frage vorab: Wie muss ich den Code verändern, dass erst nachdem der Ref-User 3 Beiträge gepostet hat, der Werber,( also der den REF-User geworben hat) Punkte gutgeschrieben bekommt.

ruid = ID des Werbers, der den Ref-User geworben hat
nuid = ID des Geworbenen (Ref-User)


..den blauen Teil musst Du anpassen, je nachdem welche Aktion registriert werden soll (dieses Beispiel könnte man benutzen, wenn beim Aufruf eines Forums vom REF-User (der sich über den Link registriert hat) der REF dann Punkte bekommt; einzufügen ist der Code zusammenhängend in der viewforum.php vor $template->pparse('body');).
$sql = "SELECT nuid, ruid, session_user_id FROM " . REFERRAL_TABLE . ", ".SESSIONS_TABLE." WHERE nuid = session_user_id";
if ( !($results = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain ref information.', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($results);

$nuid = $row['nuid'];
$ruid = $row['ruid'];
if ( $userdata['user_id'] == $nuid )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points + 1
WHERE user_id = $ruid";
if (!$db->sql_query($sql, END_TRANSACTION))
{
message_die(GENERAL_ERROR, 'Error in updating.', '', __LINE__, __FILE__, $sql);
}
}
man müsste also eigentlich nur Abfragen, ob der Ref-User schon Beiträge gepostet hat, und wenn ja wieviele und dann einmalig Punkteg zutschreiben.

mfg und hoffend auf Antwort

Less


PS: Ich poste diesen Beitrag in einem neuen Thema, weil meine gestrige Frage in dem original-Post nur 2 Views bekommen hat!
Less
Mitglied
Beiträge: 74
Registriert: 06.09.2003 12:49

Re: Frage blauer Code

Beitrag von Less »

meine Frage vorab: Wie muss ich den blauen Code verändern, dass der der Werber (also der den REF-User geworben hat) 2 Punkte für jedes vom Ref-User eröffnete Thema bekommt und 1 Punkt pro Beitrag den der Ref-user im Forum schreibt?

ruid = ID des Werbers, der den Ref-User geworben hat
nuid = ID des Geworbenen (Ref-User)


..den blauen Teil musst Du anpassen, je nachdem welche Aktion registriert werden soll (dieses Beispiel könnte man benutzen, wenn beim Aufruf eines Forums vom REF-User (der sich über den Link registriert hat) der REF dann Punkte bekommt; einzufügen ist der Code zusammenhängend in der viewforum.php vor $template->pparse('body');).
$sql = "SELECT nuid, ruid, session_user_id FROM " . REFERRAL_TABLE . ", ".SESSIONS_TABLE." WHERE nuid = session_user_id";
if ( !($results = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain ref information.', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($results);

$nuid = $row['nuid'];
$ruid = $row['ruid'];
if ( $userdata['user_id'] == $nuid )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_points = user_points + 1
WHERE user_id = $ruid";
if (!$db->sql_query($sql, END_TRANSACTION))
{
message_die(GENERAL_ERROR, 'Error in updating.', '', __LINE__, __FILE__, $sql);
}
}
mfg und hoffend auf Antwort

Less


PS: So schwer kanns doch nun wirklich nicht sein, oder?[/quote]
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Reicht nicht ein Thema zu schieben?
Hier gehts weiter: http://www.phpbb.de/viewtopic.php?t=25703

Wenn du meinst nicht, dann meld dich per PN.
Solltest dich mal fragen, warum keiner antwortet. Vielleicht mögen manche ja keine Schiebepostings. Und dann auch noch in der Anzahl.
Gesperrt

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“