Call php file as if it’s an external javascript
Posted by: WebDevJunkie in JavaScript, PHP, tags: external javascript, header, JavaScript, PHPI learned a handy trick today. I wanted to provide an external javascript so other websites could display some info from my site, but then realized it would be way better if I could somehow have them call a php file instead. Well you can.
So the page call will look just like the typical javascript call, except we are calling a php file:
<script language=”JavaScript” type=”text/javascript” src=”http://www.yoursite.info/yourfile.php”></script>
Now since you are calling the php file this way you need to make the php file appear to be a javascript document so to do that you need to add a Header property like this:
Header(“content-type: application/x-javascript”);
Then you need to make sure your output is in javascript format, since that is what you are outputting. So lets look at an example php file might look like – you can use this to try it out:
<?
Header(“content-type: application/x-javascript”);
$testvar=”what’s up doc?”;
echo “document.write(\”Bugs Bunny says: <b>” . $testvar . “</b>\”)”;
?>
Then just call that file. Notice I am using php’s echo to write out the javascript code document.write – if were to just echo it it would not show up on the page calling the javascript.
Ok, now lets get even fancier. We can pass some parameters to our file in the page call:
<script language=”JavaScript” src=”http://www.yoursite.com/yourfile.php?var=elmerfudd&ID=4″></script>
Then you can pick up those parameters in your php file using $HTTP_GET_VARS[] and do whatever you want with them.