Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

[gelöst]Täglich Userpoints gutschreiben

Eingetragen von Hoamer (22)
am 03.10.2011 - 16:43 Uhr in
  • Module
  • Drupal 7.x oder neuer

Guten Tag,

ich nutze den Core 7.8, sowie UserPoints und "" Contributed Modules in der Dev-Version.
Zur Zeit möchte ich realisieren, dass jeder Benutzer eine bestimmte Anzahl an UserPoints gutgeschrieben bekommt.
(Das Löschen ist kein Problem, dabei führe ich "TRUNCATE TABLE `userpoints`" aus.)

Folgende Lösung ist bisher am nächsten an dem Problem dran: Rules: Beim Ausführen des Cronjobs soll "site:curren-user" eine bestimmte Anzahl an Userpoints hinzugefügt werden.
Leider kann ich hierbei nicht "alle user" wählen, sondern nur den current-user (oder doch?)

Gibt es vielleicht einen anderen, besseren Lösungsweg, um bei allen Benutzern Ihre Userpoints zeitgesteuert zu incrementieren?

Vielen Dank schon mal.

Mit freundlichem Gruß
Hoamer

EDIT: Hier die Lösung:

Theorie:
Es wird die UID aus der Table Users abgefragt.
$result = mysql_query("SELECT `uid` FROM `users`");

Daraufhin verwenden wir eine Schleife, welche die Datensätze hintereinander abarbeitet.

while ($row = mysql_fetch_array($result, MYSQL_NUM))
{

In dieser Schleife wird nun ein Array geladen, welcher die Parameter für das Userpoints-API beinhaltet.

//Userpoints hinzufügen
     $params = array(
        'uid' => $row[0],
        'points' => 10,
     );

Daraufhin wird der Hook der UserpointsAPI ausgeführt und somit die Anzahl der Userpoints des Users(UID) addiert. Der Datenbankzugriff wird geschlossen.

     userpoints_userpointsapi($params); }
mysql_close($link);

Diesen Code lasse ich per Rules ausführen, sobald der cronjob ausgeührt wird.

______________
Hier nochmal die Zusammenfassung:

<?php
$link
= mysql_connect('localhost', 'xxxx', 'xxxx');
if (!
$link) {
    die(
'keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db("findeteuch.de");

$result = mysql_query("SELECT `uid` FROM `users`");

while (
$row = mysql_fetch_array($result, MYSQL_NUM)) {

   
//Userpoints hinzufügen
    
$params = array(
       
'uid' => $row[0],
       
'points' => 10,
     );
    
userpoints_userpointsapi($params);

}
mysql_close($link);
?>

‹ Error-Bilder in PDF von übersetzter Seite Nach Angabe der Email-Adresse automatisch Mail senden ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 2 Wochen 5 Tagen
  • Guckst du hier: step by step
    vor 2 Wochen 4 Tagen
  • Guckst du hier: step by step
    vor 2 Wochen 4 Tagen
  • Ich habe ja keine Angst vor
    vor 4 Wochen 4 Stunden
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 4 Wochen 2 Tagen
  • Vielen Dank erst einmal, aber
    vor 4 Wochen 4 Tagen
  • Du hast die "Trusted host
    vor 4 Wochen 4 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 6 Wochen 3 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 6 Wochen 6 Tagen
  • Arrrrg. Nix Tabelle :-D /*
    vor 11 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250284
Registrierte User: 20508

Neue User:

  • Marvinkep
  • RandallFloop
  • Inga GuAph

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 15 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association