[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
XForm Captcha bei RexSEO funktioniert teilweise nicht - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Tobias Krais
Beiträge: 500
Registriert: 2. Okt 2006, 23:16
Wohnort: Lörrach
Kontaktdaten: Website

XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 12:19

Hi Jan,

ich habe eine Spezialanforderung an dein super XForm Addon: ich nutze RexSEO im meiner Maschinendatenbank. Eine Maschine ist dann eine "UnterURL" des Redaxo Artikels. Hier eine Beispiel-URL:
http://neu.profiltec.de/maschinen/kreis ... 1/#anfrage

Wenn ich auf dieser Seite einen Captcha Code einfügen möchte funktioniert es nicht, da XForm als URL für das Captcha Bild /?captcha... ausgibt. Hier ein Lösungsvorschlag (Datei classes/value/class.xform.captcha.inc.php) ersetzt Zeile 41 bis 48:

Code: Alles auswählen

    $link = $_SERVER['REQUEST_URI'];
    if(strpos($link, "?") === false) {
        $link .= '?captcha=show&'.time().microtime();
    }
    else {
        $link .= '&captcha=show&'.time().microtime();
    }
Mit der Lösung wird dir das Captcha immer angezeigt. Wäre das nicht sinnvoller?

Liebe Grüße,

Tobias

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 12:27

Hi Tobias,

du könntest natürlich auch die aktuelle Version verwenden. ;)
LG,
Xong

[ externes Bild ] Määääääääääääääääääääääääh!

Tobias Krais
Beiträge: 500
Registriert: 2. Okt 2006, 23:16
Wohnort: Lörrach
Kontaktdaten: Website

Re: XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 13:40

Hi Xong,

gute Idee, aber wie löst die mein Problem?

Liebe Grüße,

Tobi

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 14:32

Hi Tobi!
Tobias Krais hat geschrieben:gute Idee, aber wie löst die mein Problem?
Dort wird die URL anders aufgebaut, so dass der Bug nicht mehr auftreten sollte.
LG,
Xong

[ externes Bild ] Määääääääääääääääääääääääh!

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 15:39

hi,

und wenn alles nicht geht, kann man nun auch einen eigenen Link einsetzen, der dann richtig funktionieren sollte.

https://github.com/dergel/redaxo4_xform ... nc.php#L60

lg

Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

Tobias Krais
Beiträge: 500
Registriert: 2. Okt 2006, 23:16
Wohnort: Lörrach
Kontaktdaten: Website

Re: XForm Captcha bei RexSEO funktioniert teilweise nicht

19. Jul 2013, 20:35

Hi Jan,

das funktioniert perfekt. Sorry, dass ich das noch nicht gemerkt habe. Du hast im Code noch ein TODO, dass du auf das vorhandensein eines "?" in der URL prüfen möchtest. Hier die Lösung:

Code: Alles auswählen

    if($this->getElement(3) != "")
    {
      // ? vorhanden oder nicht
      if(strpos($this->getElement(3), "?") === false) {
        $link = $this->getElement(3).'?captcha=show&'.time().microtime();
      }
      else {
        $link = $this->getElement(3).'&captcha=show&'.time().microtime();
      }
    }else {
      $link = rex_getUrl($this->params["article_id"],$this->params["clang"],array("captcha"=>"show"),"&").'&'.time().microtime();
    }
 
Vielen Dank nochmals!

Liebe Grüße,

Tobias

Zurück zu „Sonstiges“