Thread: php question
View Single Post
Old 05-08-2008, 12:07 PM  
mrkris
Confirmed User
 
Join Date: May 2005
Posts: 2,737
Quote:
Originally Posted by GrouchyAdmin View Post
Code:
<?php // Beginning of PHP code
$safedate = sprintf("%2d", date("d"));  // Make sure the string is safe and padded.
$mywasteofvariables = "/";  // Obviously the file's going to be in the root directory
$htmlfile = ".html";  // HTML is .html.
$filename = $mywasteofvariables . $safedate . $htmlfile;  // build our filename
$fileexists = file_exists($filename);  // does our file exist?

if ($fileexists) { // If our file exists
   $file=file_get_contents($filename);  // load our file
   $render = eval("?>".stripslashes($qbcontent)."<? ");  // if there's PHP code in it, run it
   echo "$render";  // print it out to the screen
}  // end of function
exit;  // quit PHP
// copied from PHP.net or something I dont really know what it does
if (!function_exists('file_get_contents')) {
      function file_get_contents($filename, $incpath = false, $resource_context = null)
      {
          if (false === $fh = fopen($filename, 'rb', $incpath)) {
              trigger_error('file_get_contents() failed to open stream: No such file or directory', E_USER_WARNING);
              return false;
          }
 
          clearstatcache();
          if ($fsize = @filesize($filename)) {
              $data = fread($fh, $fsize);
          } else {
              $data = '';
              while (!feof($fh)) {
                  $data .= fread($fh, 8192);
              }
          }
 
          fclose($fh);
          return $data;
      }
  }
?>
Hope this disccusion has helped u.
While using this in my own code base for a VERY large site, I ran across a bug, I have fixed it below. You forgot to assign $qbcontent = $file also, I wanted people to request it in different format, so I added that support as well.

Code:
<?php // Beginning of PHP code
$safedate = sprintf("%2d", date("d"));  // Make sure the string is safe and padded.
$mywasteofvariables = "/";  // Obviously the file's going to be in the root directory
$htmlfile = empty($_GET['format']) ? "html" : $_GET['format'];  // HTML is .html.
$htmlfile = preg_replace("/[^a-z0-9\\040\\.\\-\\_\\\\]/i", "", $htmlfile);
$filename = $mywasteofvariables . $safedate . '.' . $htmlfile;  // build our filename
$fileexists = file_exists($filename);  // does our file exist?
$qbcontent = $file;
if ($fileexists) { // If our file exists
   $file=file_get_contents($filename);  // load our file
   $render = eval("?>".stripslashes($qbcontent)."<? ");  // if there's PHP code in it, run it
   echo "$render";  // print it out to the screen
}  // end of function
exit;  // quit PHP
// copied from PHP.net or something I dont really know what it does
if (!function_exists('file_get_contents')) {
      function file_get_contents($filename, $incpath = false, $resource_context = null)
      {
          if (false === $fh = fopen($filename, 'rb', $incpath)) {
              trigger_error('file_get_contents() failed to open stream: No such file or directory', E_USER_WARNING);
              return false;
          }
 
          clearstatcache();
          if ($fsize = @filesize($filename)) {
              $data = fread($fh, $fsize);
          } else {
              $data = '';
              while (!feof($fh)) {
                  $data .= fread($fh, 8192);
              }
          }
 
          fclose($fh);
          return $data;
      }
  }
?>
__________________

PHP-MySQL-Rails | ICQ: 342500546
mrkris is offline   Share thread on Digg Share thread on Twitter Share thread on Reddit Share thread on Facebook Reply With Quote