Autor Zpráva
peteruu
Profil *
Dobrý deň, snažím sa zmeniť url adresy na "pekné". Na starej stránke som mal adresy typu www.stranka.com/nieco.php?id=12 chcel som ich zmenit na www.stranka/nieco/12 , to sa mi aj podarilo. No na starej stránke boli ajax-scripty ktoré mi po zmenách v .htaccess prestali fungovať. A chcem sa teda opýtať ako nato. Díky za každé nakopnutie.

Peter
Radek9
Profil
peteruu:
Zřejmě máš v AJAXu nastaveny cesty k souborům relativně. Musíš to dát absolutně. Pokud to je přesně v tom tvaru, jako jsi napsal, mělo by stačit na začátek přidat lomítko.
Chamurappi
Profil
Reaguji na Radka9:
Musíš to dát absolutně.
Raději relativně ke kořenu domény.
Radek9
Profil
Chamurappi:
Jo, to jsem myslel, špatně jsem to zformuloval. Děkuji za opravu. ;-)
peteruu
Profil *
skusim to sformulovat presnejsie lebo dana rada moc nepomohla.
stranku mam robenu cez php mam subor globals.php kde mam nahadzane funkcie potom mam subor profil_film.php v ktorom sa vola jedna funkcia z globals.php a ta funkcia vykresluje cely layout stranky.
Dalej v ramci layoutu stranky volam profil_film_form.php ktory vykresluje v obsahu konkretny text podla toho aky parameter je predany v url.

Teda pre ukazku zadam stranku wwww.stranka.com/profil_film.php?id=33 nacita sa globals.php nacita layout ktory vykresli a v hlavnom obsahu stranky vykresli subor profil_film_form.php?id=33.

Hlavny subor obsahovy co sa tyka stranky je teda profil_film_form.php a v nom mam hodeny javascript
$(function() {

$('.load_more').live("click",function() {


var 
id = $(this).attr("id2")

if(id!='end'){
    
  $.ajax({
type: "POST",
url: "profil_filmu_form.php",
data: "id2="+id,  
beforeSend:  function() {
$('.facebook_style2').append('<img src="images/facebook_style_loader.gif" />');
},
success: function(html){
    $(".facebook_style2").remove();
    $("span#updates").append(html);

}
});
  
}

return false;


});
});

tento javascript v podstate robi to ze po kliknuti na objekt z triedou "load_more" nacita udaje z databazy pomocou php a to bez refresh-u stranky.

Toto vsetko funguje.

A ja chcem pridat pekne url t.j. na miesto adresy www.stranka.com/profil_film.php?id=33 mi zobrazi www.stranka.com/profil_film/33
preto som do .htaccess pridal RewriteRule ^profil_film/([0-9]+)? profil_film.php?id=$1 [L,QSA]
ktory sice funguje teda zobrazuje url taku aku chcem ale po kliknuti na objekt z triedou "load_more" sa spravi taka vec ze znova nacita stranku tod vse. a teda ani nenacita dalsie udaje.

Snad je to napisane zrozumitelne.
Chamurappi
Profil
Reaguji na peteruu:
Problém jsme pochopili napoprvé (znalost věcí na straně serveru k tomu nebyla nutná), zkus si znovu přečíst a pochopit naše rady. Relativní cestu máš na řádku 13.
peteruu
Profil *
noo ja som to skúšal už na poprvé tam tú adersu meniť aby odkazovala od koreňa, ale robí to stále refresh celej stránky tak práve preto som to rozpísal jestli nemôže byť niekde inde závada. Prípadne či v tom .htaccess je to dobre nahodené.
Chamurappi
Profil
Reaguji na peteruu:
jestli nemôže byť niekde inde závada
Může. Přesnou diagnózu bys dostal, kdybys dodal živou ukázku.
Vykonává se vůbec ten JavaScript? Nemáš ho také přilinkovaný z relativní nekořenové adresy?
peta
Profil
Tak tam pridej pravidlo pred to, ze pokud je cesta js/, napr js/script.js, tak ma pouzit js.php?id=script.js. Podobne i pro css.
peteruu
Profil *
javascript sa nachadza v subore profil_film_form.php takze ziadne cesty tam nie su udavane.... pokusim sa nahodit na net danu stranku


uz som to nahodil na tejto adrese to funguje stare no su tam spatne adresy... a ako som už písal ja by som chcel takéto Nove
peteruu
Profil *
Nejaké nápady?
Davex
Profil
Nenačítají se ti skripty. Na všechna připojení externích JavaSkriptů aplikuj opravu, kterou si odvodíš z rad [#2], [#3] a [#8].
peteruu
Profil *
Díky moc a sorry všichni. Bud som predtym zabudol definovat celu cestu pre jquery alebo to bol nejaky problem z cache pametou.. ale ted už to fachčí...

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: