To register for an Internet.com membership to receive newsletters and white papers, use the Register button ABOVE.
To participate in the message forums BELOW, click here


A Flash Developer Resource Site

Go Back   Flash Kit Community Forums > Flash Help > Actionscript 3.0

Reply
 
Thread Tools Rate Thread Display Modes
Old 05-16-2008, 08:23 PM   #1
bunner bob
Senior Member
 
Join Date: Feb 2008
Posts: 102
How do I modify the displayed browser url?

I have a site that consists of multiple html pages that parallel the flash site's pages - for SEO purposes. Both sets of pages use the same XML source (to avoid any appearance of cloaking).

I would like to modify the browser URL to reflect the currently displayed state. I've already got the other direction covered - when the user arrives via a deep-link URL, I pass in Flashvars using SWFObject.

I found SWFAddress, but it forces a "#" sign into the displayed URL, and there doesn't seem to be any way to turn it off. I realize it's intended to be used with named anchors, but that approach doesn't accommodate what I'm trying to do - I don't want just a single HTML page with all site content on it, using named anchors to jump around. That seems to me to be contrary to best practices - rather I should have a single HTML page for each state in my Flash site.

The approach I'm embarking on will actually use a single PHP page which will generate a custom HTML page when requested - e.g.

mysite.com/index.php?page=about

will load the "about" state text (if requested by Google) or direct to the "about" page of the SWF (if the user has Flash/javascript).


Is it possible to change th displayed browser URL through some method that's a bit more flexible than SWFAddress?
bunner bob is offline   Reply With Quote
Old 05-17-2008, 05:25 AM   #2
cancerinform
Mod
 
cancerinform's Avatar
 
Join Date: Mar 2002
Location: press the picture...
Posts: 12,702
You can create a cookie in php or a shared object in flash with the browser url and when you are in flash you can call the cookie information.
__________________

- The right of the People to create Flash movies shall not be infringed. -
| www.Flashscript.biz | Help a little girl, Ana, who has cancer. | Flashscript Biz Classes/Components | The new Event design pattern | Clothing for Haiti |
cancerinform is offline   Reply With Quote
Old 05-17-2008, 01:51 PM   #3
bunner bob
Senior Member
 
Join Date: Feb 2008
Posts: 102
Hmm - not sure I understand how that would work. How does saving a cookie (or shared object) translate into changing what's displayed in the browser url?
bunner bob is offline   Reply With Quote
Old 05-17-2008, 03:58 PM   #4
cancerinform
Mod
 
cancerinform's Avatar
 
Join Date: Mar 2002
Location: press the picture...
Posts: 12,702
I probably misunderstood . Where do you want to change the URL, in the php page?
__________________

- The right of the People to create Flash movies shall not be infringed. -
| www.Flashscript.biz | Help a little girl, Ana, who has cancer. | Flashscript Biz Classes/Components | The new Event design pattern | Clothing for Haiti |
cancerinform is offline   Reply With Quote
Old 05-17-2008, 08:31 PM   #5
5TonsOfFlax
Will moderate for beer
 
Join Date: Apr 2007
Location: Austin, TX
Posts: 5,253
Do you mean that you want to have a swf which if it was embedded in this page would change the displayed url from "http://board.flashkit.com/board/showthread.php?t=767321" to something else?

I sure hope that's not possible. Imagine the field day phishers would get out of that, when evilbastards.com (no offense to whoever owns that) can post a page that looks like it came right from bankofamerica.com.
5TonsOfFlax is offline   Reply With Quote
Old 05-18-2008, 09:19 PM   #6
bunner bob
Senior Member
 
Join Date: Feb 2008
Posts: 102
Yup - that's what I'm thinking of. You're right - prone to evil. My uses are less nefarious - I just want the user to be able to bookmark a state of the SWF and return there later.

I know current deep-linking vogue uses named anchors - I was hoping to avoid that approach, because you're still working with the same base HTML page. I want to deliver a different HTML page for each page/state IF the user (Google) doesn't have Javascript/Flash.


What I've worked out is pretty slick. I have a single PHP page (index.php) which, depending on the query string, will load the relevant state (title, body text, subnav) from an XML file. So "index.php?page=about" sets the page title to About and loads the XML body text for the About page. The SWF for the site uses the same source XML for its body text for each state - so no worries about cloaking, and no need to enter the content twice.

Google can crawl and index the whole HTML version of the site, and users following Google links to particular pages will cause the PHP file (if they have Javascript/Flash) to pass a flashvar to SWFObject so the Flash file loads the relevant (e.g. "About") state.

The only problem is, if the user comes in on "index.php?page=about", when they start clicking around the SWF, the url will remain "page=about". Not a deal-killer, but not perfect - it'd be nice if it changed to the currently chosen state.


I think you can do what you fear using SWFAddress - can't you? Or Javascript anyway - I think you can rewrite the displayed URL. You can certainly rewrite the part after the domain.
bunner bob is offline   Reply With Quote
Old 05-18-2008, 10:12 PM   #7
kortex
OOP is one letter from OOPS
 
kortex's Avatar
 
Join Date: Aug 2005
Location: New Hope, PA
Posts: 2,668
The common way that what you are talking about (sometimes known as smart URLs, the SEO friendly ones), is by using the Apache rewrite module (takes you to a page other than that displayed in the address bar).

The ability to change the URL with JavaScript is done via the window.location property, but setting this value will actually take you to that url (I have never seen it be able to change the displayed url without actually taking you to it)

I am not familiar with SWFAdrress, but the only way I am aware of displaying any other address in the address bar is the Mod Rewrite.

Any one else know more about this?
__________________
Jeremy Wischusen
Flash - Flex - LAMP - Web Developer Purple Inc
AS OOP FAQ-Best Practices Thread | Flashkit OOP Tutorials | Purple Inc (day job) | Blog

kortex is offline   Reply With Quote
Old 05-19-2008, 12:06 AM   #8
bunner bob
Senior Member
 
Join Date: Feb 2008
Posts: 102
SWFAddress uses javascript top.location.hash to change the displayed URL - it doesn't redirect, just changes what is displayed.

At least that's how I think it works - the javascript is so optimized it's pretty much indecipherable.

Still it's an interesting approach - google SWFAddress if you want to dig any deeper.
bunner bob is offline   Reply With Quote
Old 05-19-2008, 10:57 AM   #9
kortex
OOP is one letter from OOPS
 
kortex's Avatar
 
Join Date: Aug 2005
Location: New Hope, PA
Posts: 2,668
Ok I took a look at the demo for SWFAddress. It is using anchor names (the same idea that allows you to link to a specific location within a page). For example:
http://asual.com/swfaddress/samples/flash/#/contact/

Note the # character. So that would allow you to change the displayed URL without actually leaving the page since the browser thinks you are linking to a named anchor within the page. Kind of a neat trick.
__________________
Jeremy Wischusen
Flash - Flex - LAMP - Web Developer Purple Inc
AS OOP FAQ-Best Practices Thread | Flashkit OOP Tutorials | Purple Inc (day job) | Blog

kortex is offline   Reply With Quote
Reply

Go Back   Flash Kit Community Forums > Flash Help > Actionscript 3.0

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 08:28 PM.


internet.commerce
Be a Commerce Partner
 »  »  »  »  »  »  »
 »  »  »  »  »  »
 

    

Acceptable Use Policy

Internet.com
The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.