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

Anzahl Nodes eines Inhaltstyp / aktueller Node

Eingetragen von zapfbay (22)
am 19.03.2014 - 11:36 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x

Hallo Drupalgemeinde,

ich verfolge dieses Forum schon seit einiger Zeit und habe dank Euch schon einges über Drupal gelernt. Jetzt bin ich aber an einem Punkt angelangt, wo ich Eure Hilfe benötige.

Ich habe mehrere Nodes von einem Inhaltstyp "news". Jetzt möchte ich am Ende meiner Darstellung gerne Ausgeben z.B. "Sie befinden sich im Beitrag *5* von *20*"

Also wie ich die Gesamtzahl der Nodes des selben Inhaltstyps ermittle, habe ich schon herausgefunden:

$results = db_select('node', 'n')
  ->fields('n', array('nid'))
  ->condition('n.type', 'news')
  ->condition('n.status', '1')
  ->countQuery()
  ->execute()
  ->fetchField();

Aber irgendwie bekomme ich den vorderen Wert nicht ermittelt - also im Beispiel die 5.
Quasi die Beitragsnummer.

Wo genau muss ich da in meiner SQL Abfrage eingreifen, um den gesuchten Wert zu ermitteln. Stehe da momentan total auf dem Schlauch.

Vielen Dank schon mal für Eure Hilfe

Gruß
Markus

‹ [gelöst] inc Datei im Modul einbinden -> bei hok_menu_alter mit drupal_get_path schaffen! Anzahl Nodes eines Inhaltstyp / aktueller Node ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Wo käme denn die *5* her?

Eingetragen von maen (547)
am 21.03.2014 - 16:26 Uhr

Wo käme denn die *5* her? Incrementell, nach alphabetischer Reihenfolge, stehen die alle auf einer Seite, so dass man das per js ermitteln könnte?

  • Anmelden oder Registrieren um Kommentare zu schreiben

einen view mit einer node pro

Eingetragen von caw (2762)
am 22.03.2014 - 06:22 Uhr

einen view mit einer node pro ergebnis seite erstellen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

caw schrieb einen view mit

Eingetragen von zapfbay (22)
am 24.03.2014 - 08:20 Uhr
caw schrieb

einen view mit einer node pro ergebnis seite erstellen.

Hallo!

Genau das habe ich gemacht - aber wie bekomme ich jetzt den gesuchten Wert?

Die Gesamtzahl ist kein Problem, aber wie gesagt die Zahl X von z.B. 20 Einträgen...

  • Anmelden oder Registrieren um Kommentare zu schreiben

du hast dann doch die

Eingetragen von caw (2762)
am 24.03.2014 - 08:30 Uhr

du hast dann doch die paginierung. 1 bis...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Und noch mal. Views ist eine

Eingetragen von maen (547)
am 24.03.2014 - 08:38 Uhr

Und noch mal. Views ist eine Db Abfrage. Die Frage wie Du diese Abfrage formulierst hängt doch ganz stark davon ab was Du überhaupt sagen willst!

  • Anmelden oder Registrieren um Kommentare zu schreiben

im view hats du auch die

Eingetragen von caw (2762)
am 24.03.2014 - 19:34 Uhr

im view hats du auch die ergbnisanzahl zur verfügung

  • Anmelden oder Registrieren um Kommentare zu schreiben

Geht in MySQL nicht wirklich gut

Eingetragen von hcarsten (18)
am 26.03.2014 - 11:24 Uhr

Was Du hier suchst ist letztlich die "Row Number" ! Dies ist eine Funktion die es z.B. in Oracle gibt, eine sog. Pseudo Column, die halt die Position des Satzes in der Abfrage darstellt.
In MySQL gibt es sowas nicht wirklich. Ein Workaround ist die Nutzung einer "Variablen" in MySQL (suche nach "@ROWNUM in mysql"). Das funktioniert aber nur in nicht sortierten Abfragen, da die Numerierung schon vor der Erzeugung der Sortierung durchgeführt wird. Möglich ist ein weiterer Workaround, der dann mit einem Sub-Select arbeitet (siehe http://tuts4you.de/90-programmieren/sql/92-mysql-rownum-mit-sortierung). In wie weit man dies in das Drupal db_select hinein bekommt, müssten man mal probieren.

set @rownum=0;
select @rownum:=@rownum+1, nid from node limit 10,10;

Hier dann aber aufgepasst, wenn auch Range genutzt wird. Die hier erzeugte Position bezieht sich dann immer auf den ersten Datensatz.

herzlichst
Carsten

  • Anmelden oder Registrieren um Kommentare zu schreiben

Warum so kompliziert? Zwar

Eingetragen von maen (547)
am 26.03.2014 - 11:32 Uhr

Warum so kompliziert?
Zwar wird die Frage nach der Sortiermethode konstant nicht mit einer Antwort gewürdigt, was mich ehrlich gesagt an der Reife des Gedankens etwas zwifeln lässt, aber das kann in drupal über Entityfieldquery sortierbar nach Titelnahme, create, oder was auch immer gelöst werden. Das Ergebnis wird in einem array gespeichert, der dann via foreach ausgeesen wird.
In dieser foreach kann er dann ja einen Zähler setzen und das Zwischenergebnis der foreach, sobald Treffer, mit ausgeben.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo zusammen! Sorry für die

Eingetragen von zapfbay (22)
am 26.03.2014 - 14:29 Uhr

Hallo zusammen!

Sorry für die späte Antwort, aber ich war mit "anderen Problemen" in letzter Zeit etwas abgelenkt!
Erstmal vielen Dank für Eure Tipps.
Ich werde mich in den nächsten Tagen mal mit den Tipps beschäftigen und versuchen mein Problem zu lösen.

Sortiert werden die ganzen Einträge nach einem Feld "Datum".

Gruß und danke nochmal, Markus

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 5 Tagen
  • Hey danke
    vor 1 Woche 6 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 6 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 4 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 4 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 1 Tag
  • In der entsprechenden View
    vor 3 Wochen 1 Tag
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 1 Tag
  • gelöst
    vor 5 Wochen 5 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 6 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 19 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