self submited form problem, sorting, cleaning and array...
Posted: Sun Nov 09, 2008 7:47 pm
Good day to you all,
Here I am again with another question regarding a listing and creating file.
This time I would like to 4 things;
- Clean my code, I clean the list and display only the txt file, but I do it 2 time same for where I display it, I'm sure there is a better way..?
- Sort last added message on top.
- When I add text, the page does not refresh and show what I just enter, I have to add another text to see it, on and on...
- Could I get the result of the listing into an array ?
Here is my code:
Thanks for your time !
Here I am again with another question regarding a listing and creating file.
This time I would like to 4 things;
- Clean my code, I clean the list and display only the txt file, but I do it 2 time same for where I display it, I'm sure there is a better way..?
- Sort last added message on top.
- When I add text, the page does not refresh and show what I just enter, I have to add another text to see it, on and on...
- Could I get the result of the listing into an array ?
Here is my code:
Code: Select all
<?php
//Receive post
if(isset($_POST['Submit'])){
// list only txt file
$extensions = array('txt');
$thelist = "";
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle)))
{
$ext = strtolower(end(explode('.', $file)));
if (in_array($ext, $extensions) AND $file != "." AND $file != "..")
{
$thelist .= '<table border=\"1\" align=\"center\"><tr><td width=\"500\"><a href="'.$file.'">'.$file.'</a></td></tr>';
$contents = file($file);
$string = implode($contents);
$thelist .= '<tr><td>'.$string.'</td></tr></table><br/>';
}
}
closedir($handle);
}
//Show the form
echo "<form action=\"\" method=\"post\">";
echo "<textarea Name=\"update\" cols=\"50\" rows=\"10\">";
echo "</textarea>";
echo "<input name=\"Submit\" type=\"submit\" value=\"Update\" />\n
</form>";
//Show the list
echo "<P>List of files:</p>";
echo "<P>".$thelist."</p>";
// Declare Variables
$text = $_POST['update'];
$your_data = $text;
// Open the file and erase the contents if any
$fp = fopen(date('Y')."-".date('m')."-".date('d')."-".date('G')."-".date('i')."-".date('s').".txt", "w");
// Write the data to the file
fwrite($fp, $your_data);
// Close the file
fclose($fp);
// Confirm saved !
echo "File updated.<br />";
//else, if you are not receiving a post...
}else{
// list only txt file
$extensions = array('txt', 'ou');
$thelist = "";
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle)))
{
$ext = strtolower(end(explode('.', $file)));
if (in_array($ext, $extensions) AND $file != "." AND $file != "..")
{
$thelist .= '<table border=\"1\" align=\"center\"><tr><td width=\"500\"><a href="'.$file.'">'.$file.'</a></td></tr>';
$contents = file($file);
$string = implode($contents);
$thelist .= '<tr><td>'.$string.'</td></tr></table><br/>';
}
}
closedir($handle);
}
//Show the form
echo "<form action=\"\" method=\"post\">";
echo "<textarea Name=\"update\" cols=\"50\" rows=\"10\">";
echo "</textarea>";
echo "<input name=\"Submit\" type=\"submit\" value=\"Update\" />\n
</form>";
//Show the list
echo "<P>List of files:</p>";
echo "<P>".$thelist."</p>";
}
?>
Thanks for your time !