By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
448,503 Members | 1,185 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 448,503 IT Pros & Developers. It's quick & easy.

Problem Writing To File

P: n/a
Hello all.

Okay, this seems really stupid, but it's driving me up the wall.

I have a simple script I've written to log some information to a text
file. Everything seems to be okay, the code isn't throwing any errors,
but for some reason it isn't writing to file. If anyone has any ideas,
please let me know.

Here's the code I'm using:

//trigger_error("Just Testing to see if this is working",E_USER_NOTICE);
$strTimeStamp=date("F j, Y h:i:s A");
$strLogEntry=$strTimeStamp . ", " . $REQUEST_URI . ", " . $_SERVER
['HTTP_REFERER']. "\r\n";
//echo $strLogEntry;
$logfile='../logs/fce.log';

$logExists=file_exists($logfile);
if($logExists){
echo "File Exists<br>";
}
else{
echo "File Does Not Exist<br>";
}

$writable=is_writable($logfile);
if($writable){
echo "File Can Be Written to<br>";
}
else{
echo "File Cannot Be Written to<br>";
}

$fileHandle=fopen($logfile, "a");

if($fileHandle){
echo "File Opened for writing.<br>";
$written=fwrite($fileHandle, $strLogEntry);
echo "File written to successfully.<br>";
$closed=fclose($fileHandle);
echo "File closed succesfully.<br>";

}
else{
error_log("$logfile does not exist");
}

--
Randy Jackson
http://fourcolorexplosion.com
Jul 17 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
["Followup-To:" header set to comp.lang.php.]
Randy Jackson wrote:
I have a simple script I've written to log some information to a text
file. Everything seems to be okay, the code isn't throwing any errors,
but for some reason it isn't writing to file. If anyone has any ideas,
please let me know.
Turn on error reporting if you don't already have it.

Put these at the top of your scripts
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
?>

or change php.ini to have it on at all times.
Here's the code I'm using:

//trigger_error("Just Testing to see if this is working",E_USER_NOTICE);
$strTimeStamp=date("F j, Y h:i:s A");
$strLogEntry=$strTimeStamp . ", " . $REQUEST_URI . ", " . $_SERVER ^^^^^^^^^^^^
Not that it matters for the problem at hand,
but do you have "register globals" on?
['HTTP_REFERER']. "\r\n"; ^^^^^^
Shouldn't this be only "\n" and let the OS do the translation?
Again, it doesn't matter for your problem :-)

[snip] $fileHandle=fopen($logfile, "a"); ^^^
text-mode translation; use "ab" for binary-mode.
if($fileHandle){
echo "File Opened for writing.<br>";
$written=fwrite($fileHandle, $strLogEntry);
if ($written === false) echo "ERROR: Could not write to file.<br>";
else {
echo "wrote $written bytes to file -- expected to write ";
echo strlen($strLogEntry), ".<br>";
}
echo "File written to successfully.<br>";
$closed=fclose($fileHandle);
echo "File closed succesfully.<br>";

}
else{
error_log("$logfile does not exist");
}


Happy Bug Hunting :-)
--
USENET would be a better place if everybody read: | to mail me: simply |
http://www.catb.org/~esr/faqs/smart-questions.html | "reply" to this post, |
http://www.netmeister.org/news/learn2quote2.html | *NO* MIME, plain text |
http://www.expita.com/nomime.html | and *NO* attachments. |
Jul 17 '05 #2

P: n/a
On Fri, 29 Oct 2004 16:53:58 -0500 (more or less), Randy Jackson
<ra**********@nounsolicitedfourcolorexplosion.co m> wrote:
Hello all.

Okay, this seems really stupid, but it's driving me up the wall.

I have a simple script I've written to log some information to a text
file. Everything seems to be okay, the code isn't throwing any errors,
but for some reason it isn't writing to file. If anyone has any ideas,
please let me know.

Here's the code I'm using:


Your code worked for me! I did have to add <? to the beginning and ?> to the
end, but that was it. The contents of fce.log are "October 30, 2004 09:08:13
AM, , ". Make sure you have create and write permissions in the logs
directory for the user id of your httpd daemon.
Jul 17 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.