bravo 18 #1 Posted October 31, 2018 (edited) Report post Primitīvs valodas switch, noderēs iesācējiem, vienkāršām lapām. Protams, ka to visu var izdarīt savādāk / labāk, tomēr šis ir pavisam primitīvs variants, lai iesācējiem būtu vieglāk saprast, kas ir kas. Gatavu failu lejupielāde posta apakšā. Pamācība: Izveido failu valoda.php ar sekojošu saturu: <?php $valodas_cepums = 'valoda'; // Definējam valodas cookie nosaukumu. if(!isset($_COOKIE[$valodas_cepums])) { // Pārbaudam vai eksistē valodas cookie, ja neeksistē, tad pievienojam defaulto un definējam defaulto valodas failu, kurš tiks izmantots kamēr lapa tiks pārlādēta. // Valodas cookie ievietošanas sākums. $cepuma_nosaukums = 'valoda'; $cepuma_info = 'lv'; // Cepuma info jābūt vienādam ar valodas faila nosaukumu (bez ".php"). setcookie($cepuma_nosaukums, $cepuma_info, time() + (86400 * 30), '/'); // 86400 (1 diena) * 30 = 30 dienas. // Valodas cookie ievietošanas beigas $valodas_fails = "lv"; // Definējam defaultās valodas faila nosaukumu, kamēr lapa nav refrešota un tikko ievietotais cookie vēl nav nolasāms valoda. } else { $esoshais = $_COOKIE[$valodas_cepums]; // Šī super mega drošība neatbalsta garumzīmes un mīkstinājuma zīmes function super_droshiba($esoshais) { $esoshais = str_replace(' ', '', $esoshais); // likvidē atstarpes. return preg_replace('/[^A-Za-z0-9\-]/', '', $esoshais); // likvidē speciālos simbolus. } $valodas_fails = super_droshiba($esoshais); // Definējam valodas faila nosaukumu, balstoties uz cookie informāciju. } define('valodu_mape', realpath(dirname(__FILE__))); $valoda = valodu_mape . '/valodas/' . $valodas_fails . '.php'; // definējam valodas faila atrašanās vietu require $valoda; // Ielādējam izvēlētās valodas failu. ?> 2) Ievieto valoda.php failu sava .php faila sākumā: <?php require "valoda.php"; ?> 3) Izveido mapi "valodas". 4) Izveido valodu failus, iesaku veidot pēc "lv.php", "ru.php", "en.php" principa. 5) Izveidotajos valodas failos ievieto sekojošo kodu, un papildini to ar sev nepieciešajām frāzēm, vārdiem, dzejoļiem utt. <?php $teksts=array( // "frāzes definīcija"=>"frāzes tulkojums konkrētajā valodā" "nosaukums"=>"Language tutorial", "valoda1"=>"Latvian", "valoda2"=>"English", "izvelies_valodu"=>"Select language", "šobrīd"=>"You selected English language" ); ?> 6) Failā, kurā vēlies lietot valodas tulkojumus izmanto <?php echo $teksts['Tavas frāzes definīcija'] ?> , lai izvadītu sev nepieciešamos (pirmstam pievienotos) vārdus. 7) Elementārs valodas pārslēdzējs, kuru vari ievietot seā lapā, sev vajadzīgajā vietā. <form method="post"> <select name="lang" onchange="this.form.submit()"> <option><?php echo $teksts['izvelies_valodu'] ?></option> <option value="lv"><?php echo $teksts['valoda1'] ?></option> <option value="en"><?php echo $teksts['valoda2'] ?></option> <!-- <option value="Cookie nosaukums, kurš ir vienāds ar valodas faila nosaukumu">Valodas nosaukums</option> --> </select> </form> <?php if(isset($_POST['lang'])){ setcookie($valodas_cepums, $_POST['lang'], time() + (86400 * 30), '/'); // 86400 (1 diena) * 30 = 30 dienas. header("Refresh:0"); } ?> Valodu skripts by bravo [wam.lv].zip Edited November 1, 2018 by bravo 3 1 Share this post Link to post Share on other sites