Wie Formular realiseren, welches auf Datenbank-Tabelle zugreift?
am 03.08.2009 - 17:09 Uhr in
Ich habe eine Liste von 1000 Datensätzen, derzeit nur in einer Excel-Datei.
Die Datensätze sollen bei einem mit Drupal realisiertem Projekt auf einer Unterseite ausgegeben werden können. Dazu soll es ein Formular geben, welches mit z. Bsp. 3 Select-Auswahllisten einen Datensatz selektiert und dann darunter anzeigt.
Die Auswahlliste "select2" soll die entsprechenden Einträge zur Auswahl anbieten, wenn mit "select1" eine Kategorie gewählt wurde. Danach soll auch "select3" die entsprechenden Möglichkeiten zur Auswahl anbieten, wenn "select2" gesetzt ist. Zum Schluss erscheint der Datensatz.
Die Fragen:
- Es ist wohl sinnvoll, die Datensätze in der Datenbank abzulegen und dann darauf zuzugreifen!?
- Gibt es ein Modul, mit dem man so ein Formular (zB. 3 Select-Listen) realisieren kann, welche auch richtig vorgeladen werden in Abhängigkeit von der vorherigen Select-Liste?
- Gibt es Möglichkeiten, das ganze mit Modulen zu realisieren oder ist es besser, all das vollkommen manuell in PHP zu programmieren?
- Anmelden oder Registrieren um Kommentare zu schreiben
Deine Datensätze als Nodes
am 04.08.2009 - 09:53 Uhr
Deine Datensätze als Nodes abzuspeichern wäre wohl sinnvoll :-)
Lösung A:
Select-Kriterien = eine Taxonomy mit Hierarchie
Modul: http://drupal.org/project/hierarchical_select
das gibt es für D6 derzeit nur als dev
Lösung B:
Select-Kriterien = Felder oder Taxonomy
View mit hervorgehobenen Filtern
Wie macht man aus Datensätzen Nodes?
am 04.08.2009 - 12:19 Uhr
Hallo,
danke, das sind interessante Ansätze. Das Modul hierarchical_select gefällt mir sehr gut auf den ersten Blick.
Aber wie geht man grundsätlich vor?
Die Datensätze manuell in die Datenbank befördern?
Und wenn man die Datensätze als Nodes abspeichern will, wie erreicht man das? Und in welchem Fall ist das nötig oder von Vorteil und in welchem Fall nicht?
Wie grundsätzlich meinst du
am 04.08.2009 - 14:54 Uhr
Wie grundsätzlich meinst du denn?
Darf ich mal vorsichtig fragen, wie du an deine 562 Punkte gekommen bist :-)
Taxonomy, CCK und Views sind klar, oder? PHP-Kenntnisse vorhanden?
Du kannst z.B. innerhalb einer Seite mit PHP Eingabeformat deine .xls zeilenweise auslesen und mittels node_save() deine Datensätze als Nodes abspeichern. Diese Funktion verteilt die Daten Drupal-konform in die verschiedenen Tabellen.
http://api.drupal.org/api/function/node_save/6
Zum 2. Teil deiner Frage: ??? Drupal arbeitet ja nunmal mit Nodes, oder sind das komplett externe Daten? Müsstest du mal genauer beschreiben, was du machen willst.
Datensätze in nodes importieren ist vielleicht das beste
am 04.08.2009 - 18:58 Uhr
Taxonomy, CCK und Views sind klar, oder? PHP-Kenntnisse vorhanden?
Du kannst z.B. innerhalb einer Seite mit PHP Eingabeformat deine .xls zeilenweise auslesen und mittels node_save() deine Datensätze als Nodes abspeichern. Diese Funktion verteilt die Daten Drupal-konform in die verschiedenen Tabellen.
http://api.drupal.org/api/function/node_save/6
Zum 2. Teil deiner Frage: ??? Drupal arbeitet ja nunmal mit Nodes, oder sind das komplett externe Daten? Müsstest du mal genauer beschreiben, was du machen willst.
Ja, das ist alles klar und PHP ist auch kein Problem.
Ich habe auch schon mal Userdaten importiert, es gibt ein super Modul dafür. Soweit ich weiß, gibt es auch ein node-import Modul.
node_save ist mir neu und wie man von einer xls (meintest Du nicht csv?) in Drupal einliest, das ist mir neu. Aber ich denke, Du meinst hier nicht Drupal, sondern die PHP-Funktionen.
Ich will aber nicht alles programmieren, nur wenn es keine andere Lösung gibt. Sprich ich suche zuerst immer nach Modulen, die das ganze oder teile davon machen und wenn es überhaupt keine Lösungen/Module dafür gibt, dann programmiere ich erst selbst.
Ich habe nichts gegen nodes, man kann das auch alles in Nodes importieren (ca. 1000 Datensätze), wenn die Gesamtlösung dann auch logisch und gut ist.
Aber wenn ich es mal in Nodes habe, ist damit die Anzeige dieser Nodes ja noch nicht gelöst. Okay, man könnte Views einsetzen, und mit "exportierten" Views-Filtern arbeiten, klar. Vielleicht gar nicht so schlecht, ich überleg mir das noch mal genauer.
Also nochmal zum Importieren, wenn ich möglichst wenig selbst programmieren will: Geht das vielleicht mit node_import, kann man damit 1000 Datensätze in Nodes importieren, wobei ein Datensatz 5-10 Felder hat (je nachdem, ob alles verwendet wird oder nur teilweise)? Und kann man da gleich beim Importieren mehrstufige Taxonomie-Kategorien anlegen?
Wenn du proggen kannst - und
am 04.08.2009 - 19:55 Uhr
Wenn du proggen kannst - und du sagst du kannst - dann kannst du alles proggen.
--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!
webseiter.de
In Drupal muss man meistens nur ein paar Zeilen programmieren
am 04.08.2009 - 20:17 Uhr
Klar kann ich, aber schneller geht es mit Modulen. Drupal ist ja so super, dass man fast nichts programmieren braucht, jedenfalls fast nichts "ganzes", es reicht meist irgendwo ein paar Zeilen in PHP reinzuprogrammieren, wenn das eine oder andere fehlt. Aber das meiste machen doch Module und so wird es auch in diesem Fall sein: Ein oder 2 Module zusätzlich zu den bestehenden, die man bestimmt auch nutzen wird (Views, CCK, etc) und vielleicht ein paar Zeilen PHP-Code zum Anpassen der Ausgabe.
*daumen hoch*
am 04.08.2009 - 20:31 Uhr
"Drupal ist ja so super, dass man fast nichts programmieren braucht .." das wollen leute wie ich lesen. :-)
aber vielleicht ist das eine kleine herausforderung für dich als "techie"? => http://www.drupalcenter.de/node/20560 ;-)
-----
Ich spreche leider kein PHP. (Mit "Hooks", "Funktionen" etc. kann ich daher leider nicht arbeiten.) Bitte bei der Beantwortung meiner Fragen berücksichtigen. Danke!
Einfache Lösung für redirect nach Logout
am 04.08.2009 - 20:55 Uhr
Off topic:
Da habe ich wirklich eine einfache Lösung für die Umleitung nach dem Logout, schau in deinen Thread.
...
am 04.08.2009 - 21:09 Uhr
Off topic:
Da habe ich wirklich eine einfache Lösung für die Umleitung nach dem Logout, schau in deinen Thread.
jaja, das klappt ja auch schon. aber nach dem fehlgeschlagenen login war noch die frage. ;-)
wir haben das jetzt eh anders gelöst, aber ich denke, das könnte für einige drupal-user interessant sein.
-----
Ich spreche leider kein PHP. (Mit "Hooks", "Funktionen" etc. kann ich daher leider nicht arbeiten.) Bitte bei der Beantwortung meiner Fragen berücksichtigen. Danke!
Zitat: Soweit ich weiß,
am 04.08.2009 - 22:38 Uhr
Soweit ich weiß, gibt es auch ein node-import Modul.
Ja stimmt, das Modul gibt es. Mit den 1000 Datensätzen gibt es glaube ich kein Problem. Als ich es zuletzt benutzt habe hat es aber manche Feldtypen nicht erkannt. Das kann je nach deinen CCK Feldern ein Problem sein.
Taxonomy geht grundsätzlich auch, mit der Hierarchie musst du mal rumprobieren.
node_save ist mir neu und wie man von einer xls (meintest Du nicht csv?) in Drupal einliest, das ist mir neu. Aber ich denke, Du meinst hier nicht Drupal, sondern die PHP-Funktionen.
Ja stimmt auch, ich meinte .csv und PHP-Funktionen eben innerhalb einer Seite mit PHP-Eingabeformat. Das ist eine Lösung auf die Schnelle für einmaliges Übertragen der Daten.
Falls das ein wiederkehrender Vorgang ist würde ich ein kleines Helper-Modul schreiben.