Pereiti prie turinio

CodeIgniter Sortavimas


Rekomenduojami pranešimai

Sveiki,

 

Darau sortavima ir iskilo logine problema.

 

http://puu.sh/d2mtv/178a7d247e.png

 

Isejo per aplinkui padaryti kad tie patis paspausti sortavimo migtukai nesikartotu linke, bet pavizdziui pasirinkus sortuoti "atliekos pavadinima" ismeta viska gerai atliekosPavadinimas/test1+1 bet kai noriu kad kartu sortuotu dar ir "kategorijas" tuomet ismeta tik kategorijas atliekosKategorija/Radviliškio+kuro+bazė o noriu kad ismestu atliekosPavadinimas/test1+1/atliekosKategorija/Radviliškio+kuro+bazė

 

Tikiuos ka nors supratot ka noriu paklausti... as suprantu kad reikia kazkokiu budu masyvus apjungti du bet turiu&@!#(*&@!#12ej8j8123e#@!J

 

Heeeeeelp....

           public function linkBugFix($link, $postName){
	$explodedLink = explode('&', $link);
	$explodedLink = array_unique($explodedLink);
	$explodedLink = array_values($explodedLink);

	$newLink = '';
	$k = count($explodedLink);
	//var_dump($explodedLink);
	for ($i=0; $i < $k; $i++) {
		if(empty($newLink)){
			$skiriklis = '';
		} else {
			$skiriklis = '&';
		}
		$newLink.= $skiriklis . $explodedLink[$i];
		//echo $newLink ."<br>";
	}

	$finalArray = array($postName => $newLink);
	return $finalArray;
}

public function selectAllSortData($sortData, $sortInformation){// Pirmas Value antras Kintamas pavadinimas
	$sortArray = $sortData;
	$sortArray = array_unique($sortArray); //Ismeta tas pacias reiksmes
	$sortArray = array_values($sortArray); //Per nauja isrikiuoja masyva
	$sortArrayDisplay = '';

	$x = count($sortArray);

	for ($i=0; $i < $x; $i++) { 
		$sortLinkArray = $this->uri->uri_to_assoc(3);//Nuoroda imeta i masyva.
		if(empty($sortLinkArray[$sortInformation])){
			$skiriklis = '';
		} else {
			$skiriklis = '&';
		}
		$sortLinkArray[$sortInformation].= $skiriklis . urlencode($sortArray[$i]);

		$newSortLink = $this->linkBugFix($sortLinkArray[$sortInformation], $sortInformation);

		$finalLink = $this->uri->assoc_to_uri($newSortLink);

		$sortArrayDisplay.='<li><a href="'. base_url() .'administrator/trashHistory/'. $finalLink .'">'.$this->displayName($sortInformation, $sortArray[$i]).'</a></li>';
	}

	return $sortArrayDisplay;
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Tai kai sugebėsiu gauti laukus kuriuos vartotojas pasirinko tuomet aišku kad naudosiu SQL ir išrinksiu duomenis. Nebent pasiūlyk kaip lengviau būtų sužinoti kokius laukus vartotojas pasirinko?

 

Tai kai sugebėsiu gauti laukus kuriuos vartotojas pasirinko tuomet aišku kad naudosiu SQL ir išrinksiu duomenis. Nebent pasiūlyk kaip lengviau būtų sužinoti kokius laukus vartotojas pasirinko?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Turbūt ne vienam man čia taip, kad kuo daugiau skaitai tavo pranešimą, tuo labiau neina suvokti, nei ką tu nori padaryti, nei kas tau neišeina. Tik iškilo mintis, kad nesuvoki, ką reiškia žodis „sortavimas“.

 

Žiūrėk padariau šabloną:

 

Aš noriu padaryti [ įterpti norimą padaryti darbą ], bet man neišeina [ įterpti, kas neišeina ].

 

Taip turėtų atrodyti:

[ paveiksliukas ar tekstinis failas, kaip viskas turėtų atrodyti ]

 

Taip yra dabar:

[ paveiksliukas ar tekstinis failas, kaip viskas atrodo dabar ]

 

Žinok, tau padėti bus kur kas lengviau, jei kiti žmonės sugebės suvokti, kokia tavo problema.

Redagavo wi_lius
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Kurdamas tema jau žinojau, kad bus sunku suformuloti.

 

Dėl sortavimo. Aš manau, kad tai keleto duomenų pasirinkimas iš aibės kurie atitinka parinktus parametrus.

 

Ką aš noriu padaryti (esmė).

 

1A.Lt prekių pasirinkimas nurodant daugiau negu vieną parametrą. (be jquery)

Pvz: Dell nešiojamas kompiuteris kuris turi 8gb RAM, i7 procesorių, 500 ssd kietąjį diską.

 

 

Kas man neišeina?

Neišeina padaryti, kad skirtingų kriterijų (atliekos pavadinimas, kodas ir t.t...) grupės būtų vienam URL pvz: localhost/trashHistory/Aliekospavadinimas/1&4&8/Atliekoskodas/3&6

 

Dar yra taip.

 

Pasirinkus iš vienos kriterijų grupės kelis parametrus URL atrodo taip

Localhost/trashHistory/atliekosPavadinimas/atlieka1&atlieka2 bet jei pasirenki dar kurią nors kita kriterijų grupę pvz Atliekoskodas url atrodo taip Localhost/trashHistory/Atliekoskodas/1111&2222 nors bendrai viskas turėtų atrodyti taip Localhost/atliekosPavadinimas/atlieka1&atlieka2/Atliekoskodas/1111&2222

 

Tikiuos sugebėjau kažkiek normaliau paaiškinti.

 

Bandžiau pasiimti visa url kaip tekstą ir tada naikinti besikartojancius, bet nesigavo. Spėju per naujo isradineju dviratį bet jei ką užveskit kaip reiktų teisingiausias ir paprasčiausiai daryti.

 

Dekui is anksto už kantrybę.

 

P.s rašau per telefoną negaliu gauti normalaus interneto plius esu italijoi, vairuoju fura, dėl to smegenis praktiškai ir baigia numirti...

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Tai, ką tu apibūdinai vadinama filtravimu („sortavimas“ -> „sortinimas“ = rikiavimas).

 

Šiuo atveju standartinis CodeIgniter URL formatas nelabai tinka. Žinoma, galėtum nuspręsti, kad URL būtų tokio formato:

localhost/trashHistory/[atliekos pavadinimai]/[atliekos kodai]/[paraiškos datos]/.../
localhost/trashHistory/atlieka|kita_atlieka/123456|789012/2014-10-10/APC 123/vnt/

 

Tačiau jei reikėtų atrinkti viską tik pagal datą:

localhost/trashHistory/[visi galimi atliekos pavadinimai]/[visi galimi kodai]/2014-10-10/[visi akto numeriai]/[visi matavimo vienetai]/

 

Arba galima nuspręsti, kad „all“ ar koks simbolis reikštų visus:

localhost/trashHistory/all/all/2014-10-10/all/all/

 

Vėlgi, gauname ilgą URL, kurio reikšmingos dalys tėra „localhost/trashHistory/“ ir „2014-10-10“.

 


 

Kur kas elegantiškiau būtų su query strings:

localhost/trashHistory/atlieka|kita+atlieka/123456|789012/2014-10-10/APC+123/vnt/
localhost/trashHistory?name=atlieka|kita_atlieka&id=123456|789012&date=2014-10-10&nr=APC+123&measurements=vnt

 

Nauda pajuntama tada, kai tereikia filtruoti tik pagal datą:

localhost/trashHistory?date=2014-10-10

 

Taip pat be vargo gali sukeisti parametrus vietomis, ko anksčiau paminėtu atveju negalėtum. Būtų kur kas paprasčiau sudaryti nuorodas.

 

Tiesa, kad įgalintum query strings, turėsi pakeisti CodeIgniter nustatymus.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Kas man neišeina?

Neišeina padaryti, kad skirtingų kriterijų (atliekos pavadinimas, kodas ir t.t...) grupės būtų vienam URL pvz: localhost/trashHistory/Aliekospavadinimas/1&4&8/Atliekoskodas/3&6

 

Kažka ne taip esi suplanavęs.

 

Jei nori daryti be jQuery (JavaSrtipct), tai taip neįmanoma, nes naršyklė gali paduoti GET parametrus tik tokiu pavidalu: adresas.lt/kontroleris/funkcija?parametras1=reiksme1&parametras2=reiksme2

 

Taigi be JavaScript niekaip nesugeneruosi tokio URL

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 savaičių...

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

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

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...