/    Sign up×
Community /Pin to ProfileBookmark

Hey, I’d like to do something fairly simple in Javascript, I want to create a “report” button that a user can click on to report a defective link by sending it to my email.

My site right now is a lot like google images, meaning there is a toolbar at the top that remains the same and an iframe that nests third party websites that is constantly changing.

I want to get the URL of the third party website that is in the iframe and have it sent to me when a “report” button is clicked. So far, from my understanding, I should use getElementid to get the get the URL, but how do I store this url and have it sent to my email? Will this require PHP? and is there a more efficient method than getElementid?

Thanks in advance

to post a comment
JavaScript

4 Comments(s)

Copy linkTweet thisAlerts:
@scragarSep 14.2009 — I don't think the browser security will let you get the URL of an iframe, even if you set it originally.

I have to ask though, if you're assigning the iframes source why can't you also assign this to a hidden element for a form?

I would also recommend looking into the PHP mail function, rather than relying on the users wanting to sign into an email program or copy your email addresses about(for example I don't have an actual email client installed right now, I use my browser and a mail checker in my panels, it does everything I need, since most of the time I don't need to send emails, and I can do everything else I need right from my desktop :p).
Copy linkTweet thisAlerts:
@ChamzaauthorSep 14.2009 — The reason I can't use the iframe source is because the source is always changing and random on my website. This is how my website works: there is a collection

of links stored in a database, and when a "go" button is clicked, a link from the database is randomly selected and displayed in the iframe.

One thing I've done that is somewhat similar to this is removing the toolbar at the top and redirecting the page to the iframe page. Here is how I did it:

<i>
</i>&lt;a href="javascript: window.open(document.getElementById('frame').src, '_self');" id="closeframe" &gt;[Close Frame]&lt;/a&gt;


but for this, instead of displaying the link in the page, I just want to get the source and have it sent to my email.
Copy linkTweet thisAlerts:
@mityaSep 14.2009 — Javascript operates strictly within the domain it operates in only. Have a read of the same origin policy (SOP).

However, since you own the DB of links that load into the iframe, what you're trying to do is fairly simple.

If it were me, I would do everything in PHP since Javascript doesn't really have a natural role here. Do you know any? I can explain further if so.

And besides, you'll certainly need PHP (or equivalent) when it comes to the mailing.
Copy linkTweet thisAlerts:
@ChamzaauthorSep 14.2009 — I do know a bit of PHP and am willing to use it for this, although i will need some help and guidance. And sorry, I checked and the list of links I have and they are not stored in a DB, they are actually inside of a PHP array. From this array, a random link is chosen. Now, I think I can figure out a way to send an email to the administrator using PHP, but how would I &#8220;get&#8221; the link that is displayed in the iframe? That is what I am having trouble with and thought that is where I would need JS.
×

Success!

Help @Chamza spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.2,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,

tipper: @Samric24,
tipped: article
amount: 1000 SATS,
)...