Ein paar Details fehlen noch; u.A.: wo liegt die PHP-Datei, was steht drin?
Hallo,
stehe gerade auf dem Schlauch und mache sicherlich irgendwas simples falsch.
Ich versuche gerade einige AJAX-Features in einen Shop einzubauen (z.B. dass alle paar Sekunden neue Produkte geladen werden). Das ginge zwar ohne weiteres, in dem ich einfach direkt auf die Datenbank zugreife, allerdings würde ich gerne diverse Funktionen und Klassen nutzen, die der Shopcode bereit stellt.
Wenn ich nun im AJAX ($.post Funktion von JQuery) die php-file angebe, die ich erstellt habe, kommen diverse Meldungen wie "Direct access is not allowed" oder es erscheint eine Benutzername/Passwort Abfrage, wie man sie von einer htaccess file kennt.
Gibt's da irgendeinen Trick oder einen korrekten Weg, wie ich ohne Probleme auf die php dateien zugreifen und verschiedene Klassen nutzen kann?
Benutze derzeit XTC Veyton in der Version 4.0.12
Ein paar Details fehlen noch; u.A.: wo liegt die PHP-Datei, was steht drin?
Habs an verschiedenen Orten probier,
/xtCore/boxes/file.php
/Templates/xt_default/file.php
u.a.
Vom Inhalt hab ich versch. Dinge probiert, vom einfachen "echo 'test';" bis hin zu require 'xtFramework/database_handler.php' aber funktioniert alles nicht so recht.
Würds ja an einer lokalen Installation die ich aktuell noch laufen habe selbst probieren - komme aber derzeit nicht dazu.
Im Prinzip fehlen aber noch weitere Details, z.B. der Codeausschnitt, in dem der AJAX-Request abgesetzt wird; sind irgendwelche Verzeichnisse der Installation per .htaccess geschützt?
Also in recht vielen Verzeichnissen ist eine .htaccess, ja. Die sind da halt von xtc veyton aus drin.
Habe jetzt in templates/xt_default/ eine php datei drin, in der echo "test"; steht. in der js.php vom Themeordner und in xtFramework/javascript/ habe ich jetzt alles so angelegt, dass im Shop der Code
$.post("pfadzurdatei/file.php",{},function(d,state) {
alert (d);
}
aufgerufen wird. Bekomme dann die Meldung "test", funktioniert soweit also.
Allerdings würde ich jetzt gerne mit den PHP Klassen/Funktionen anbieten, wie man es in plugins etc. kann. Allerdings weiß ich nicht so recht, wie ich das anstelle. Wenn ich jetzt nämlich innerhalb der file.php irgendwelche anderen php files einfügen will, z.b. aus dem plugins Ordner, kommen so Meldungen wie "failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in ..." :/
(Test-)Inhalt der file.php sieht wie aus? Evtl. einfach die Konstante am Anfang der Datei vergessen (dazu mal die anderen PHP-Dateien anschauen)?
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)