| Autor | Zpráva | ||
|---|---|---|---|
| saman Profil * |
#1 · Zasláno: 20. 7. 2013, 12:13:32
Zdravím.
Prosím o radu zkušenějších. Potřebuju aby jsem pomocí podmínky vyřadil tenhle tvar: ted_ne= a povolil jen tvar: ted_ne=1,2 nebo ted_ne=proc Jedná se mi ošetřšní adres,ale to asi psát nemusím proto by neměl trvat na znaku _ Poradí nebo raději napíše někdo tvar podmínky? Děkuju předem if(ereg('^([0-9]{1,3}\.){3}[0-9]{1,3}$',$ur)){
$uri[] = $ur;
} |
||
| Str4wberry Profil |
#2 · Zasláno: 20. 7. 2013, 12:22:05
Úplně jasný mi dotaz není, ale nebylo by lepší použít
parse_str a potom ověřovat hodnotu ted_ne? Nebo ten obsah už je v $ur? Potom by mělo stačit testovat, zda je hodnota rovna „1,2“ nebo „proc“.
Mimochodem, co to má dělat? |
||
| saman Profil * |
#3 · Zasláno: 20. 7. 2013, 12:34:36 · Upravil/a: saman
Má to odstraňovat přebitečné Get pro stránkování. Všechno už mám, ale chybí jen podmínkou prázdné pole odstranit.
Napíše mi někdo prosím správný tvar pro podmínku? Děkuju Třeba mě prudí adresa: test.php?t1=2&t2=&t3=&t5=1 a proto se snažím docílit: test.php?t1=2&t5=1 |
||
| saman Profil * |
#4 · Zasláno: 20. 7. 2013, 13:47:06 · Upravil/a: saman
Prosím, potřebuju jen podmínku pro test=neco asi to ereg neumí. Nikde na internetu nemůžu najít nic co by mě nakoplo
Jste tu fakt frajeři :-) Já si to vyřeší jako vždycky sám :-) Vůbec nechápu proč sem pořád lezu. Vždycky mi to tady stojí jen čas a nakonec si to vyřeším sám. Jak jsem řekl :-) Mám to hotové a opět moc děkuju všem účastníkům :-)) |
||
| jenikkozak Profil |
#5 · Zasláno: 20. 7. 2013, 14:32:22
saman:
„nakonec si to vyřeším sám“ Jak? „Jste tu fakt frajeři :-)“ Nemůžeme za to, že jsi lepší… Nepleť si ale tuhle diskusi s chatem. Nemá cenu sem sypat dotazy, na které jsi schopen si do čtvrt hodiny odpovědět sám. |
||
| saman Profil * |
#6 · Zasláno: 20. 7. 2013, 14:51:16 · Upravil/a: saman
Dobře, tak schválně sem dám ještě poslední věc na kterou hledám řešení a jsem zvědavej jestli někdy bude zodpovězena. Sice by mi pomohlo, když by mi někdo napsal ted řešení, ale už teď vím, že si to vyřeším sám. Jde mi jen o to za jak dlouho a jestli mi někdo odpoví. Dodatek: rozhodně si nemyslím, že jsem chytřejší. Vím, že tady jsou borci co kouknou a ví. Já jedu pokus omyl.
$kontrola = "test=".$_GET["test"]; // $_GET["test"] je ve tvaru 33,12,100,1,4
if(eregi("^[\'+\\./0-9A-Z^_\`a-z{|}~\-]+=[[a-zA-Z0-9_\-][0-9]]{1,100}$",stripslashes(trim($kontrola))))Jsem hotov a ted se s úsměvem budu dívat kdy někdo zareaguje bez prázdných slov :-) |
||
| engien Profil * |
#7 · Zasláno: 20. 7. 2013, 15:22:36 · Upravil/a: engien
@saman: Dobrý den, co na tom potřebujete vyřešit?
Tak, kde jste? Nemám čas čekat a chci to řešit hned teď. |
||
| saman Profil * |
#8 · Zasláno: 20. 7. 2013, 15:53:19
Zadání je jasné i mojí maličkosti. Nechci se opakovat a tak budu citovat :-))
engien: „kdy někdo zareaguje bez prázdných slov“ |
||
| jenikkozak Profil |
#9 · Zasláno: 20. 7. 2013, 17:09:19
saman:
„Jde mi jen o to za jak dlouho a jestli mi někdo odpoví.“ Nechápu, co se tu snažíš si dokazovat. Měl by ses zamyslet nad tím, co od druhých očekáváš a co jim nabízíš. Tady jsem ti odpověděl za pět minut, což není nijak špatný čas na to, že šlo o pracovní den a o dobu, kdy je většina slušných lidí v práci. Za poslední dobu jsi sem pod různými přezdívkami nasypal zbytečných dotazů až hanba, ale sám jsi neporadil nikomu. Ptal jsem se tě [#5], jak jsi problém vyřešil (odkazem na doporučení jsem zdůvodnil, proč se na to ptám). Odpověděl jsi mi? Ne. Prosím, nezatěžuj nás dotazy, které jsi schopen vyřešit sám pár sekund po překonání vlastní lenosti. |
||
| engien Profil * |
#10 · Zasláno: 20. 7. 2013, 17:49:35
@saman: Omlouvám se za nechápavost, ale opravdu netuším, co s tím chcete dělat. Můžete to zadání upřesnit?
|
||
| saman Profil * |
#11 · Zasláno: 20. 7. 2013, 18:59:59
jenikkozak:
kdo poradil me? |
||
| peta Profil |
[#6] saman Jaky je dotaz? Asi spatne formulovana otazka, spis zadna. Odpoved zni tedy nemas zac. Vymysleni mi trvalo asi 10s, to by mohlo byt rychlejsi nez tve napsani reseni :) Kazdpopadne odpoved fora byva obvykle 2 dny, takze obvykle to byva moje az stredne posledni moznost po nekolika minuto-hodinovem googlovani.
[#1] saman Take nechapu, ceho chces docilit. je to jen o malinko lepe formulovane nez #6. Jaky je zdroj? Co z nej potrebujes smazat? Jaky ma byt vysledek? ereg - deprecated, pouziva se preg http://cz1.php.net/preg_replace http://cz1.php.net/manual/en/function.preg-match.php http://cz1.php.net/manual/en/function.preg-match-all.php Kdyz vemu priklad ze #6... $str = "test=33,12,100,1,4"; // get nas nezajima, dulezity je cely string predtim
if(eregi("^[\'+\\./0-9A-Z^_\`a-z{|}~\-]+=[[a-zA-Z0-9_\-][0-9]]{1,100}$",stripslashes(trim($str))))
// a string potom, tu nemas zadnyTřeba mě prudí adresa: test.php?t1=2&t2=&t3=&t5=1 a proto se snažím docílit: test.php?t1=2&t5=1 Jestli to spravne chapu, tak $str postupne nabyva hodnot pole t1=2 t2= t3= t5=1 t1=2 t5=1 Pole se da poslat tez jako http://stackoverflow.com/questions/1833330/how-to-get-php-get-array index.php?id[]=1&id[]=2&id[]=3&name=john index.php?id=1,2,3&name=john http://cz1.php.net/manual/en/function.preg-match.php Example #3 Using named subpattern $str = "t1=2&t2=&t3=&t5=1"; $patt = '~\w+[\w\d]*\=[\w\d]+~'; preg_match_all($patt, $str, $matches); print_r($matches); |
||
| PostCC Profil |
#13 · Zasláno: 23. 7. 2013, 15:18:18
Já obecně moc nechápu ten požadavek, tak jen zkusím nasměrovat jak bych to asi řešil sám - k odstranění prázdných hodnot nabízí PHP funkci:
Array_Filter(); S jedním parametrem - v tomto případě: $_GET = Array_Filter($_GET); odstraní z pole proměnných metody GET všechny položky, které nemají hodnotu, resp. jsou rovny FALSE, viz: http://www.php.net/manual/en/language.types.boolean.php#language.types.boolean.casting Pokud toto řešení nevyhovuje, lze pochopitelně použít vlastní funkci (druhý parametr), která zajistí návrat hodnot do výsledného pole dle potřeby. |
||
|
Časová prodleva: 13 let
|
|||
0