Reputation: 59
I have the code below but I want to write the file under a dynamically created folder from date. So it should look like this date/filename.txt
<?php
if(isset($_POST['field1']) && isset($_POST['field2'])) {
$data = $_POST['field1'] . '-' . $_POST['field2'] . "\n";
$filename = date('YmdHis').".txt";
if (!file_exists($filename)) {
$fh = fopen($filename, 'w') or die("Can't create file");
}
$ret = file_put_contents($filename, $data, FILE_APPEND | LOCK_EX);
if($ret === false) {
die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}
?>
Upvotes: 2
Views: 6487
Reputation: 133360
Try with
if (!file_exists('path/to/directory')) {
mkdir('path/to/directory', 0777, true);
}
Upvotes: 2
Reputation: 523
You should use mkdir function to create directory:
<?php
if(isset($_POST['field1']) && isset($_POST['field2'])) {
$data = $_POST['field1'] . '-' . $_POST['field2'] . "\n";
mkdir(date('YmdHis'));
$filename = date('YmdHis')."/filename.txt";
if (!file_exists($filename)) {
$fh = fopen($filename, 'w') or die("Can't create file");
}
$ret = file_put_contents($filename, $data, FILE_APPEND | LOCK_EX);
if($ret === false) {
die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}
?>
Upvotes: 1