Matiss Posted August 15, 2006 Report Share Posted August 15, 2006 Sveiki Man ir galvenā lapa (index.php) ar vienkāršiem teksta linkiem: <a href="mainLV.php">Latviski</a> <a href="mainRU.php">Krieviski</a> <a href="mainEN.php">Angliski</a> , kas atrodas teiksim uz www.vards.lv Loģiski katrs no tiem ved uz pamata lapas attiecīgo valodas versiju. Gribu uztaisīt tā, lai lietotājs, pirmo reizi izvēloties valodu iekš index.php, nākamreiz apmeklējot lapu tiktu aizsūtīts uz pirmīt izvēlētās valodas adresi. Proti, ja es izvēlos "Latviski", tad nākamreiz ejot uz www.vards.lv tieku pārsūtīts uz www.vards.lv/mainLV.php MySQL man nav pieejams, un es to arī nezinu, PHP arī nezinu, tik vien cik brīžiem ķimerējos ar gataviem skriptiem, mēģinot tos izprast. Gribēju jums pajautāt, vai šo lietu ir iespējams uztaisīt tikai ar PHP? Cik noprotu, tad te vajadzētu saglabāt lietotāja sākotnējo izvēli kādā cookie... tikai kā to izdarīt? Varbūt kāds lūdzu var atsaucīgs būt un palīdzēt? Link to comment Share on other sites More sharing options...
Blitz Posted August 15, 2006 Report Share Posted August 15, 2006 Viss ko tev vajg, aprakstits seit. http://www.php.net/manual/en/function.setcookie.php setcookie() un $_COOKIE skaties.... Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 Viss ko tev vajg, aprakstits seit. http://www.php.net/manual/en/function.setcookie.php setcookie() un $_COOKIE skaties.... Nu nav jau tā, ka to nebūtu lasījis. Lasīju pirms postot. Testēju uz lokalhosta ... nu saglabājas cepumiņš... citā lapā varu parādīt tā vērtību... bet kā to visu sasaistīt kopā... lūk to gan es nezinu. Tāpēc arī jautāju. Bet ar <?php $value = 'something from somewhere'; setcookie("TestCookie", $value); ?> jau es tik vien kā lieku uzģenerēt cepumiņu "TestCookie" ar vērtību, kuru esmu pats iedevis "something from somewhere"... es nezinu kā man pateikt, lai šī $value vērtība būtu attiecīgais tajā brīdī izvēlētais links. Link to comment Share on other sites More sharing options...
goldy Posted August 15, 2006 Report Share Posted August 15, 2006 (edited) nesmuki jau tev tur ir, ka katrai valodai sava lapa, bet ja tā tad: katrā lapā sūti attiecīgu cookie, un tad pirmajā lapā: if ( $_COOKIE['bbb'] == eng) header("Location: mainEN.php"); elseif ..... Edited August 15, 2006 by goldy Link to comment Share on other sites More sharing options...
Delfins Posted August 15, 2006 Report Share Posted August 15, 2006 switch (cookie[aaa]) { case 'valoda': header(location=lapa) ... } Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 (edited) Vai man vajadzētu tiem linkiem dot nosaukumus? proti, <a href="mainLV.php" name="LV">Latviski</a> <a href="mainRU.php" name="RU">Latviski</a> <a href="mainEN.php" name="EN">Latviski</a> utt.. un tad kautkā definēt mainīgos? Piemēram: $lang1 = 'mainLV.php'; $lang2 = 'mainRU.php'; $lang3 = 'mainEN.php'; ??? Bet kā skripts zinās, ka jūzeris ir izvēlējies tieši mainLV.php linku, nevis kādu citu? Ai.. redz kā pasteidzos... ak šitā te tas darās... labi.. pamēģināšu tā... Paldies, Goldy un Delfins. Edited August 15, 2006 by Matiss Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 Redz kā. Patiesībā tas patiesi nebija sarežģīti. Problēma, ka man nav loģiskās domāšanas. Nezinu kāpēc gribēju, lai funkcija, kas ieraksta kukijā jūzera izvēli, zinātu to jau tajā - pirmajā lapā... bet ja loģiski padomā - protams, ka pirmo reizi cilvēks izvēlēsies valodu, aizies uz lapu un tur tiks ierakstīts kukijs. nākamreiz nākot uz pirmo lapu, kukijs tiek iesaukts, tā vērtība salīdzināta un lietotājs aizsūtīts kur vajag. Eh... bet tagad cita lieta .. smejies vai raudi, kamēr kukijs nav fiziski izdzēsts, vai (laikam ekspairojies) es netieku pie galvenās (valodu izvēles) lapas... šis, sivēns, mani visu laiku sūta uz turieni, kur pats gribēju :) Kā ir, ja esmu kļūdījies savā izvēlē, un tomēr gribu citu valodu? p.s. kāpēc ideja, ka katrai valodai sava lapa, būtu slikta? Link to comment Share on other sites More sharing options...
john.brown Posted August 15, 2006 Report Share Posted August 15, 2006 Tieši tāpēc :) Taisi visu to ar inclūdēm lieliem texta gabaliem, un kaut kādu translatoru priekš interfeisa elementiem. Par interfeisa tulkošanu te kaut kur bija topiks, pameklē... Idejai, ērti to darīt ar heša palīdzību... un viss ies caur vienu failu index.php. Vai arī dublē valodas izvēlni visos failos... Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 Hmmm... tad sanāk, ka pie ši, patreizējā varianta, es normālā veidā nemaz nevaru pie tās galvenās lapas tikt? Nu jā, neesmu tik gudrs šajās lietās... include zinu... pirmā lieta ko iemācījos ar PHP darīt - inklūdot :) bet neko vairāk arī nezinu īpaši... tikai tā lūk ņemu gatavus skriptus, ķidāju, lasu, pētu, modificēju un no tā mēģinu kaut ko iemācīties... grūti nākas... nu man šajā gadījumā nav tik grūti uztaisīt trijās atsevišķas valodās... mjā... bet tas ka atpakaļ netieku uz galveno lapu ir nešpetni...zūd visa valodas izvēles kukija jēga. Oh, jā, un kā ir, ja es gribu lai kukijs neekspairo? Vai tas vispār ir iespējams? Neuzstādot kukija expire vērtību tas nobeidzās pie browsera aizvēršanas... Ja es to atstātu kā ""? Link to comment Share on other sites More sharing options...
Kristabs Posted August 15, 2006 Report Share Posted August 15, 2006 uzliec kukija expire time 5 gadi Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 Heh... tas jau man tā kā pieleca pašam :P Bet lielā problēma ir tas, ka netieku atpakaļ uz valodu izvēles lapu, ja vien fiziski neizdzēšu kukiju, vai ja tas neekspairo. Tad protams laikam vienīgā iespēja ir likt katrā no šīm trijām lapām combo boxi ar valodu izvēles iespēju... savādāk nekā? Link to comment Share on other sites More sharing options...
v3rb0 Posted August 15, 2006 Report Share Posted August 15, 2006 linku uz valodas izvēles lapu. index.php?man-nevajag-redirectu=1 un lapā raksti if(isset($_GET['man-nevajag-redirectu']) || !isset($_COOKIE['valoda'])) { // radi valodu izveles } else { // skaties kas pa kukiju un redirectee } Link to comment Share on other sites More sharing options...
john.brown Posted August 15, 2006 Report Share Posted August 15, 2006 Nu bet naf tev vispār kur tikt "atpakaļ"? Uztaisi index.php, kurā ir smuka valodu izvēlne, pēc tam, ja ir kukijs, includo atbilstošās valodas lapu. Ja nav, inkludo defaulto valodu. Un viss būs pie vietas.... Gan izvēlne, gan lapa :) Link to comment Share on other sites More sharing options...
Matiss Posted August 15, 2006 Author Report Share Posted August 15, 2006 Hm.. nezinu... varbūt pats sev radu problēmu, bet lieta tāda, ka: valodu izvēles lapa reāli būs uz teiksim: www.vards.lv, tur pat arī lapas latviskā versija, bet krieviskā būs uz www.imja.ru un angliskā uz www.name.com, pie kam - pamata saturs lapām būs vienāds tikai sākumā. pēcāk katrs savā lapā taisīs izmaiņas, kas nesinhronizēsies... paliks tikai vienota ideja... Tāpēc sākumam vajag valodas izvēli un ...jā... ja izvēlēta nejauši tomēr nepareiza valoda - iespēju atnākt atpakaļ un izvēlēties pareizo... nezinu... varbūt visu daru nepareizi, bet tāda ir tā situācija... varbūt ir citi risinājumi.. nezinu.. Link to comment Share on other sites More sharing options...
Blitz Posted August 15, 2006 Report Share Posted August 15, 2006 Jebkuraa gadijumaa lietotajam ir jabut kadai atpakaļsaitei lai nomeinitu valodu. tatad tev valodas izvele www.vards.lv. a) Ja nav kukijs tad piedāvā izvēlēties valodu. b) Ja ir kukijs tad redirektē uz www.name.lv, vai www.imja.lv utt. atkaribaa no vertibas. Tad kad lietotajs er redirektēts tad tajaa www.name.lv piemeram ir links "nomainit valodu" ar target www.vards.lv?no_redirect=1 Tad skripts zinaas ka lietotajs ir nacis mainiit valodu un neredirektees vinu projam. Un talak visu pec v3rb0 varianta. Parbadi vai lietotajs ir nacis mainit valodu: 1) Ja ir tad piedaavaa izvelni, un saglabaa kukijaa jauno vertibu 2) Ja nav nacis mainit valodu tad skaties vai ir kukijs. 3) Ja ir kukijs, tad redirektee uz attiecigo lapu, ja nav tad piedava izveleties valodu utt. Centos izstastit ar vardiem ko v3rb0 uzrakstija paris rindinaas, ceru ka saprati :) Link to comment Share on other sites More sharing options...
Recommended Posts