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

[gelöst] PHP-Frage: ?-Zeichen wird nicht korrekt ausgegeben?

Eingetragen von Ionit (995)
am 25.08.2010 - 15:28 Uhr in
  • Allgemeines zu Drupal
  • Drupal 6.x

Hallo,

ich versuche gerade einen Link mit einem ? (Fragezeichen) in der URL per PHP auszugeben.

Der Code lautet.

print l((t('Bewertung schreiben')), 'node/add/bewertungen/' . $node->nid . '?destination=' . urlencode(drupal_get_path_alias('users/'. strtolower($account->name))));

Leider wird aber das Fragezeichen in '?destination=' im html-Code als %3F ausgegeben - weil der Link ein Nodereference-Link ist und Nodereference mit %3F nicht klar kommt, erhalte ich ständig die Fehlermeldung "Referenced content not found".

Ersetze ich im Browser %3F per Hand durch ?, klappt alles wunderbar.

Leider schaffe ich es aber nicht per PHP gleich das Fragezeichen richtig auszugeben - es wird ständig codiert.

Könnte mir jemand sagen woran das liegt bzw. wie ich das Problem lösen kann?

Danke und Gruß

Matthias

‹ [gelöst] User Verwaltung [gelöst] Thread im Forum schließen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Sind zwar meine ersten

Eingetragen von Ionit (995)
am 25.08.2010 - 15:49 Uhr

Es sind zwar meine ersten PHP-Gehversuche aber ich habs jetzt rausbekommen.

Ich weiß zwar immer noch nicht warum das Fragenzeichen als %3F ausgegegebn wird aber mit ...

print l((t('neue Bewertung schreiben')), 'node/add/bewertungen/' . $node->nid, array('query' => array('destination' => urlencode(drupal_get_path_alias('users/'. strtolower($account->name))))));

funktioniert es und dei URL wird korrekt dargestellt.

Drupal rockt!!!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hinweis: Der Text innerhalb

Eingetragen von Sense (917)
am 25.08.2010 - 15:59 Uhr

Hinweis: Der Text innerhalb der t() Funktion muss in Englisch sein, damit er korrekt übersetzt werden kann.
Wohin soll denn nach der Bewertung weitergeleitet werden, also wo kommt das $account her?

sense-design.de | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Sense, wie oben

Eingetragen von Ionit (995)
am 25.08.2010 - 16:27 Uhr

Hallo Sense,

wie oben geschrieben - ich mache gerade meine ersten PHP-Gehversuche.

Um den Code (oben) zu bekommen habe ich mir aus verschiedenen Threads "Code-Schnipsel" zusammen gesucht.

z.B. von http://www.drupalcenter.de/node/29776#comment-105892

Du wirst jetzt sicher lachen aber ich dachte "t" steht für "title" bzw. "text".

Also t('neue Bewertung schreiben') steht für "neue Bewertung schreiben" soll als Link-Title verwendet werden.

Ich sehe nun auch, dass das Käse war .... PHP + API sind für mich - momentan noch - chinesisch ... ich arbeite aber dran ..

Gruß Matthias

Nachtrag:
Der gesamte Code lautet:

<?php
if (arg(0) == 'user' && is_numeric(arg(1))) {
 
$account = user_load(arg(1));
  if (isset(
$account->uid)) {
   
$node = content_profile_load('model', $account->uid);
    print
l((t('neue Bewertung schreiben')), 'node/add/bewertungen/' . $node->nid, array('query' => array('destination' => urlencode(drupal_get_path_alias('users/'. strtolower($account->name))))));
  }
}
?>

Das war vielleicht ein Marathon um den Code zusammen zu bekommen aber er funktioniert. ;-)

"t" entferne ich jetzt noch.

Drupal rockt!!!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Probier doch mal

Eingetragen von Sense (917)
am 25.08.2010 - 16:25 Uhr

Probier doch mal Folgendes:

<?php
if (arg(0) == 'user' && is_numeric(arg(1))) {
 
$account = user_load(arg(1));
  if (
$account->uid) {
   
$node = content_profile_load('model', $account->uid);
    print
l('neue Bewertung schreiben', 'node/add/bewertungen/' . $node->nid, array('query' => drupal_get_destination()));
  }
}
?>

sense-design.de | online solutions | Do not hack core!
Drupalcenter Verhaltensregeln | Threads bitte auf [gelöst] stellen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Sense, danke für den

Eingetragen von Ionit (995)
am 25.08.2010 - 16:40 Uhr

Hallo Sense,

danke für den Code aber leider ist der für mein Problem nicht ganz geeeignet.

Das alleinige

$node->nid, array('query' => drupal_get_destination())

würde dafür sorgen, dass der User z.B. auf "user/1" zurück geleitet wird ...

Bei mir sollen sie aber auf das Profil + Name zurückkehren z.B. "users/benny" ... deshalb benötige ich immer noch

urlencode(drupal_get_path_alias('users/'. strtolower($account->name)))

dazu.

Es klappt jetzt aber wunderbar - dank Dir für die Hilfe.

Schöne Grüße

Matthias

Drupal rockt!!!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Blockregionen per CCK Feld ausblenden
  • [erledigt] drupal 7 - read more ausblenden
  • Drupal7 für eine Produktvergleich Seite
  • Marinelli 3, Admin-Layer
  • #ajax Funktionalität in einem Field Widget
  • Image: Bildupload erst beim Speichern des Nodes
  • Views Accordion - Header Elemente nebeneinander
  • Wie kann ich Theme AUTOMATISCH umstellen, wenn sich Benutzer einlogen?
  • Überprüfung von Artikeln, die Benutzer geschrieben haben
  • Target des Weiterlesen-Links ändern?
  • CCK Auswahlfelder während des Betriebes ändern/erweitern oder in Textfeld umwandeln
  • Url Alias zerschossen - (SET SQL_BIG_SELECTS=1)
Weiter

Neue Kommentare

  • in die template.php im
    vor 46 Minuten 54 Sekunden
  • da es bisher keine etablierte
    vor 57 Minuten 3 Sekunden
  • Also die lösung ist einfach
    vor 4 Stunden 15 Minuten
  • Und warum schreibst Du die
    vor 7 Stunden 13 Minuten
  • Jep, so hab ich eine View
    vor 7 Stunden 41 Minuten
  • Nimm dazu doch das Modul
    vor 8 Stunden 6 Minuten
  • okay, vielen dank :)
    vor 8 Stunden 16 Minuten
  • _target-Attribut für Links in node.tpl.php einfügen
    vor 8 Stunden 31 Minuten
  • Hallo Jonny und willkommen
    vor 9 Stunden 4 Minuten
  • Hast Du Dir schon mal die
    vor 9 Stunden 59 Minuten

Statistik

Beiträge im Forum: 173955
Registrierte User: 15480

Neue User:

  • ghs2f1efs
  • Neoskop
  • habicht09

» Alle User anzeigen

User nach Punkten sortiert:
stBorchert5516
quiptime4713
Tobias Bähr3874
wla3805
md3777
bv3700
Thoor3678
Alexander Langer3282
dereine2635
Exterior2571
» User nach Punkten
Zur Zeit sind 2 User und 16 Gäste online.

Benutzer online

  • ghs2f1efs
  • uaith

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Showroom
  • » Forum
  • » Drupalchannel
  • » Ü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
  • Bücherecke

Quicklinks III

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

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed Drupal Podcast
  • 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