PHP-Code in XenForo integrieren

JERR0W

Honorable
1 Jul 2016
2,778
2,345
#1
Hallo zusammen,

ich habe es soweit geschafft den größten Teil vom Uploaded.to-Downloader in XenForo direkt mit einzubinden. Leider scheitert es zur Zeit am Formsubmit. Spuckt mir jedes mal n Securityerror aus...

jemand ne Ahnung, wie man das lösen kann? Würde mich über jegliche Hilfe freuen, Danke!
 

ZeCke

Honorable
7 Jan 2015
3,973
3,220
#2
Likes: Sephirot

Sephirot

Well-Known Member
2 Jun 2015
1,625
1,491
#3
Schöne an so einer Software ist, dass du es perfekt modular lösen kannst und so Updates des core und anderer add-ons problemlos gehen.
https://xenforo.com/xf2-docs/dev/lets-build-an-add-on/
Wollte gerade das gleiche Schreiben.

Deren Schnittstelle ist wirklich nicht schlecht und deren ganzes System sind als Entities gemapped und du kannst letztendlich eigene Entities einpflegen und Relationen erstellen.
 
Likes: ZeCke

JERR0W

Honorable
1 Jul 2016
2,778
2,345
#4
Aktuell hab ichs so gelöst:

File: src/addons/Pages/MyPage.php

Code:
<?php
namespace Pages;
class MyPage
{
  public static function getHtml()
  {
    return 'Hello world!';
  }
}
Template node code:

Code:
<xf:callback class="\Pages\MyPage" method="getHtml"></xf:callback>
Würds eigentlich auch sehr gern so nutzen, funktioniert ansich auch wunderbar. Vom UL.TO Downloader bekomme ich auch den Traffic usw angezeigt.



Wäre nur toll, wenn ich beim Submit keinen Security error kriegen würde^^
 
9 Feb 2014
1,184
724
#5
Soll an https connections liegen das du sub/verzeichnisse nicht via https aufrufen kannst.
Versuch mal die verzeichnisse per ssl zu forcen bzw http dann.

Ansonsten mal in den error log gucken (im Verzeichnis, nicht welches übers acp einzusehen ist) oder auch mal www. Und non www ausprobieren.

Ansonsten expired token.
 

JERR0W

Honorable
1 Jul 2016
2,778
2,345
#6
Soll an https connections liegen das du sub/verzeichnisse nicht via https aufrufen kannst.
Versuch mal die verzeichnisse per ssl zu forcen bzw http dann.

Ansonsten mal in den error log gucken (im Verzeichnis, nicht welches übers acp einzusehen ist)
HTTPS Force ist an :S alles wird über HTTPS gehandled.

https://jerr0w.xyz/pages/uploaded-free/

Hab jetzt nur die Form mal drin, die ist ja nur HTML. Und da spinnt er halt rum.

Code:

Code:
    public static function getForm() {
        return '<style>input[type=text], select {
            width: 100%;
            padding: 12px 20px;
            margin: 8px 0;
            display: inline-block;
            border: 1px solid #ccc;
            border-radius: 4px;
            box-sizing: border-box;
          }
          
          button[type=submit] {
            width: 100%;
            background-color: #4CAF50;
            color: white;
            padding: 14px 20px;
            margin: 8px 0;
            border: none;
            border-radius: 4px;
            cursor: pointer;
          }
          
          input[type=submit]:hover {
            background-color: #45a049;
          }
          </style><form action="" method="post">
          <label for="fname">Uploaded.TO Link</label>
          <input type="text" name="file" id="file" placeholder="http://uploaded.net/file/abcd1234">           
          
          <button type="submit" name="submit" id="submit">Request Download</button>
        </form>';
    }
 
9 Feb 2014
1,184
724
#7
Xenforo hatte schon immer Probleme mit php scripts innerhalb nem html template.
Dann liegt es daran das der Token beim Check schon expired is. Weiss grad nicht mehr wie ichs damals mal zum laufen bekommen hab.
Könnte heute oder morgen mal gucken ob ich noch n save meines xf damals hab.
 

JERR0W

Honorable
1 Jul 2016
2,778
2,345
#8
Xenforo hatte schon immer Probleme mit php scripts innerhalb nem html template.
Dann liegt es daran das der Token beim Check schon expired is. Weiss grad nicht mehr wie ichs damals mal zum laufen bekommen hab.
Könnte heute oder morgen mal gucken ob ich noch n save meines xf damals hab.
Das wäre nice, scheint wohl wirklich am Token zu liegen.. man soll wohl irgendwie XenForo_input benutzen. ka :x

Ich les mich grad bissl rein, wär aber nice, wenn jemand ne Antwort parat hätte. Würde alles bissl schneller vorantreiben :grin:
 
9 Feb 2014
1,184
724
#9
Problem dabei is das das ul script innerhalb schon 2-3 tokens abfragt, und dank xf immer neue generiert. Die sind bei der nächste Abfrage dann schon wieder invalid.

Work around wäre Das ganze einfach son stratpage add on zu usen und da dann das Script rein zuhauen. Dann wird auch nichts in der xf DB abgefragt. (in der Theorie)
 

JERR0W

Honorable
1 Jul 2016
2,778
2,345
#10
Problem dabei is das das ul script innerhalb schon 2-3 tokens abfragt, und dank xf immer neue generiert. Die sind bei der nächste Abfrage dann schon wieder invalid.

Work around wäre Das ganze einfach son stratpage add on zu usen und da dann das Script rein zuhauen. Dann wird auch nichts in der xf DB abgefragt. (in der Theorie)
Früher gabs so ein schönes Addon für XF1 (Kotomi). Da konnte man PHP Code mit HTML usw. reinknallen und alles hat funktioniert :frowning:
 

WasserEsser

Active Member
30 Nov 2015
158
160
#15
<xf:form> wenn du mit Templates arbeitest.
Wenn du per AJAX mit XF arbeitest, solltest du XF.ajax() anstelle von jQuery nutzen.
Dann bekommst du auch keine Security Errors.
Wenn beides keine Option ist, den Token selbst einfügen.