Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

Eigene Seite mit eigenen (GET-)Parametern

Eingetragen von der Jörchen (6)
am 30.08.2007 - 20:33 Uhr in
  • Allgemeines zu Drupal

Hey Ihr,

ich bin gerade dabei eine PHP in Drupal einzubinden. Soweit kein Problem, allerdings möchte ich, dass dieses Seite über mod_rewrite aufgerufen wird, also dann auf die Übergebenen Get-Parameter zugreift.

Hierzu habe ich:
1) Neue Drupal Seite, hier mit dem Name 'test' erstellt
2) Meinen PHP-Code dort eingbunden

3) Einen mod_rewrite - Aufruf in die .htaccess gelegt, die wie folgt aussieht:

--> RewriteRule ^/testaufruf/([0-9]+)/(.+)/$ /test/?id=$1 [L]

Nun sollte also wenn ich "example.com/testaufruf/3/abc/" eingebe, meine Drupal-Seite kommen, auf der ich den Parameter ID auslesen kann - Funktioniert aber nicht, ich bekomme einen 404-Error.

Gibt es für sowas eine elegantere Lösung in Drupal? Und warum funktioniert es so nicht?

Vielen vielen Dank für Eure Unterstützung,
der Jörchen

‹ problem: admintheme wechselt immer zu default theme beim klick auf "inhalt erstellen" Umstieg von PHP4 auf PHP5 => Probleme? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Was hast Du vor?

Eingetragen von profix898 (140)
am 30.08.2007 - 21:26 Uhr

Also ich hab ja keine Ahnung, was Du eigentlich vor hast ...

Zitat:

RewriteRule ^/testaufruf/([0-9]+)/(.+)/$ /test/?id=$1 [L]

Bei dieser Zeile solltest Du folgendes bedenken:
1. Position in .htaccess könnte wichtig sein
2. Kurze URLs, z.B. http://mydomain.de/testaufruf werden schon in folgende Form umgeschrieben http://mydomain.de/index.php?q=testaufruf (Deshalb in #1 der Verweis auf die Position). Wenn man Deine RewriteRule vorher zusätzlich anwendet, kommt sowas bei raus http://mydomain.de/index.php?q=testaufruf/?id=.... Und das ist sicher keine gültige Adresse.
3. Warum versuchst Du überhaupt, die Adresse umzuschreiben? Du kannst das doch wunderbar auch lassen wie es ist, oder?

Du solltest hier vielleicht ein paar Worte darüber schreiben, was Du genau realisieren willst. Ich bin sicher, es gibt dafür einen wesentlich einfacheren und eleganteren Weg.

  • Anmelden oder Registrieren um Kommentare zu schreiben

auch ohne mod_rewrite, mit URL-Alias

Eingetragen von Q-Base (339)
am 01.09.2007 - 11:02 Uhr

Hallo,

ich würde sagen, das geht ohne mod_rewrite, dafür aber in zwei Schritten.

Du hast deine PHP-Seite als Body und ich nehme mal an, dass diese Seite sich selbst verlink, zum Beispiel für ein Formular oder sowas. Dann erstellst du die Seite wie gehabt. Dadurch erhält die eine ID (wie 25). Damit deine Seite aber nun unter 'testaufruf' erreichbar ist, nimmst du einfach einen URL-Alias. Das kannst du entweder in der 'Verwaltung' machen oder gleich beim Editieren im Node.

Dann editierst du deine PHP-Seite ein zweites Mal und schreibst die Links und Referenzen so um, dass daraus Pfade wie '/testaufruf?name1=value1&name2=value2' werden. Zwar hast du dann immernoch eine Query, aber du brichst dir keinen ab.

Wenn du ein wenig in der API (http://api.drupal.org) suchst, es gab mal eine Funktion, die dir die Parameter aus dem Request zurücklieferte. Ich habe schon nachgeschaut, weiß aber den Namen nicht mehr.

Ciao, Q

  • Anmelden oder Registrieren um Kommentare zu schreiben

arg()

Eingetragen von profix898 (140)
am 01.09.2007 - 16:28 Uhr
Zitat:

eine Funktion, die dir die Parameter aus dem Request zurücklieferte

Die Funktion heißt arg(). Bei einer URL wie 'domain.de/abc/def/' liefert arg(0) => 'abc' und arg(1) => 'def' etc. (siehe http://api.drupal.org/api/function/arg/5).

Wie gesagt - Ein paar Worte, was Du realisieren willst, wären aber hilfreich, wenn Du eine 'vernünftige' Antwort haben willst.

  • 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 2 Wochen 1 Tag
  • Hey danke
    vor 2 Wochen 2 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 3 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 16 Stunden
  • Da scheint die Terminologie
    vor 3 Wochen 19 Stunden
  • Kannst doch auch alles direkt
    vor 3 Wochen 5 Tagen
  • In der entsprechenden View
    vor 3 Wochen 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 5 Tagen
  • gelöst
    vor 6 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20452

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 27 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