Auto Executing a URL from PHP code

Hi,

I need to automatically call a file from PHP.  I am currently using the HTML headder META AUTOLOAD code
-- but need to know how to set it off from PHP since I need PHP to do somthing for me first.

<?php
$ms_id=$_GET["p"];
....
....
if (!session_is_registered('mst')) {
      session_register('mst');
      $HTTP_SESSION_VARS['mst'] = $ms_id;
}
....setting some meore vars via SQL etc....
........
?>
<hr><a href="proj.buildup.log.activity.php">Edit Log</a>

This last bit needs to auto execute ... This is the manual way.

I seem to have seen a function to do this but cannot find it in my megre archives.
kokribaAsked:
Who is Participating?
 
moduloConnect With a Mentor Commented:
PAQed with points refunded (125)

modulo
Community Support Moderator
0
 
DoppyNLCommented:
you can do a simple include:

include('proj.buildup.log.activity.php');

that will include that page on the current location.

if you don't want the content to be in the current page you can use output buffering and clear the buffer afterwards.
tou can also use fopen:

fopen('http://domain.com/file.php');

in this case you have to include the full url to the file (otherwise the php won't be processed)
and you have to retrieve the actual page with a read function (you don't have to do anything else with it though).

I would go with the include, as it seems that the file is on your own server so you can make sure that the file doesn't output a thing :)
0
 
vincevincevinceCommented:
You mean you want it to finish your code, then load a new page?

in that case you should use

header("http://newlocation.co.uk");

make sure you have not echoed or outputted ANY data to the browser before this is called.  use a fully qualified URL.
0
 
ZontarCommented:
You can also use output buffering to get around the output/header issue somewhat and to process output before sending it to the browser. Look up ob_start() and ob_flush() (and related functions)  in the PHP Manual.
0
 
kokribaAuthor Commented:
Hi,
These did not seem to work but I did it this way

<html>
<head>
      <meta http-equiv="Content-Type" content="text/html">

<!- HERE IS THER NB BIT ->
      <meta http-equiv="Refresh" content="1; URL=http://wphilip/public/aplets/ic_proj_man/proj.buildup.log.activity.php">
      <title>Interrim Storage</title>
</head>
<body>
<?php
//      ther URL /filename.php?f=fileToDL&t=TypeOfFileToDL
$ms_id=$_GET["p"];
include('/incl/db.list.php');
include_once('/formal_includes/adodb/adodb.inc.php');
echo($ms_id);
$use_db = $dbs_projects;
if (!session_is_registered('mst')) {
      session_register('mst');
      $HTTP_SESSION_VARS['mst'] = $ms_id;
}
else{
      $HTTP_SESSION_VARS['mst'] = $ms_id;
}
$var_ms = $HTTP_SESSION_VARS['mst'];
include('/incl/db.connect.php');
      $sql = "SELECT proj_id
                        FROM t_proj_makup
                        WHERE t_proj_makup.id=".$HTTP_SESSION_VARS['mst'];
            $rs = $db->Execute($sql);
            $proj_find = $rs->fields[0];
      $db->close;
if (!session_is_registered('prj')) {
      session_register('prj');
      $HTTP_SESSION_VARS['prj'] = $proj_find;
}
else{
      $HTTP_SESSION_VARS['prj'] = $proj_find;
}      
$var_pj = $HTTP_SESSION_VARS['prj'];      
//include('proj.buildup.log.activity.php');
echo('<hr>'.$var_pj);
//header("Location: proj.buildup.log.activity.php");
//header("http://wphilip/public/index.htm");//aplets/ic_proj_man/proj.buildup.log.activity.php");
?>
<hr><a href="proj.buildup.log.activity.php" id="1">Edit Log if does not load automaticcally</a>
</body>
</html>
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.