Tak więc napisałem funkcję:
function load(name) { $.getJSON('/' + name + '/', function (data) { if (data.error) { $("#main").html('<h2>Error!</h2><p>' + data.error.text + '</p>'); return false; }else{ return data; } } ); }
W PHP prosty kontroler:
<?php include('actions/'.$_GET['action'].'.php'); }else{ } }else{ } ?>
No i .htaccess:
Kod
RewriteEngine On
RewriteRule ^([a-z]+)/$ controller.php?action=$1 [L]
RewriteRule ^([a-z]+)/$ controller.php?action=$1 [L]
Przy wejściu na stronę domyślnie ładuje się news.php. Mój problem polega na tym, dane będą bardzo różne np. raz potrzebuję wyświetlić news'y, raz komunikat, raz tabelę. Musiałbym dla każdego przypadku pisać oddzielną funkcję, która to obsłuży... Jednak czy istnieje jakaś możliwość napisania w miarę uniwersalnej funkcji, która pobierając dane JSON, odczytywałaby kilka wartości i dzięki nim odpowiednio wyświetliła dane. Przykładowo jeżeli to są newsy to w json przesyłam tablicę:
Kod
{"news": [
{"id": 1, "author": "fifi209", "subject": "temacik", "content": "tresc"},
{"id": 2, "author": "fifi209", "subject": "temacik2", "content": "tresc2"}
]}
{"id": 1, "author": "fifi209", "subject": "temacik", "content": "tresc"},
{"id": 2, "author": "fifi209", "subject": "temacik2", "content": "tresc2"}
]}
I teraz musiałbym wysłać jakieś dane do funkcji, aby wiedziała co z nimi zrobić...
np. funkcja musi wiedzieć, że 1 element tablicy to 1 div a w nim np. subject jest przyporządkowany do tagu html: <h2>, a content do tagu html: <p>
Mam nadzieję, że dobrze opisałem to co chcę zrobić. Z chęcią przyjmę również inne koncepcje.