azpage Posted March 6, 2006 Report Share Posted March 6, 2006 Nav teicamas zināšanas preg funkciju nosacījumu veidošanā. Pūlējos ilgi, bet rezultātā dažādos variantos parādās nepilnības, nestrādā funkcija kā vajag. Nepieciešams: Funkcija, kurai nodod interneta adresi, mainīgā nosaukumu un tā jauno vērtību. Funkcijai ir jāizmaina adresē tas mainīgais ar jauno vērtību, ja nav tāda, tad pievienotu. Nesanāk samainīt mainīgā vērtību, ir gadījumi, kad strādā kur maināmais mainīgais atrodas pašās beigās (aiz tā neseko neviens "&" simbols), taču tad nestrādā kad ir tas simbols. Mans pēdējais variants. $res = preg_replace('/(\?|&)(' . $name . '=)([^&|\n]*)/', '\1\2' . $value . '', $url) Nestrādā tā beigu daļa, viņam būtu jāiet līdz rindas beigām, vai līdz atrod simbolu "&" un to daļu tad no "=" samaina pret jauno vērtību. Ar $_GET neder, jo ir nepieciešamība apstrādāt vienu linku vairākas reizies. Link to comment Share on other sites More sharing options...
hmnc Posted March 6, 2006 Report Share Posted March 6, 2006 a bet tev taču vienādības zīme ir iegrupēta pie $name.. doh.. iekavas ieliec pirms = Link to comment Share on other sites More sharing options...
azpage Posted March 6, 2006 Author Report Share Posted March 6, 2006 Njee, ar to viss ir kartiibaa. Piemērs: Shadu vertibu nodod funkcijai http://adrese.lv/index.php?aaa=100&bbb=200&ccc=vertiba, kur "bbb" jasamaina pret "400" Jaiegust taatad: http://adrese.lv/index.php?aaa=100&bbb=400&ccc=vertiba taa izteiksme ieksh preg_replace visu pareizi atrod liidz "...bbb=", bet taalaak ir jaanosaka, ka jamaina ir taa dalja, kas ir liidz "&ccc=vertiba". Taapat arii ir jasamaina, ja mainu mainiigo "ccc" uz "citavert", tachu tur ir jameklee lidz rindas beigaam. Viens no tiem variantiem man sanaak, meginaju visadus variantus, tad viens, tad otrs variants, bet abi nesanaak Link to comment Share on other sites More sharing options...
bubu Posted March 6, 2006 Report Share Posted March 6, 2006 lol, kas tev par \n tajā izteiksmē? Tev urlī ir \n?? :) $res = preg_replace('/([\?&]' . $name . '=)([^&]*)/', '${1}' . $value, $url); Link to comment Share on other sites More sharing options...
ohmygod Posted March 6, 2006 Report Share Posted March 6, 2006 Es gan šādai vajadzībai pārlasu GET masīvu un linku veidoju pa jaunu, ņemot vērā to, kas man tajā jāizmaina. Elementāra funkcija, kurai tiek padots kā parametrs masīvs ar maināmajiem GET parametriem un to vērtībām... Link to comment Share on other sites More sharing options...
azpage Posted March 8, 2006 Author Report Share Posted March 8, 2006 Es gan šādai vajadzībai pārlasu GET masīvu un linku veidoju pa jaunu, ņemot vērā to, kas man tajā jāizmaina.Elementāra funkcija, kurai tiek padots kā parametrs masīvs ar maināmajiem GET parametriem un to vērtībām... Tas noder tad, ja zin, ka linkam vajadzes mainiit vienu vai vairakus mainiigos vienaa vietaa, bet ja tas var mainiities vairaakas vietaas visas web-lapas izpildes laikaa, tad tas neder, jo tad speekaa nepaliek iepriekshejas veertiibas. bubu, paldies, Tavs variants der Link to comment Share on other sites More sharing options...
Recommended Posts