I am sorry I was not clear - I don't need to construct the URL from Cake
- I need Cake to HANDLE this URL.
I specify the URL, the vendor generates an email containing the link,
Joe Smith receives the email and clicks on the link.
I was thinking about parsing out the URL in index.php and reconstructing
the bits into the format that Cake expects, but it seems like such a hack.
Is there something I can do with rewrite rules instead to reformat the url?
Felix Geisendörfer wrote:
> Not really a CakePHP specific question. But today is your lucky day. A)
> I'm looking for any kind of excuse to not study for my physics final
> tomorrow. B) I like playing with array, regex and urls : ).
>
> So here you go:
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
> $vendorUrl =
> toStupidVendorUrl('http://servername.com/resorts/view/12/28/4');
> debug($vendorUrl);
>
> function toStupidVendorUrl($url)
> {
> $uri = parse_url($url);
> $path = explode('/', substr($uri['path'], 1));
> $query = array();
> foreach ($path as $i => $element)
> {
> $i = ife($i == 0, null, $i);
> $query['var'.$i] = $element;
> }
> $query = http_build_query($query);
> return
> preg_replace('/^('.preg_quote($uri['scheme']).':\/\/.+\/).+$/UD',
> '\\1?'.$query, $url);
> }
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
> (Code requires CakePHP or PHP5)
>
> -- Felix
> --------------------------
> http://www.thinkingphp.org
> http://www.fg-webdesign.de
>
>
> Erich C. Beyrent wrote:
>> I have a vendor that is doing email marketing for me. They allow custom
>> fields to be specified in their content templates. However, they don't
>> support full urls as a custom field, only parts of the query string.
>>
>> I am sending them a URL like:
>>
>> http://servername.com/resorts/view/12/28/4
>>
>> and they need me to break that into:
>>
>> http://servername.com/?var=resorts&var2=view&var3=12&var4=28&var5=4
>>
>> Any ideas how to accomplish this?
>>
>> -Erich-
>>
>>
>>
>>
>>
>
> >
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---