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

[gelöst]Views_calc kilometerzähler

Eingetragen von esseff (171)
am 12.11.2010 - 14:27 Uhr in
  • Module
  • Drupal 6.x

Hallo Gemeinde,

ich probiere jetzt schon ne Weile rum und komme zu keinem Ergebnis.
Folgende Situation:

mehrere User (4)
jeder läuft und trägt seine km und Zeit (pro lauf) in ein cck-feld
eine view (Seite) in der der user (angemeldeter) sich die km der anderen anzeigen lassen kann. (Userauswahl ist einfach, weiß ich).

öffentlicher Block mit Gesamtzahl (siehe http://www.lauffreund.de rechts block "gelaufene km" (bisher per Hand)) <<< dieser Block ist mein Problem. da habe ich bisher noch keine Lösung. für die seiten-view schwebt mir die Lösung vor.

kann mir jemand einen Tipp für den Block geben?

Vielen Dank im Vorraus
Sven

‹ Paging Modul Shoutbox Modul ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Und was ist jetzt genau das

Eingetragen von netzkoop (1820)
am 14.11.2010 - 11:53 Uhr

Und was ist jetzt genau das Problem? An welcher Stelle kommst du denn mit Views Calc nicht weiter?

-----------
Luca Curella
Kooperative Netze - Berlin

  • Anmelden oder Registrieren um Kommentare zu schreiben

mein problem ist, dass ich

Eingetragen von esseff (171)
am 14.11.2010 - 17:48 Uhr

mein problem ist, dass ich nicht weiß, wie ich einen block hinbekomme, in dem eine gesamtkilometerzahl und dann eine view mit den einzelnen km der user erstelle. so wie es quasie jetzt schon ist. der unterschied ist halt, dass ich im moment alles per hand mache und ich mir nur von den läufern die km geben lasse.

  • Anmelden oder Registrieren um Kommentare zu schreiben

wenns auf diese weiße nicht

Eingetragen von esseff (171)
am 15.11.2010 - 12:08 Uhr

wenns auf diese weiße nicht möglich ist, würde ich gerne per php eine summe der in das feld der km eingetragenen zahlen ausgeben. allerdings bin ich nicht so der php-held. könnte mir jemand das script flink liefern, in das ich nur noch die feldbezeichnung eintragen muss?

edit:
ich versuchs grad damit. allerdings kommt folgende fehlermeldung:

warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /.../includes/common.inc(1695) : eval()'d code on line 7.

<?php
$sql
= mysql_query("SELECT SUM(field_km_value) as total FROM datenbankname");
list(
$total) = mysql_fetch_array($sql);
echo
$total;
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

vom script her bin ich nun

Eingetragen von esseff (171)
am 15.11.2010 - 15:01 Uhr

vom script her bin ich nun umgestiegen auf:

<?php
echo db_result(db_query('SELECT SUM($node->field_km[0]) FROM {node} WHERE type = "kilometer"'));

echo
mysql_error();
?>

allerdings habe ich da noch probleme. offensichtlich wird das cck-feld nicht richtig angesprochen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

PHP

Eingetragen von stBorchert (6003)
am 15.11.2010 - 16:05 Uhr

Hallo.

<?php
echo db_result(db_query('SELECT SUM($node->field_km[0]) FROM {node} WHERE type = "kilometer"'));
echo
mysql_error();
?>

Das kann nicht funktionieren, da PHP nur Texte innerhalb von " auswertet. Da Du die Variable $node in einen Text mit einfachen Anführungszeichen setzt, wertet PHP den kompletten Text als simplen String, es wird also keine zusätzliche Behandlung des Textes vorgenommen.
Ausserdem enthält $node->field_km[0] nicht den Namen der Tabellenspalte (der für SUM benötigt wird), sondern ein Array.

Wieso willst Du eigentlich den Wert selbst berechnen? So wie ich das sehe, kann [do:views_calc Views Calc] doch schon von sich aus Summern bestimmter Felder berechnen.

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich kann die Summe der

Eingetragen von esseff (171)
am 15.11.2010 - 16:46 Uhr

Ich kann die Summe der km-felder in einer View am Ende ausgeben lassen. dies hab ich auch schon für eine Seiten-View hinbekommen. Dort kann man sich den User wählen und bekommt am Ende die Summe seiner gelaufenen km angezeigt.

Nun will ich aber auch einen Block haben, in dem die Summe aller gelaufenen km aller User angezeigt wird, dies bekomme ich aber mit views-calc nicht hin, außer ich lasse alle km von allen Usern anzeigen, was relativ unsinnig wäre. Die Betonung liegt dabei auf ICH, da es ja vielleicht doch möglich ist aber über meinen Wissensstand hinaus geht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

nach kleiner Änderung

Eingetragen von esseff (171)
am 16.11.2010 - 08:49 Uhr

<?php
echo db_result(db_query('SELECT SUM("field_km") FROM {node} WHERE type = "kilometer" '));

echo
mysql_error();
?>

Hiermit bekomme ich nun schon keine Fehlermeldung mehr, aber eine 0 als Ergebnis. Ich probiere weiter.
Wenn ich statt SUM COUNT einsetze

<?php
echo db_result(db_query('SELECT COUNT("field_km") FROM {node} WHERE type = "kilometer" '));

echo
mysql_error();
?>

zeigt er mir das richtigte Ergebnis (7 Einträge im field_km) an. Woran liegt's also, dass nicht addiert wird?

  • Anmelden oder Registrieren um Kommentare zu schreiben

JOIN

Eingetragen von stBorchert (6003)
am 16.11.2010 - 09:19 Uhr

Hallo.

esseff schrieb

<?php
echo db_result(db_query('SELECT SUM("field_km") FROM {node} WHERE type = "kilometer" '));
?>

Hiermit bekomme ich nun schon keine Fehlermeldung mehr, aber eine 0 als Ergebnis.

Das Feld "field_km" existiert nicht in der Tabelle "node" (würde mich jedenfalls ganz stark wundern). Du benötigst einen SQL-JOIN zwischen der Tabelle "node" und der Tabelle, in der die km-Werte gespeichert werden.
In etwa sowas:

<?php
$sql
= "SELECT SUM(field_km_value) FROM {content_field_km} km INNER JOIN {node} n ON km.vid = n.vid WHERE n.type = '%s'":
print
db_result(db_query($sql, 'kilometer'));
?>

hth,

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für den Hinweis mit der

Eingetragen von esseff (171)
am 16.11.2010 - 09:33 Uhr

Danke für den Hinweis mit der Tabelle node!

Hab's jetzt hinbekommen. Man lernt halt nie aus.

<?php
echo db_result(db_query('SELECT SUM(field_km_value) FROM {content_type_kilometer}  '));
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ergebnis

Eingetragen von stBorchert (6003)
am 16.11.2010 - 09:58 Uhr

Ja, stimmt. Die Verbindung zur Tabelle "node" kann man sich hier auch gleich sparen.

Allerdings benötigst Du die Verbindung, wenn Du jetzt für jeden Benutzer die Gesamtkilometer abfragen möchtest.

<?php
$sql
= "SELECT n.uid, SUM(field_km_value) as km FROM {content_field_km} km INNER JOIN {node} n ON km.vid = n.vid WHERE n.type = '%s' GROUP BY n.uid":
$results = db_query($sql, 'kilometer');
$items = array();
while ((
$item = db_fetch_object($results)) !== FALSE) {
 
$items[] = t('User !uid: !km', array('!uid' => $item->uid, '!km' => $item->km));
}
print
theme('item_list', $items);
?>

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Zusätzliche Felder in der Userliste
  • Drupal 8 - Datenbank Mindmap
  • Buch: Mastering Drupal 8 Views!
  • The website encountered an unexpected error. Please try again later.
  • Drupal 8: Modul gesucht - Hervorhebung wichtiger Inhalte
  • Drupal 8: Modul prevnext
  • Verwirrung / Unterstützung
  • Vom jeweiligen User die Kunstwerke ausgeben.
  • Problem mit der Readiness für Automatic Updates
  • Multidomain
  • [gelöst]Drupal 8: Fußzeilenmenü auf Login-Seite verschwunden
  • Fullcalendar - Grösse Dialogfenster
Weiter

Neue Kommentare

  • Ja, danke! Ich habe dieses
    vor 1 Tag 18 Stunden
  • Die View heißt "Benutzer". Du
    vor 2 Tagen 5 Stunden
  • Danke! Was meint denn
    vor 2 Tagen 12 Stunden
  • Dazu brauchst Du kein Modul,
    vor 2 Tagen 12 Stunden
  • Das heißt in dem Fall, daß
    vor 2 Tagen 12 Stunden
  • Voaraussetzung sind
    vor 2 Tagen 12 Stunden
  • Huhu, also in der
    vor 2 Tagen 12 Stunden
  • Das Problem ist, dass nicht
    vor 2 Tagen 13 Stunden
  • Ohne Composer ist der Betrieb
    vor 2 Tagen 13 Stunden
  • Kann gut sein, aber ohne
    vor 2 Tagen 13 Stunden

Statistik

Beiträge im Forum: 246347
Registrierte User: 18915

Neue User:

  • Enriqueemunc
  • Tulsa55
  • Elisаhaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9045
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3919
ronald3834
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 6 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