Quantcast
Channel: OXID Community Forum
Viewing all articles
Browse latest Browse all 6951

jQuery ajax autocomplete problem Smarty error: unable to read resource

$
0
0
Hi,

ich habe mittels jQuery und ajax eine Autovervollständigung in die Suche eingebaut.

Mein Javascript:
Code:

        var obj = $('#searchParam').autocomplete({
            autoFocus: false,
            minLength: 4,
            source: function( request, response ) {
                $.ajax({
                    url: 'http://meineshopadresse.de/index.php?cl=my_ajax_cl',
                    dataType: "json",
                    contentType: "application/x-www-form-urlencoded; charset=utf-8",
                    data: {
                        name_startsWith: request.term,
                        type: 'search'
                    },
                    success: function( data ) {
                        response( $.map( data, function( item ) {
                            return {
                                label: item.label,
                                value: item.value,
                                url:  item.url
                            }
                        }));
                    }
                });
            },
            select: function( event, ui ) {
                if (ui.item.url) {
                    window.location.href = ui.item.url;
                }
            }
        }).data("ui-autocomplete");
        obj && (obj._renderItem = function (ul, item) {
        //Add the .ui-state-disabled class and don't wrap in <a> if value is empty
            if(item.value ==''){
                return $('<li class="ui-state-disabled">'+item.label+'</li>').appendTo(ul);
            }else{
                return $("<li>")
                .append("<a>" + item.label + "</a>")
                .appendTo(ul);
            }
        });

Mein passender Controller sieht gekürzt so aus
(es wurden nur die Datenbank abfragen weggekürzt):
PHP Code:

<?php
class my_ajax_cl extends oxubase
{
    public function 
render()
    {
        
parent::render();

        
/* Teil der Datenbankabfrage weggekürzt aus Platzgründen 
            $result ist ein Array welches das Ergebniss der Datenbankabfragen enthält. */

            
if(empty($results)) {
                
$results = Array();
                
$this->renderJson($results);
            } else {
                
$this->renderJson($results);
            }
        }
    }

    function 
renderJson($json) {
        
ini_set('display_errors'0);
        
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
        
header("Last-Modified: " gmdate"D, d M Y H:i:s" ) . "GMT" );
        
header("Cache-Control: no-cache, must-revalidate" );
        
header("Pragma: no-cache" );
        
header("Content-type: text/json");
        echo 
json_encode($json);
        return 
null;
    }  
}
?>


Das ganze funktioniert auch soweit. Er zeigt mir Ergebnisse an.
Leider spuckt er mir im php.log folgenden Fehler aus:

PHP Warning: Smarty error: unable to read resource: "" in /srv/www/htdocs/core/smarty/Smarty.class.php on line 1093

Wie kann ich diesen "Fehler beheben? Habe dazu leider nichts in google gefunden und auch nicht im Forum.

Viewing all articles
Browse latest Browse all 6951

Trending Articles