Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][AJAX][SMARTY] Ajax i smarty przebudowanie szablonu lub include
XP'ek
post 6.08.2013, 17:41:11
Post #1





Grupa: Zarejestrowani
Postów: 263
Pomógł: 9
Dołączył: 3.05.2009
Skąd: Wroc

Ostrzeżenie: (0%)
-----


Witajcie,

potrzebuję zrobić element który będzie dynamiczny w szablonach smarty. Dokładniej chodzi mi o czat i nie wiem jak to zrobić... można jakoś odświeżyć includowany plik lub wczytywać zmienną z odświeżaniem jej questionmark.gif Może ktoś już coś takiego robił i może mnie nakierować ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
lobopol
post 6.08.2013, 19:12:06
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

Ostrzeżenie: (0%)
-----


Opcji masz kilka, ale najprościej będzie Ci zaimplementować coś takiego z użyciem ajax, na stronie co jakiś cza/zdarzenie pobierasz informacje z serwera i za pomocą javascriptu dopisujesz je do kontenera w którym masz zawarty chat. Zobacz przykładowe implementacje https://github.com/search?q=ajax+chat&ref=cmdform


--------------------
Go to the top of the page
+Quote Post
XP'ek
post 7.08.2013, 16:22:20
Post #3





Grupa: Zarejestrowani
Postów: 263
Pomógł: 9
Dołączył: 3.05.2009
Skąd: Wroc

Ostrzeżenie: (0%)
-----


zrobiłem przeładowanie całego #content przy pomocy load. Stworzyłem contr. Ajax z publiczną funkcją czat wchodzi i wczytuje /ajax/czat natomiast pliki js nie działają już do niego tak jak było na początku mam na myśli kasowanie itd. i jest to troszkę mało efektowne ...


więc tak odpuściłem smarcza przy wykonywaniu i opieram swoje zapytanie na podstawie pobierania printowanej listy z adresu natomiast po pierwszym odświeżeniu listy przez ajax już nie działa ikonka usuwania i edycji ...

js odświeżania
Kod
    function ajax_czat() {                                      
        $.ajax({
          url: "/ajax/czat.html",
          async: true,
          type: "GET",
          data: "",
          dataType: "html",
          success: function(data) {
            $('#czat').html(data);
            $("#loader").html("");
          }
        });
    }

i kod js'a odpowiedzialny za usuwanie
Kod
    $('a.coquette16-delete').on('click', function(){
        var id =($(this).attr('data-item')); //#id ukrytego input, val() czyli wpisz wartość.
        var url = "/czat/remove.html";                                                    
        $(document).ajaxStart(function() {
            notify('Ładowanie... ', "Trwa usuwanie wpisu.", {
                icon: '/templates/blue/img/icon/coquette/32x32/info.PNG'
            });    
            $("#loader").html("<img src='/templates/blue/img/loading/ajax-loader.gif'> Trwa ładowanie zawartości.");                  
        });                                                              
                                                                      
        $.ajax({
            url: url,
            type: "POST",
            dataType: 'json',
            data: {
                "date[id]":id
            },  
            success: function(response) {
                console.log(response);  
                if (response.status == 'ok') {                                  
                    notify('SUKCES', "Wpis usunięty.", {
                        icon: '/templates/blue/img/icon/coquette/32x32/accept.png'
                    });                      
                    ajax_czat();  
                } else{                                    
                    notify('ERROR', "Podczas usuwania wystąpił niespodziewany błąd.", {
                        icon: '/templates/blue/img/icon/coquette/32x32/warning.png'
                    });  
                }    
            },
          error: function(){                                  
            notify('ERROR', "Podczas usuwania wystąpił niespodziewany błąd.", {
                icon: '/templates/blue/img/icon/coquette/32x32/warning.png'
            });  
          }
        });                
    });


kod php wygląda na zasadzie pobrania listy następnie pętla robi tr'ki i wstawiane są do tabeli czat
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 06:04