Основная проблема, которую я обнаружил, заключается в том, что контроль над внешней информацией может существовать только в том случае, если в html-коде для встраивания имеется код allowScriptAccess, например:
<param name="allowScriptAccess" value="always">
и
allowScriptAccess="always"
В теге.
Это немного поздно для меня, поскольку я не могу сказать всем, кто встраивает мой плеер, чтобы добавить эти строки на свой сайт, но теперь ... В любом случае, тот, кто хочет скрыть, может легко удалитьлинии. Поэтому я переименовал SWF-файл ... и теперь каждый, кто выполняет удаленное встраивание, должен проверить и получить новый код.
Вот код AS2, который работал:
function geturlhttp() {
//urlPath = ExternalInterface.call("window.location.href.toString");
urlPath = ExternalInterface.call("eval","document.location.href");
//both work, try which one is bet
}
geturlhttp();
var lv:LoadVars = new LoadVars();
lv.var1 = urlPath;
lv.var2 = title; //an internal variable, the name of the file
lv.sendAndLoad("http://www.somesite.test/tracker.php",lv,"POST");
Таким образом, отслеживание работает только на моем собственном сайте, а не на внешних удаленных сайтах встраивания, которые появляются пустыми или «нулевыми» в sql.
А вот код PHP, который я сделал с помощью SQL.Я только что-то сделал для вставки и собираюсь позже поработать над отображением и выделением ...
<?php
//POST needs to be secured, this is just a test :)
$url = $_POST['var1'];
$title = $_POST['var2'];
$dbhost = "127.0.0.1"; // almost always localhost.
$dbname = "x"; // Database Name, In our case, its news
$dbuser = "x"; // Database Username
$dbpass = "x"; // Databse Password
$connect = mysql_connect("$dbhost","$dbuser","$dbpass");// Connecting to Database
mysql_select_db($dbname) or die (mysql_error()); // Selecting Database
$sql= "INSERT INTO tablename (urlrow, titlerow) VALUES ('$url','$title')";
$result = mysql_query($sql);
?>