Switch!

Moderatori: janis.wd, Vecākie lietotāji

User avatar
Ernijs_E
Reģistrēts lietotājs
Atbildes: 94
Pievienojies: 09 Mar 2008, 17:24
Reputācija: 0
Atrodas: Rīga, Iecava

Switch!

Post no Ernijs_E » 18 Nov 2009, 14:24

Uzstādot mājas lapā kloķi, respektīvi šāds kods:

Code: Select all

switch ($_REQUEST['lang']) {
    case 'lat':
        include_once('lang/lat.php');
        break;
    case 'eng':
        include_once('lang/eng.php');
        break;
    default:
        include_once('lang/eng.php');
        break;
}
P.S. Protams kodam priekšā ir <php>. :)

Š is skripts man ir index.php failā, bet ieejot lapā, index.php man rāda, ka nav definēts default, jeb
Notice: Undefined index: lang in /var/www/html/test/index.php on line 2
Kur ir kļūda, kā to labot?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 14:32

Problēmu tas neatrisinās, bet "case 'eng'" šajā kodā ir absolūti lieks. Principā, to kodu varētu nosaukt par spamu... a par spamu draud kriminālatbildība, vai nē?

User avatar
Crow
E-žurnālists
Atbildes: 5391
Pievienojies: 10 Mai 2009, 14:22
Reputācija: 0
Atrodas: Ir

Post no Crow » 18 Nov 2009, 15:01

Cik nu man tās saprašanas no pasākuma, tev papriekšu jāpārbauda, vai _REQUEST['lang'] vispār ir definēts.

if (isset($_REQUEST['lang']))
{
// tavs "svič & keis" kods šeit
}
Дебилы, бл*ть...

User avatar
Ernijs_E
Reģistrēts lietotājs
Atbildes: 94
Pievienojies: 09 Mar 2008, 17:24
Reputācija: 0
Atrodas: Rīga, Iecava

Post no Ernijs_E » 18 Nov 2009, 16:50

Kā pērējiem šķiet?

ob1 kā lieks? :D

Tad nedarbojas vispār :P
Atvainojos, ka nav garumzimes! <p>Nenemiet launa!</p>

User avatar
drono
Lietpratējs
Atbildes: 706
Pievienojies: 14 Mar 2007, 15:59
Reputācija: 0
Atrodas: Liepāja

Post no drono » 18 Nov 2009, 17:06

Nu bet tas Request tāds tiešām eksistē?
Adreses lodziņā parādās kaut kāds index.php?lang=eng

To $_REQUEST arī varbūt var konkretizēt. Ja valodas datus padod caur adreses lodziņu, tad izmanto $_GET['lang'], ja padod caur <form>, tad $_POST[['lang'];

Var izmantot arī šitādu piemēru.
$lang=isset($_GET['lang']) ? $_GET['lang'] : "eng";

un tālāk tad switch($lang){...}

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 17:45

->Ernijs_E
hmm, nu php nekad neesmu rakstījis... valodu nezinu... bet "case 'eng': " dara to pašu, ko "default: "... tad kāda jēga no "case 'eng': "?

Vai arī tie php developeri ir izdomājuši uberstulbu sintaksi?

User avatar
foxsk8
Moderators
Atbildes: 5080
Pievienojies: 22 Feb 2007, 12:33
Reputācija: 0
Atrodas: Liepāja, www.notepad.lv

Post no foxsk8 » 18 Nov 2009, 17:59

Reāli ernija piemēra tas Eng case nav vajadzīgs.

Reāli laikam puikam nav sajēgas kā case rukā.

http://www.tizag.com/phpT/switch.php
WPX.lV - E-komercijas risinājumi

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 18:18

Code: Select all

if &#40;$_REQUEST&#91;'lang'&#93;&#41; &#123;
      switch &#40;$_REQUEST&#91;'lang'&#93;&#41; &#123;
          case 'lat'&#58;
              include_once&#40;'lang/lat.php'&#41;;
              break;
              
          case 'eng'&#58;
              include_once&#40;'lang/eng.php'&#41;;
              break;
      &#125;
  &#125; else &#123;
      
      include_once&#40;'lang/eng.php'&#41;;
  &#125;
Iesaku aizvietot request ar get/post kas nu tev nu tur ir pie tam neaizmirsti to savu request parbaudit pret visadu kretinisku datu ievadi... Pie tam notice vispar nav janjem veraa, izmet pa logu savu error reportingu (zemaki kaki par e_warning neko nenozimee, tas ir tikai taa, zinashanai) :>


Emmm un vai es jau mineju, ka shadi valodas parsledz tikai dulburi, mhh? :> Tu ko gatavojies katraa requestaa galaa kabinaat valodas req? :>

Sheit aktiveejas manaa parakstaa esosjaisjjj gadijums-


/aizdedzina erniju/


Edit: zinasjanaijjj undefined index nozimee to ka nav atrasts array index, ta ka $_REQUEST by default ir array, tad index te ir 'default' ieksh $_REQUEST['default'] :> skaidrsj?
Last edited by Andress on 18 Nov 2009, 18:30, edited 3 times in total.
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

rATRIJS
Reģistrēts lietotājs
Atbildes: 321
Pievienojies: 06 Mar 2009, 15:34
Reputācija: 0
Atrodas: Rīga

Post no rATRIJS » 18 Nov 2009, 18:19

Jā - tam "eng" keisam tur nav īpaša vajadzība būt, bet tas, manuprāt, nav nekas slikts, ka viņš tur ir. Š ajā piemērā viņš, varbūt arī, ir patiešām lieks, taču ja keisi ir daudz, tad, manuprāt, definēt visus ir tikai pareizi. Tas padara kodu uzskatāmāku un ērtāk maināmu, ja, piemēram, vajag nomainīt noklusēto darbību.
Apple un Biibele FTW!!!

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 19:57

Andress, tu uzrakstīji to pašu marasmu, tikai vēl perversākā veidā... kur zāli ņem, izskatās laba...

rATRIJS
Reģistrēts lietotājs
Atbildes: 321
Pievienojies: 06 Mar 2009, 15:34
Reputācija: 0
Atrodas: Rīga

Post no rATRIJS » 18 Nov 2009, 20:16

Ä€ un vēl kas - include_once() izmantošanu, šajā gadījumā, labāk ir aizstāt ar include()
Apple un Biibele FTW!!!

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 20:43

ob1 wrote:Andress, tu uzrakstīji to pašu marasmu, tikai vēl perversākā veidā... kur zāli ņem, izskatās laba...
Koa? :D Kur ir marasms? Excelents loghical flow - ja ir ir uzstadiits request vars, sledzam iekšā switchu, ja nav, ņemam defaulto valodu. nu bik var palaabot, ja ir tikai 2 valodas

Code: Select all

if&#40;$_REQUEST&#91;'lang'&#93;  && $_REQUEST&#91;'lang'&#93;  == 'lat'&#41;&#123;
 include&#40;'lang/lat.php'&#41;;
&#125;else&#123;
 include&#40;'lang/eng.php'&#41;;
&#125;
Bet neviens jau neteica ka var bez switcha (tb vajag vinjam) :D
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 21:12

if($_REQUEST['lang'] && $_REQUEST['lang'] == 'lat')

hmm, vai ar:
if($_REQUEST['lang'] == 'lat')
nepietiktu?

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 21:17

ob1 wrote:if($_REQUEST['lang'] && $_REQUEST['lang'] == 'lat')

hmm, vai ar:
if($_REQUEST['lang'] == 'lat')
nepietiktu?

Defaultā valoda 'eng' arī taču jaiekļauj ja nav norādīts ka lang ir lat :) un lai nerastos notice kas šam ta nepietiek ir japarbauda vai request arrayaa eksistee mainigais ar tadu keyu (lang)
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 21:20

pag, ja nav 'lat', tad izpildīsies "else" vai ne? Vai arī php sintakse ir savādāka?

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 21:58

ob1 wrote:pag, ja nav 'lat', tad izpildīsies "else" vai ne? Vai arī php sintakse ir savādāka?

jaa, ja nav lat ta izpildisies else, bet vispirms japarbauda vai lat eksistee, jo cik atceros neparbaudot producees e_onotice bridinajumu. laikam. :D neesmu testejis :D nu var jau ari wnk if($_REQUEST['lang'] == 'lat'){include }else{blah blah blaah}
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 22:00

beidzot, Andress, tikai nevis "var jau", bet "required".
:)

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 22:20

ob1 wrote:beidzot, Andress, tikai nevis "var jau", bet "required".
:)
nevis "required" bet "var jau", ar manu fraami tas butu shaadi

Code: Select all

$lang = clean&#40;check&#40;format&#40;$_REQUEST&#91;'lang'&#93;&#41;&#41;&#41;;
if&#40;reg_set&#40;$lang&#41; && $lang != false &&  $lang === 'lat'&#41;&#123;
do blah blah....
&#125;
Viss atkarigs kas jaadara... Nevar ta vienkarshi palugt sanjemto izpildit, doma kas notiks ja

Code: Select all

$_REQUEST&#91;'lang'&#93; = "$_SESSION&#91;'id'&#93;&#41;&#123;echo $db_password;&#125;elseif...."; 
etc ? :)
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 22:30

ok, Andress, php nepārvaldu... samudīji nepajokam... es jau tikai par tīru semantiku - bez spama. Bet patīkami diskutēt par valodu kuru nerubī, vai ne?
:)

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 22:43

ob1 wrote:ok, Andress, php nepārvaldu... samudīji nepajokam... es jau tikai par tīru semantiku - bez spama. Bet patīkami diskutēt par valodu kuru nerubī, vai ne?
:)
Es diemžēl rubiju :D reizēm liekas par daudz ^^

(Brīžos kad pa pohām mēģinu desas biezumu maizei aprēķināt ar tam izveidotu app) ^^
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 22:50

ok, Andress, nāc pie manis kursos - es mācu kā programmēt... nav svarīgi kādā valodā...
:D

P.S. man algoritmu teorija uzspēj nostrādāt par tad, kad kafijas krūze krīt no galda... ninzas varētu mani apskaust... :D

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 23:08

ob1 wrote:ok, Andress, nāc pie manis kursos - es mācu kā programmēt... nav svarīgi kādā valodā...
:D

P.S. man algoritmu teorija uzspēj nostrādāt par tad, kad kafijas krūze krīt no galda... ninzas varētu mani apskaust... :D
tu domāji "kodēt"? :D Jebkurā laikā ^^
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 23:09

nē, kodēt tu māki, spriežot pēc paraugiem, ko publicēji... es mācu programmēt.

User avatar
foxsk8
Moderators
Atbildes: 5080
Pievienojies: 22 Feb 2007, 12:33
Reputācija: 0
Atrodas: Liepāja, www.notepad.lv

Post no foxsk8 » 18 Nov 2009, 23:19

Kungi, kāpēc tik sarežģīti, nu reāli index.php?lang=eng / lv / utt.... defolto iemetam piemēram lv un pēc tam iemetam if emty { $lang = 'lv lang'. } etc

Tas ir priekš tam, lai ja users ievada index.php?lang=fox :D :D dabotu vai nu paziņojumu vai pārmestos uz defolto lv.

Š eit jau tie varianti ir 101.
WPX.lV - E-komercijas risinājumi

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 18 Nov 2009, 23:29

drono visu kulturāli paskaidroja.
vienīgie 2, kas par tēmu ierosināja nodefinēt defaulto: fox + drono. labi, ka vēl neizskanēja piedāvājums apklusināt notici ar error_reporting(E_NONE) :D

btw, produkcijas vidē nedrīkst rādīties 'notice' līmeņa ziņojumi, tiem jābūt izslēgtiem. Vai nu novāc error_reporting(E_ALL) sākumā, vai arī uzliec error_repoting( E_ALL & ~E_NOTICE );
Last edited by usver on 18 Nov 2009, 23:36, edited 1 time in total.

User avatar
WerNeo
Lietpratējs
Atbildes: 1805
Pievienojies: 14 Aug 2007, 01:27
Reputācija: 0

Post no WerNeo » 18 Nov 2009, 23:29

Skatos, Ob1 kādreiz dikti mācījies algoritmu teoriju. :)

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 23:34

aha, WerNeo, esmu gan... patiesībā D.E.Knutu sāku lasīt tad, kad programmēt jau biju iemācījies... un sapratu, ka šamējais māk to visu sakarīgi paskaidrot... lai gan dažas kļudiņas arī viņam ir...

-> usver
līks ir kods ko iepostēja nevis mans... aizej izgulies.

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 18 Nov 2009, 23:39

ob1: da ladn, pofik. spams bija no tevis, un kopā ar vārdiem "mācu programmēt, ne kodēt" izskanēja viduvēja iesācēja ieteikumi, nevis normāls, kompakts kods. Piemērs: nafik mācīt jaunatnei if (){ } else if(){ } else { .. }, ja runa ir par switch.
Last edited by usver on 18 Nov 2009, 23:41, edited 1 time in total.

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 23:40

usver. bļin. kur bija "viduvēja iesācēja ieteikumi"?

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 18 Nov 2009, 23:43

tas pats arī ir - veidot if(){ } ķēdes.
nu nekādi neradina pie labās prakses ar switch() lietošanu.

normāls kods šajā gadījumā:

Code: Select all

<?php
 $lang = &#40;isset&#40;$_GET&#91;'lang'&#93;&#41; && !empty&#40;$_GET&#91;'lang'&#93;&#41;&#41; ? $_GET&#91;'lang'&#93; &#58; 'eng'; 
 switch&#40;$lang&#41;&#123;
   case 'lat'&#58;
     include&#40;'lat.php'&#41;;
     break;
   case 'eng'&#58;
   default&#58;
     include&#40;'eng.php'&#41;;
     break;
 &#125;
viss - gan nodefinēts defaultais gadījums, gan paturēta iespēja pievienot jaunas opcijas. moš asi to tā izteicu, bet apnicis redzēt if(){ } else if(){ } garumgarā kodā, kur hārdkodēti visi iespējamie varianti. tam jau svičs ir domāts :)
Last edited by usver on 18 Nov 2009, 23:48, edited 2 times in total.

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 18 Nov 2009, 23:45

foxsk8 wrote: Š eit jau tie varianti ir 101.
Tb 1. Atkarigs no parejaa koda. Ka jau usver teica, E notice ir liekas, nevajadzigs shits :)
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 18 Nov 2009, 23:56

interesanti, usver, nafig tavā kodā ir "case 'eng': "? Ja šo rindu naherizēs, vai kaut kas progas izpildē mainīsies? Nu jā, mainīsies - kods būs vieglāks un proga izpildīsies nedaudz ātrāk... hmm, tad tāpēc daudzas latvijas lapas tā bremzē?

P.S. hmm, interesanti - mācīt specus valodā, kuru es pirmo reizi redzu... bet izskatās, ka ķirzakam taisnība - pasaule ir pilna ar mūjābeļiem, kas uzdodas par krutiem speciem.

User avatar
WerNeo
Lietpratējs
Atbildes: 1805
Pievienojies: 14 Aug 2007, 01:27
Reputācija: 0

Post no WerNeo » 19 Nov 2009, 00:01

ob1 wrote:aha, WerNeo, esmu gan... patiesībā D.E.Knutu sāku lasīt tad, kad programmēt jau biju iemācījies... un sapratu, ka šamējais māk to visu sakarīgi paskaidrot... lai gan dažas kļudiņas arī viņam ir...

-> usver
līks ir kods ko iepostēja nevis mans... aizej izgulies.
Negribu sākt offtopic, bet.. jau sen ir pierādījusies patiesība, ka programmētāja galvenā un lielākā kļūda ir tā, ka uzskata - viņa programmā nav kļūdas. :)

P.S. Gadījums iz uņivera. C++ un algoritmu teoriju pasniedz viens cilvēks. Kārtoju kaut kādu sesiju.. Mana programma failu atver vienreiz un aizver tikai, kad izeju no programmas. Pasniedzējs man aizrāda, ka tas neesot pareizi. "Tīri" esot pareizi katru reizi no jauna vērsties pie faila un pēc tam aizvērt(uzreiz pēc faila izmantošanas). Es "uzkāros"!.. un manu "devītnieku" izglāba tikai kursa biedrs, kas pateica manā vietā: "viņa programma strādā ātrāk, jo nevirina n reizes to failu!" :) Nu un tālāk jau es biju pats gudrs aizstāvēties. :D Toties, sīkāk ieskatījies kodā, pasniedzējs tāpat atgrada bugu.
Last edited by WerNeo on 19 Nov 2009, 00:04, edited 1 time in total.

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 00:04

WerNeo, pasniedzējam bija taisnība. Bet viņš bija pārāk samierniecisks. Pie manis Tu ieskaitē izgāztos.
Last edited by ob1 on 19 Nov 2009, 00:05, edited 1 time in total.

User avatar
WerNeo
Lietpratējs
Atbildes: 1805
Pievienojies: 14 Aug 2007, 01:27
Reputācija: 0

Post no WerNeo » 19 Nov 2009, 00:05

Pasniedzējam vienmēr taisnība. Tāpat kā sportā - tiesnesim!

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 00:06

WerNeo - Think!

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 19 Nov 2009, 00:07

ob1: tu uzskati, ka māci specus, bļaujot "if() rulez de world un citu konstrukciju pasaulē nav"? tad turpini vien mācīt specus. Es tik parādīju uzskatāmu piemēru, kā izmantot switch() + kā apvienot 2 gadījumus: "kad ir cita valoda" un "kad valoda nav saprotama". Pasaule nesākas un nebeidzas ar vienu if() un 2 iespējām, varianti mēdz būt arī sarežģītāki.
atbildot uz jautājumu:
WerNeo: gadījumā, ja programma noloko failiņu tikai savai rakstīšanai ar win32api funkcijām un uzkaras - manuprāt, ieguvēji būtu visi. pasniedzējs laikam šokā par tādu privātīpašnieciskumu.
Last edited by usver on 19 Nov 2009, 00:14, edited 1 time in total.

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 00:09

nē, usver, specus nevajag mācīt - tie paši visu zina... a jūs, lohus, der pamācīt... kā ķirzaks par dzelžiem pieteicis svēto karu, tā es - par programmēšanu.

User avatar
WerNeo
Lietpratējs
Atbildes: 1805
Pievienojies: 14 Aug 2007, 01:27
Reputācija: 0

Post no WerNeo » 19 Nov 2009, 00:35

Ob1. Tāpēc jau ne katrs losis par pasniedzēju Universitātē strādā. Pasniedzējam ir jābūt samiernieciskam un jāpieņem argumentēti viedokļi no studentu puses. ;)

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 00:38

Hmm, WerNeo, vēlreiz pārlasīju Tavu postu par failu virināšanu... var jau būt ka tev ir taisnība tajā gadījumā, nezinu detaļas... tā ka sorrrry, dzērumā pasteidzos ar spriedumu.

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 19 Nov 2009, 00:46

ob1 wrote:nē, usver, specus nevajag mācīt - tie paši visu zina... a jūs, lohus, der pamācīt...
bļin, cilvis atnāk paprasīt par switch() konstrukciju.
es uzrakstu korektu, ekstendojamu piemēru ar prasīto konstrukciju un pakomentēju par noticēm. Tu baisi gribi taupīt baitus un izlaist norādi, kas ir defaultais vēlamais variants un saukt citādi domājošos par lohiem? laimīgu taciņu, vāries vien tālāk savā sulā. brīnos tikai, kāpēc tu ar tik varenām zināšanām neesi pārprogrammējis XP kerneli tā, lai tas lidotu bez optimizācijas uz 1. pentiuma.

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 00:49

piever pāksti, usver. Un ja virini to, tad pastāsit na koi hren vajag "case 'eng':" tavā kodā.

rATRIJS
Reģistrēts lietotājs
Atbildes: 321
Pievienojies: 06 Mar 2009, 15:34
Reputācija: 0
Atrodas: Rīga

Post no rATRIJS » 19 Nov 2009, 00:50

a nafig vispār tur zarošanos - metam

Code: Select all

include&#40;'lang/' . $_GET&#91;'lang'&#93; . '.php'&#41;;
un viss būs baigi forši un zibenīgi.

ob1: pasaki lūdzu - cik ļoti lapa ātrāk izpildīsies lapa ja izņems to vienu case? Kā jau rakstīju iepriekš - viens tāds "lieks" case padara kodu nedaudz pārskatāmāku un nekādi ātruma uzlabojumi nebūs novērojami. Daudz vairāk var ietaupīt uz citām lietām.

un vispār var rakstīt arī tā (redzams būs tikai viens ifs yo):

Code: Select all

function set_lang&#40;&#41; &#123;
  $accepted_languages = array&#40;'lat', 'eng'&#41;;
  $lang = &#40;in_array&#40;$_GET&#91;'lang'&#93;, $accepted_languages&#41; ? $_GET&#91;'lang'&#93; &#58; 'eng';
  include&#40;"lang/$lang.php"&#41;;
&#125;
Apple un Biibele FTW!!!

User avatar
Crow
E-žurnālists
Atbildes: 5391
Pievienojies: 10 Mai 2009, 14:22
Reputācija: 0
Atrodas: Ir

Post no Crow » 19 Nov 2009, 00:56

Defensive Programming, khmm hmmm, sabāzt pēc iespējas vairāk lieka koda, lai uzlabotu koda lasāmību.
ÄŒo ta šito esmu kaut kur jau redzējis...

if (yes) then {
do something;
} else
if (no) then {
do nothing; // but not something, you know!
} else {
; // we have only yes and no - this will never be executed, but compiler won't mind
}

Pārsteidz jūsu spēja no beigtas mušas izpūst ziloni. Tai pat laikā ļoti interesanti palasīt :)
Дебилы, бл*ть...

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 01:00

damncrow izteica manas domas... +1

Lieks kods ir lieks. Nav attaisnojuma. Ja gribi lasāmību, tad lieto komentus. Hmm, specs tāpat sapratīs, vai vajag comentus priekš lamera?

User avatar
foxsk8
Moderators
Atbildes: 5080
Pievienojies: 22 Feb 2007, 12:33
Reputācija: 0
Atrodas: Liepāja, www.notepad.lv

Post no foxsk8 » 19 Nov 2009, 01:43

Xe, te jau laikam daži vēl aizmirsa priekš tās valodas cookies piemest klāt, vai sesiju :D Kā jau minēju ir X varianti i man pieņemsim ir diži pofigs, vai pasūtītājam patīk case vai if. Jau jau reiz ir tādas funckijas, tad kāpēc viņas neizmantot. :) Ja nu vēl kādam gribās ko samazināt, lai lieto kaut vai gzip.
WPX.lV - E-komercijas risinājumi

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 19 Nov 2009, 09:22

ob1 wrote:Ja šo rindu naherizēs, vai kaut kas progas izpildē mainīsies? Nu jā, mainīsies - kods būs vieglāks un proga izpildīsies nedaudz ātrāk... hmm, tad tāpēc daudzas latvijas lapas tā bremzē?
Tu kļudies. Un ja tu raksti programmas, kuras nav "idiotu", "WTF" un citu gadijumu drošas, tad atvaino, no manis piemēram klients nesanāks. Tu taču neesi tik glups lai nezinātu kas ir koda loģiskā plūsma, so ja ir iespējama ārēja iedarbība, kā tas ir šeit ar $_REQUEST, tad ir jaapdomā visi, pilnigi visi aspekti un jaizsargājās pret negaidītu pieprasijumu (TEST^ to tik vien gaida kā atrast nefiltrētu GET vai POST). Un tiesi tāpēc DEFAUL gadijums IR nepieciešams, tobiš, ja neviens no definētajiem gadijumiem netiek izmantots, un ir vienalga kur tas default ir- switchaa, fora, elseifaa vai vel sazin kur, DEFAULT IR JÄ€BŠªT! Es nezinu ko un kā tu tur programmē bet ja tu to ari šādi, svētais karš būtu jāsāk pret tevi, ar PTAC priekšgalā.

ob1 wrote:nē, kodēt tu māki, spriežot pēc paraugiem, ko publicēji... es mācu programmēt.
Jā, kodēt es māku, pie tam salīdzinosi labi. :) un es nedomāju alkaholisko dzērienu lietošanu.
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

ob1
Reģistrēts lietotājs
Atbildes: 2959
Pievienojies: 23 Mar 2009, 22:01
Reputācija: 0
Atrodas: Sigulda

Post no ob1 » 19 Nov 2009, 09:35

Nu jā, Andress, default ir vajadzīgs, to es neesmu noliedzis, es tak par rindu "case 'eng': " kasos.

usver
Reģistrēts lietotājs
Atbildes: 311
Pievienojies: 04 Okt 2009, 14:53
Reputācija: 0

Post no usver » 19 Nov 2009, 09:45

ob1 wrote:piever pāksti, usver. Un ja virini to, tad pastāsit na koi hren vajag "case 'eng':" tavā kodā.
ob1: dzērumā tu pārāk daudz atļaujies brūķēt muti.
Vai tu dzīvē arī acīs sauc par lohiem cilvēkus, kas tev oponē vai arī tik kruts esi tikai internetā? Lielisks paraugs jaunatnei, kā onka kļūst par ķildīgu, stūrgalvīgu, pašapmierinātu alkoholiķi, ja vakaros dzer alu.

kam vajadzīgs case 'eng': ? Lai norādītu, ko darīt, ja izvēlēta angļu valoda.
kam vajadzīgs default: ? Lai forsētu angļu valodas izvēli, ja izvēlēts nav nekas.

Sēdi un lasi - http://phpmission.com/Tutorial6-Switch.php Īpašu uzmanību pievērs fall-through konstrukcijām valodā, par kuru tik viszinoši spriedi. Pirms gudri muldēt, ka nah tas vajadzīgs, ja reiz pasaulē var visu ierobežot uz 2 variantiem - cilvēki tā dara, jo tas ir ērti. Arī reālā kodā tas notiek, ja nezināji - reālos projektos, kur ir ne tikai pārgudra d*ršana 3 rindiņās: http://www.google.lv/search?hl=lv&clien ... default%3A"

Tava atšķirība no drunk_lizard ir tā, ka viņš runā par lietām, ko labi saprot un lieki nekakā, ja redz, ka otrā pusē cilvēks sajēdz, ko runā, nevis tikai kusli brēc pēc palīdzības. Bet tu kasies par sīkumiem ka "vsje visi lohi, odna ja umnaja, v belom paļto staju krasivaja". Un vispār - ko tu te vēl dari? Tev bija jāzaigo gabaliņu virs zemes savā miestā, lai programmētāji no tuvām un tālām malām nāk paklanīties tev - "PROGRAMMĒTÄ€JAM!!!!111VIENSVIENS~!!!!".

User avatar
Andress
Reģistrēts lietotājs
Atbildes: 567
Pievienojies: 13 Jūl 2009, 15:31
Reputācija: 0

Post no Andress » 19 Nov 2009, 10:11

usver wrote: kam vajadzīgs case 'eng': ? Lai norādītu, ko darīt, ja izvēlēta angļu valoda.
kam vajadzīgs default: ? Lai forsētu angļu valodas izvēli, ja izvēlēts nav nekas.
... ja izvēlēts nav nekas VAI izvēlēts, tas ko nav paredzēts izvēlēt (piem random string)

Tu nekļūdies. In case- pateici to ko es domāju, tikai labu gabalu saprotamāk :>


/me pieraksta - jāmācās komunicēt :D
Diemžēl Latvijas IT industrija no ārpasaules atpaliek par vismaz 10+ gadiem. Mentalitāte?

Pievienot atbildi

Return to “Web veidošana un problēmas”