Valcha Posted December 3, 2006 Report Share Posted December 3, 2006 Sveiki. Noteikti manai problēmai ir jābūt kādam risinājumam.. Man ir cikls while { if ($fails=='bilde') $bilde = "$row[id1].$row[ext]"; else $bilde = "$row[id2].$row[ext]"; } Kā redziet, atkarībā no tā, vai $fails=='bilde' vai ne, man mainās bildes adreses pielietotais lauks (id1 vai id2). Problēma ir tāda, ka es jau pirms while zinu, kāda ir $fails vērtība, dikti glupi iekš while likt IF, kura nosacījumus zinu jau iepriekš. Es kaut kā gribētu, lai šis ifs būtu pirms while, bet iekš while mainīt tā vērtību. Vai tas ir iespējams? Link to comment Share on other sites More sharing options...
andrisp Posted December 3, 2006 Report Share Posted December 3, 2006 Pag, ja jau tu zini $fails vērtību pirms cikla sākuma un cikla laikā tā nemainās, tad kāda vajadzība no kaut kāda if bloka vispār ? Es te kaut ko nesaprotu. Link to comment Share on other sites More sharing options...
Valcha Posted December 3, 2006 Author Report Share Posted December 3, 2006 Man atkarībā no tā, kāds ifs pirms while, tiek ņemts vai nu id1 vai id2 attiecīgi. Nu es jau varētu pirms while uzrakstīt tos abus ifus, bet, whilā man ir jāzina, vai nu id1 vai id2 izmantot. Man sanāk gribi negribi nonākt līdz ifam whilā. Link to comment Share on other sites More sharing options...
bubu Posted December 3, 2006 Report Share Posted December 3, 2006 $a = "$b"; rakstīt ir dikti dumji. $a = $b; ir kā normāli cilvēki to pieraksta. Tu domāji šādi, vai? $id = ($fails == "bilde" ? $id1 : $id2); while (..) { $bilde = $row[$id]...; } btw, ja dati tajā while ciklā tev velkās ārā no DB, tad pacenties uzrakstīt pareizu kveriju, kurš atkarībā no $fails vērtības izselektēs vai nu vienu, vai to otru kolonnu. Link to comment Share on other sites More sharing options...
Valcha Posted December 3, 2006 Author Report Share Posted December 3, 2006 Bubu, tādas pēdiņas es parasti nelietoju, iesaiņojot mainīgos, nejauši pierakstījās. Vispār laikam Tev taisnība, ka jau no db ir jāatlasa tas vajadzīgais id.. Tava parādītā metode ir dikti interesanta, tagad mēģinu un pētu cauri, nebiju tādu pierakstu redzējis. :) Link to comment Share on other sites More sharing options...
bubu Posted December 3, 2006 Report Share Posted December 3, 2006 $id = ($fails == "bilde" ? $id1 : $id2); izdara pilnīgi to pašu, ko if ($fails == "bilde") { $id = $id1; } else { $id = $id2; } Link to comment Share on other sites More sharing options...
Valcha Posted December 3, 2006 Author Report Share Posted December 3, 2006 Bubu, vēlviens jautājums, pie reizes. Es parasti, atlasot while ciklā 20 darbus, pie katra pārbaudu while { if ($row[aaa]=='y') $aaa .= "aaa vērtība ir $row[aaa]="; else $aaa .= "aaa nav"; } echo $aaa; Vai to arī nevar ar to metodi līdzīgi pielietot pirms while, lai nebūtu iekš while opcionālie lauki jāpārbauda? Mēģinu eksperimentēt, nesanāk. Link to comment Share on other sites More sharing options...
andrisp Posted December 3, 2006 Report Share Posted December 3, 2006 Padomā loģiski, ja tu iznesīsi pārbaudi ārpus while cikla, tad tev tas $row['aaa'] vienkārši nebūs definēts. Kā arī pie katra cikla taču tev var atšķirties tās vērtības. Tāpēc jau tev tas IF vispār ir. Vai nu es galīgi kaut ko nesaprotu, vai arī Valcha tu prasi neiespējamas lietas. Link to comment Share on other sites More sharing options...
Valcha Posted December 3, 2006 Author Report Share Posted December 3, 2006 Tā jau laikam ir. Sorri, ņemu savu jautājumu atpakaļ. Man ideja bija biki dziļāka, bet laikam tāpat biki saputrojos. Sorrī :) Vienkārši pieļauju iespēju, ka var jau kautkā iepriekš definēt nosacījumus, bet laikam jau ne. Link to comment Share on other sites More sharing options...
J0ke Posted December 5, 2006 Report Share Posted December 5, 2006 nosacījumus var definēt mysql pieprasījumā, un nekā savādāk pēctam jau notiek datu apstrāde... Link to comment Share on other sites More sharing options...
Recommended Posts