Flashhilfe.de - Flash Community

Wie bekomme ich die Url der Seite, auf der mein Flashfilm embeded ist? [Flash CS3]

 


AntwortenRegistrieren Seite1  

Devacc#1
Benutzerbild von Devacc
Beiträge: 3
Registriert: Aug 2010

10.08.2010, 16:41

Hallo zusammen,

habe ein Widget gebaut, das Besucher meiner Seite auf anderen Seiten einbinden können. Jetzt möchte ich natürlich wissen auf welcher anderen Seite der Flashfilm eingebunden wurde.
Die swf Datei ruft beim Abspielen ein PHP Skript auf, um bestimmte Inhalte zu laden und ich habe schon versucht mit $_SERVER den Referer zu bekommen. Aber das hat leider nichts gebracht. Da bekomme ich ja nur die IP Adresse des Users, der sich den Flashfilm gerade anguckt.

Gibt es eine Möglichkeit, dass mir der Flashfilm sagen kann, wo er gerade geladen wurde (aktuelle, fremde URL o.ä.). Beispielsweise wenn der Film hier im Forum eingebunden wurde will ich mitbekommen, dass der Film auf "flashhilfe.de/XXX" eingebunden wurde.

Vielen Dank und viele Grüße.
Peter
Schlagwörter: extern geladen, URL
Sebastian#2
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

10.08.2010, 21:27

Mit _url sollte das gehen.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
Kerstin77#3
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

10.08.2010, 22:55

Hi,

mit AS3:
ActionScript:
1root.loaderInfo.url


Grüße,
Kerstin
Wer Rechtschreibfehler findet, darf sie gerne behalten.
Devacc#4
Benutzerbild von Devacc
Beiträge: 3
Registriert: Aug 2010

Themenautor/in

11.08.2010, 16:47

Hallo Sebastian und Kerstin,

ich habe beide Ansätze probiert aber ich bekomme damit nur die URL von wo aus der Flashfilm geladen wurde, also meine Eigene. Ich möchte ja die URL, wo der Flashfilm eingebunden wurde, haben.

@Sebastian: In deinem Link steht sogar "Retrieves the URL of the SWF, JPEG, GIF, or PNG file from which the movie clip was downloaded".

In Javascript mach ich einfach
ActionScript:
1document.URL

und fertig.

Kann ich das irgendwie mit Flash an meinen Server senden? Oder versteh ich da was grundsätzlich falsch?

Danke!
Peter
Devacc#5
Benutzerbild von Devacc
Beiträge: 3
Registriert: Aug 2010

Themenautor/in

12.08.2010, 17:21

Ich habe meine Frage auch in einem englischsprachigen Forum gepostet und bin mit einem kleinen Tipp sodann auf die Lösug gekommen.

Hier mal mein Code:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var location:String = "unable to retrieve window.location" ;
         
try {
     // try to call javascript to get window.location
   location = ExternalInterface.call ("window.location.href.toString") ;
} catch (error:SecurityError) {
     /*
     if Flash vars set like (allowScriptAccess = 'never') or (allowNetworking = 'internal')
     catch the SecurityError and extract the window.location url out of the error.message
     */

     var search:RegExp = /.+cannot\saccess\s(.+)\./i ;
     var matches:Array = String(error.message).match (search) ;
              
     if (matches && matches.length > 1) {
        location = matches[1] ;
     }
}


Ich schaue, ob ich mit Javascript die aktuelle URL bekomme. Ist das, wie bei Facebook, verboten fange ich die Fehlermeldung ab und parse die error message nach der aktuellen URL. Denn in der Fehlermeldung heißt es sowas wie "Security Sandbox Violation" und "cannot access http://www.facebook...". Das funktioniert super und nun kann ich tracken wo mein Widget embedded wurde.

Vielleicht kann ja einer die Antwort gebrauchen.
Grüße...
Peter

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2021 Sebastian Wichmann - Flashhilfe.de