ShopPilot > Ajax Fragen

ajaxsearch - unnötiges \" gibt error ???

(1/1)

dobra:
Hallo,

Im PS-Shop habe ich einen Fehler im ajaxsearch und kann die Ursache einfach nicht finden  :-\
Die Scripte sind die selben wie im WI-Shp wo alles korrekt funktioniert

es werden unnötige " (bzw \") übergeben die dann scheinbar den status "err" auslösen.

online "Antwort":

--- Zitat ---{"_err":"Fehler in getPattern: ","_call":{"params":"[\"merino\", 1, 0, 0, 100, 1, \"\", \"KATEG\", \"\", \"DESCR\", \"DESCR\"]","method":"getPatterns","id":0},"_status":"err"}
--- End quote ---

"JSON"



offline "Antwort":

--- Zitat ---DBD::ODBC::st execute failed: [MySQL][ODBC 3.51 Driver][mysqld-5.0.67-community-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' HOP_ITEM., HOP_ISCAT.SCID, HOP_ITEM.ITEMID   FROM HOP_ITEM INNER JOIN HOP_ISCAT' at line 1 (SQL-42000)(DBD: st_execute/SQLExecute err=-1) at Ibodata.pm line 1986.
{"_err":"Fehler in getPattern: ","_call":{"params":"[\"mer\", 1, 0, 0, 100, 1, \"\", \"KATEG\", \"\", \"ZTEXT\", \"ZTEXT\"]","method":"getPatterns","id":0},"_status":"err"}
--- End quote ---

im WI-Shop schaut die Konsole so aus:



--- Zitat ---_call    Object { params=[11], method="getPatterns", id=0}
--- End quote ---

also hier wo alles passt
{"method":"getPatterns","id":0,"params":["merino",1,0,0,100,1,"","KATEG","","BTEXT","BTEXT"]}

und m PS-Shop
{"method":"getPatterns","id":0,"params":"[\"merino\", 1, 0, 0, 100, 1, \"\", \"KATEG\", \"\", \"DESCR\", \"DESCR\"]"}

wo kommen die unnötigen "\" vor dem " her ?
suche den Fehler und vergleiche die Scripte vergeblich seit zwei Tagen
Habe testweise auch schon die Originalscripte aus dem Carshop eingebaut - selbes Ergebnis
(es geht um die *neuen* ajaxsearch-Scripte mit JSON2)

Hat bitte jemand einen Tipp für mich WO ich diesen Fehler noch suchen kann?
Habe ajaxsearch schon in viele Projekte (problemlos) eingebaut aber hier bin ich jetzt ratlos ....


Linkback: https://www.shoppilot.net/pf/index.php?topic=1538.0

ahe:
Hallo dobra,

sieht mir aus, als wenn auf die JSON::to_json() Funktion 2x auf das Ergebnis angewendet wurde.
Das ist dann also 1x zuviel und würde genau zu diesem Ergebnis führen.

dobra:
Hallo ahe,

klingt zwar logisch aber ich habe absolut keine Ahnung wo das mit dem 2x anwenden her kommt  ???

etwas habe ich noch entdeckt
wenn ich im PS-Shop (offline) die Infoseite "ajax-global" = die Seite wo die Vorlage ajax/ajax.html eingetragen ist aufrufe, bekomme ich die Meldung

--- Zitat ---This Error has occured:
parsing error 123-6 in ./ajax/ajax.html: Syntax error (word) at 1 in ,094600. at C:/Programme/IBO-Internet-Software/ShopPilot-Enterprise3/lib/CGI/Carp.pm line 319, <$file> line 23.

--- End quote ---

im Wi-Shop und im Carshop (wo die ajax-Suche ja funktioniert) kommt aber

--- Zitat ---This Error has occured:
parsing error 123-6 in ./ajax/ajax.html: Syntax error (word) at 1 in ,095306. at ajax/JSON/Parser.pm line 347, <$file> line 25.

--- End quote ---


in meiner ajax.html habe ich jetzt nur das

--- Code: ---<!--spmacro:module(ajax)

push(@INC,'ajax');
require "JSON.pm";
print "Content-Type: text/plain;charset=ISO-8859-1\n\n";
my $pCall = JSON::jsonToObj($main::input);

my %methods = ('ajaxsearch::getPatterns' => 'ajax/ajaxsearch.ipl',  # Ajaxsuche
               'dummy::dummy' => 'ajax/dummy.ipl');   # eine andere Methode

              
foreach my $m (keys(%methods)) {
  my $func = $m;
  $func =~ /^.*::(\w[\w\d]*)$/;
  $func = $1;
  if ($pCall->{method} eq $func) {
       main::read_templ_work($methods{$m},0);
     ssp::trace("called $func $m $methods($m)\n");
       &$m($pCall);
       exit(0);
  }
}
-->
--- End code ---

und ajax/JSON/Parser.pm ist die selbe wie in den anderen Shops

wenn ich den Fehler nicht doch noch finden sollte (unwahrscheinlich - ich suche ja schon tagelang vergeblich) sollten wir das dann vielleicht doch per mail machen ?
... ist ja doch mal wieder ein sehr "spezielles" Problem und vermutlich nicht von allgemeinem Interesse ;)

dobra:
habe den "Übeltäter" doch noch gefunden.

Die ajax-Scripte waren alle OK - da konnte ich keinen Fehler finden weil da keiner war  ::)

schuld was diese Zeile

--- Code: ---<script type="text/javascript" src="../js/prototype.js"></script>
--- End code ---
ganz unten nach dem __ajaxsearch::print_ToolTip__

Zeile gelöscht und jetzt funktioniert die ajax-Suche auch im PS-Shop
(allerdings die Lightbox nicht mehr - aber das ist eine andere Geschichte ;) )

Navigation

[0] Themen-Index

Go to full version
Powered by SMFPacks SEO Pro Mod | Sitemap