Jump to content
php.lv forumi

Recommended Posts

Posted

Man ir problēma izveidot valodu pārslēgšanu.

 

tātad ir saits, piemēram, www.manalapa.com un ir nepieciešami valodu linki, piemēram, lv un en.

Uzspiežot uz lv vai en aizejam uz www.manalapa.com?l=lv vai attiecīgi uz www.manalapa.com?l=en, kur viss notiek.

Respektīvi - mēs pieliekm adresei beigās ?l=lv vai ?l=en.

 

Problēma ir tāda, ka lapā ir daudz rewrite rules, kas lapas pārtaisa citādā formā. Tos es nerakstīju, uzreiz nepārzinu kā tieši tie darbojas.

 

Tad, ja esmu uz lapas, piemēram, www.manalapa.com/segments vai www.manalapa.com/segments1/segments2/id1 vai vienalga kādas citas, tad izveidotie linki formā ?l=lv un ?l=en nestrādā.

Piemēram, esot lapā www.manalapa.com/segments es kabinu klāt www.manalapa.com/segments?l=lv, kas ir aplami.

 

Kāds būtu korekts risinājums?

Posted

Te nav runa par to, kur valodas ID tiek glabāts... Ticu, ka tas būt «kā slēdzis» — nevis pašā linkā ar tiks glabāts tas ID.

 

Vari parādīt savu «.htaccess»?

Posted
Problēma ir tāda, ka lapā ir daudz rewrite rules, kas lapas pārtaisa citādā formā.

what? Kur tur ir problēma? Rewrite rules iekš .htaccess vai iekš "rūtera"?

Posted

what? Kur tur ir problēma? Rewrite rules iekš .htaccess vai iekš "rūtera"?

 

Es domāju, ka viņam ir problēma, ka lapā ir sarakstīts visur href="/links/links/", nevis tiek izmantots rūteris, lai konstruētu linkus, tāpēc arī varētu rasties mērens čakars...

 

Izeja, kā jau tika minēts, ir glabāt valodu cepumā, nevis $_GET parametros.

Posted

Tas nav vislabāk, tas ir visvienkāršāk.

 

Tas gan, piebildīšu, ka glabāt valodas identifikatoru saites daļā ir principā viena priekšrocība - valoda ir piesaistīta saitei, nevis konkrētā lietotāja sesijai. Tas nozīmē, ka google varēs normāli parādīt rezultātu meklēšanas rezultātos dažādās valodās.

Posted

Nu, ja es glabāju tomēr to valodu cepumā vai sesijā, vienalga... PIeņemsim, ka tā glabāju, tā nav problēme.

Tas ko, es nezinu, kā uztaisīt tieši pašu valodu switchu?

 

Teiksim, esmu tagad angļu valodā (default). www.manalapa.com/sadala/1

Tagad gribu pārlikt valodu uz latviešu. Spiežu uz latviešu. Kas jādara?

 

Rewrite Rules es īsti nevaru parādīt.

Posted (edited)

Ja es uztaisu <a href="?lang=ru">RU</a>, tad esot adresē www.manalapa.com/sadala/?lang=ru sanāk, kas nestrādā, jo tas nav "normāls" GET (vai arī es kļūdos???).

Edited by renathy
Posted (edited)

Ir tā, ka es esmu http://manalapa.com/edit/ un man ir <a href="?lang=lv">LV</a>.

Tā es aizeju uz http://rafic.co.uk/edit/?lang=lv, bet rezultātā $GET['lang'] neko neatrod.

 

Kāds varētu būt iemesls, kāpēc neatrod to $_GET ['lang']?

Pēc linka nospiešanas es aizeju uz index.php, kur lapas sākumā izdrukāju var_dump ($_GET), tad man izdod array(1) { ["p"]=> string(4) "edit" } 

 

Respektīvi, tur laikam kkāds Rewrite rule kko izbojā?

Es atradu tādu rindu: RewriteRule ^([a-zA-Z0-9_-]+)/?$ /?p=$1 [NC,L]

Vai šī var būt tā, kas kaut ko man izbojā?

Edited by renathy
Posted

yep, tā izskatās. Reāli varētu būt, ka rewrite rule pārraksta Tev _GET. Kāds ir Tev htaccess? Lapas swičojas no tā _GET[p] ? Izmanto kādu rūteri? Pašveidots mehānisms?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...