Solved

How can I dynamically display an external page in an iframe?

Posted on 2010-09-24
7
263 Views
Last Modified: 2012-05-10
I'd like to have a single page at my site where I could dynamically display an iframe of an external URL with my branding above it, so that a URL like http://www.mysite.com/view.php?URL=www.cnn.com would automatically display in this layout:

http://cl.ly/6b7e8801e41034045e22

the way StumbleUpon's top banner looks (doesn't have to be that url structure)

Is there a way to do this in PHP or jQuery?

Thanks,

Nathan
0
Comment
Question by:nbierm65
  • 3
  • 2
  • 2
7 Comments
 
LVL 40

Expert Comment

by:gurvinder372
ID: 33753425
if the iframe's id attribute value is 'iframeId' then

$("#iframeId").attr("src", "http://www.mysite.com/view.php?URL=www.cnn.com");

you can put this line whenever you want to update the iframe's content
0
 
LVL 7

Expert Comment

by:ziceva
ID: 33753454
Why would you need it to be "dynamic"?

You can simply have view.php look like this:
<html>
<head>
<title>Whatever</title>
</head>
<body>
<div>
##Your Branding HERE##
</div>
<iframe id="the_iframe" src=<?php echo $_GET["URL"]; ?>></iframe>
</body>
</html>

Of course, you need a little CSS & stuff...

By "dynamic" one would understand that AFTER what I the code I just gave is loded, you what to change the content of only the iframe which would require a little javascript "magic" like this:

in the branding <div> you would have a button:

<input type="button" value="Other URL" onclick="document.getElementById('the_iframe').src='http://www.google.ro'">

That [i]dynamically[/i] loads www.google.ro in the iframe when pressed.
0
 

Author Comment

by:nbierm65
ID: 33753500
Maybe 'dynamic' is the wrong word. What I mean is that I would type

http://www.mysite.com/view.php?URL=www.cnn.com

and see cnn.com in the iframe, and then type  

http://www.mysite.com/view.php?URL=www.espn.com

and see espn.com in the iframe, without any adjustments to any code--ideally without even any need to click an input button in a branding div. So in essence, how to get this

<?php echo $_GET["URL"]; ?>

to pull the external URL right from here:

http://www.mysite.com/view.php?URL=www.espn.com

without any other steps. Does that make sense?
0
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 
LVL 7

Accepted Solution

by:
ziceva earned 500 total points
ID: 33753562
for this to work: <iframe id="the_iframe" src="<?php echo $_GET["URL"]; ?>"></iframe>

The URL has to begin with http://
You can tweak it a little bit, and will work either way:

<iframe id="the_iframe" src="<?php echo  substr($_GET["URL"],0,7)=="http://"?$_GET["URL"]:"http://".$_GET[URL]; ?>"></iframe>

This works if you access:
http://www.mysite.com/view.php?URL=www.espn.com
or
http://www.mysite.com/view.php?URL=http://www.espn.com
0
 

Author Closing Comment

by:nbierm65
ID: 33753623
got it, thanks!

http://nathanbweb.host22.com/try/iframe/extiframephp.html?URL=http://www.cnn.com

my question got posted twice by mistake, and in the other thread someone gave me a JS solution, if anyone's curious or would prefer that:

http://bit.ly/bhApLl
0
 
LVL 40

Expert Comment

by:gurvinder372
ID: 33753666
@nbierm65: Did the jquery solution not worked?
0
 

Author Comment

by:nbierm65
ID: 33753790
I wasn't sure how to try it, since it seemed to be creating an iframe within which the entire URL string was called as the source. Also, it seemed that each URL would have to be hardcoded into the jQuery. (Maybe I misunderstood what you proposed.) I was looking for the iframe to call only the external URL after parsing it from the URL string (if that makes sense; I may have my terms jumbled). If you have a way to do that, so that a page like is automatically produced in jquery (and the cnn.com can be changed to any URL just by typing it into the browser bar):
http://nathanbweb.host22.com/try/iframe/extiframe.html?URL=http://www.cnn.com

I'll see if there's a way to go back and award multiple points, or re-post it as a jQuery-only question and award your solution.
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
echo button 13 48
Correct this jQuery code for opening div. 24 12
jqplot Pie Chart 2 18
How to fetch your row in php 14 13
What is a Lightbox? A Lightbox is the effect you see when you click, for example, an image and the screen fades out and up pops the same image but in its full size dimensions. There are lots of Lightbox effects for jQuery. Problem is they are a…
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now