executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

john_the_bad

Aktives Mitglied
27. April 2011
203
0
Hallo,

bei meinem bestreben die Dinge in Smary auf die "richitge" Art zu machen gibt es mehr stolpersteine als ich dachte ;)

Ich habe eine PHP Datei in der ich ein "$GLOBALS['DB']->executeQuery" ausführe. Leider geht das nicht: <b>Fatal error</b>: Call to a member function executeQuery() on a non-object..blablabla.

Ich habe die datei jetzt mal via Hook 140 eingebunden und die Query wird korrekt ausgeführt etc. Da es sich aber um ein AJAX Script handelt, bringt das nichts.

Was muß ich also tun um in einer "normalen" PHP Datei welche von einem PlugIn genutzt wird auf Samrty und executequery zugreifen zu können ?

Gibt es eigentlich die Möglichkeit einfach ein paar PHP Dateien via info.xml bekannt zu machen ?
 

exube

Aktives Mitglied
25. April 2007
140
0
Dresden
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

Hi,

in einer include Datei oder einer eigenen Klasse brauchst du da sowas:

PHP:
require_once(PFAD_ROOT . PFAD_INCLUDES . "tools.Global.php");

VG
 

john_the_bad

Aktives Mitglied
27. April 2011
203
0
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

Hi,

das ist es wahrscheinlich. Aus irgendeinem Grund will sich das Ding nicht einbinden lassen lassen, vielleicht waren deswegen meine früheren Bemühungen nicht von Erfolg gekrönt. Ist aber richtig strange :( Kann mich nicht errinern das ein require_once selbst mit absolutem Pfad von Hand nicht funktioniert hat.
 

john_the_bad

Aktives Mitglied
27. April 2011
203
0
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

OK, wir nähern uns. So geht die Query etc:

// Includes
require_once("includes/globalinclude.php");
require_once(PFAD_ROOT . PFAD_INCLUDES . "tools.Global.php");

//session starten
$session = new Session();

//erstelle $smarty
require_once(PFAD_ROOT . PFAD_INCLUDES . "smartyInlcude.php");


// mal schuaen was wir haben..
$all_tpl_vars = $smarty->get_template_vars();
print_r($all_tpl_vars);



Ich habe leider keine Ahnung warum die includes so spinnen und die vars die ich so kriege sind nur die vom Plugin, die globalen variablen fehlen mir... -> aber ich nehme an die kriege ich hier auch nicht ;)

Werde die "ShopURL" wohl in die Config schreiben müßen.
 

john_the_bad

Aktives Mitglied
27. April 2011
203
0
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

So geht es.
Hier mein Code:
// Includes
require_once("/usr/www/users/blabla/blabla/includes/globalinclude.php");

//erstelle $smarty
require_once(PFAD_ROOT . PFAD_INCLUDES . "smartyInlcude.php");

$shopurl = $smarty->get_template_vars('ShopURL');

Das dauert aber runde 450-700ms ! Ist also völlig sinnfrei. Gibt es eine Möglichkeit wirklich nur den login und das passwort für die DB zu ziehen ?

Mir würde das Zeugs aus der config.JTL- Shop.ini.php zur Not reichen ;)
 

ag-websolutions.de

Sehr aktives Mitglied
29. Dezember 2009
14.548
233

exube

Aktives Mitglied
25. April 2007
140
0
Dresden
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

Wenn du nur die Daten für einen eigenen Zugriff auf die DB brauchst: inkludiere die [shoproot]/includes/config.JTL- Shop.ini.php.

Ansonsten ist mir noch nicht ganz klar, was du machen willst ;)
"Externe" PHP Dateien verklinke ich immer in Plugin Dateien, die an Hooks ausgeführt werden. Dort sind dann alle Variablen eigentlich auch in der externen bekannt.

Beispiel:

PHP:
require_once("inc/class.MeinePluginKlasse.php");

In einer [ShopRoot]/includes/plugins/MeinPlugin/version/100/frontend/plugin.php, die an Hook 140 ausgeführt wird. In der class.MeinePluginKlasse.php dann sowas:

PHP:
require_once(PFAD_ROOT . PFAD_INCLUDES . "tools.Global.php");
require_once(PFAD_INCLUDES . "artikel_inc.php");

Funktioniert eigentlich ohne Murren.
 

john_the_bad

Aktives Mitglied
27. April 2011
203
0
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

Ich habe eine AJAX app ursprünglich für Drupal geschrieben. Funzt seit über einem Jahr ohne Probleme. Er möchte sie in seinem neuen JTL Shop haben, da habe ich sie so angepaßt das sie dort auch geht.

Aber es ist halt eine "klassiche" AJAX app mit dem passwort der SQL Datenbank im klartext etc.. Also habe ich mich entschlossen das ganze als "richtiges" JTL Modul zu implementieren.

Das mit dem Hook funktioniert halt nicht wenn die Funktionen erst auf ein Javascript Event aufgerufen werden :(
 

john_the_bad

Aktives Mitglied
27. April 2011
203
0
AW: executeQuery in "normaler" plugin PHP Datei nciht verfügbar ?

This one did the trick: require_once("../../../../../../includes/config.JTL- Shop.ini.php");

-> falls jemand einen weg kennt die smarty variablen bekannt zu machen ohne 500ms zu "verballern": her damit :)
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu JTL-Shop 5.2.3 – Google-Shoppin-Plugin 2.3.0: Mehrere Rückgaberichtlinien (DE + Ausland) bei einem Feed / return_policy_label Plugins für JTL-Shop 0
Neu VeroPay Plugin? Kampfansage gegen PayPal? User helfen Usern 54
Neu Coupon-Steuer Plugin: Korrekte Steuerberechnung für JTL-Shop Coupons Plugins für JTL-Shop 1
Neu How to properly update order status through JTL Shop plugin? Allgemeine Fragen zu JTL-Shop 4
Neu Update auf 5.6.1. – Trusted Shops Plugin erzeugt Fehlercode 500 Installation / Updates von JTL-Shop 6
Neu 🌟Neues Plugin: 35up Automatisiertes Cross-Selling Plugins für JTL-Shop 0
Neu 🚀 Pilotkunden gesucht: HS Dynamic Pricing Plugin für JTL-Shop Plugins für JTL-Shop 0
Neu Plugin: DITH Mengenrabatt – Warenkorbrabatte nach Stückzahl (mix + match), ohne Preisänderung am Artikel Plugins für JTL-Shop 0
Neu 🚀 JTL Shop Performance Check (Free): Kostenloses Plugin Plugins für JTL-Shop 0
Neu HTTP ERROR 500 - plugin installieren JTL-Shop - Fehler und Bugs 0
Neu Neues Plugin: DITH ShipNow – Versand-Countdown ⏱️ Plugins für JTL-Shop 0
Neu Paypal Plugin JTL-Shop - Fehler und Bugs 1
Neu Fragen zum KBA Finder Plugin (CiN) Plugins für JTL-Shop 1
Neu JTL Shop Brevo Plugin meldet keine Abmeldungen an JTL Shop + Kontakte landen nicht in der Willkommenssequenz Plugins für JTL-Shop 0
Neu Neues PLugin: DITH Lieferantenbestand – realistische Lieferzeiten mit Lieferanten- + Eigenbestand Plugins für JTL-Shop 0
Neu PayPal-Plugin blockiert bei PayPal-Störung Checkout JTL-Shop - Fehler und Bugs 4
Neu Teststand auf localhost - Plugin-Lizenzen abgelaufen Plugins für JTL-Shop 2
Neu Neues Plugin: JTL Closed Shop – Zugangsbeschränkung, Pre-Sale & Wartungsmodus für deinen JTL-Shop Plugins für JTL-Shop 2
Neu KI-WaWi-Workflows: Eigene KI-Endpunkte direkt aus JTL-Workflows ansprechen – ohne Plugin, flexibel und schnell Dienstleistung, Jobs und Ähnliches 3
Neu Mindestbestellwerte nach verschiedenen Lieferarten mit dem Plugin Lieferslot Allgemeine Fragen zu JTL-Shop 1
Neu PayPal Checkout Plugin (iPhone), Probleme mit PayPal-App Plugins für JTL-Shop 0
Neu Plugin: Mengenrabatt im Warenkorb nach Artikelanzahl Plugins für JTL-Shop 0
Neu 📢 Neues Plugin "JTL Translate Pro" by Nirico.de Plugins für JTL-Shop 0
Neu JTL PayPal Plugin - keine Einstellmöglichkeiten, keine Anzeige im Frontend Plugins für JTL-Shop 2
Neu Plugin-Idee: Überkäufe Lieferantenbestände & Lieferzeiten (API/CSV/XML) in Shop & Wawi Plugins für JTL-Shop 2
Neu Plugin Manager Fehlermeldung JTL-Shop - Fehler und Bugs 4
Neu Nach Update auf PayPal 2.1.0 doppelte Zahlungsarten und Ratepay Plugin erforderlich Plugins für JTL-Shop 0

Ähnliche Themen