PHP - Alphabetizing Text File Information
I am new to PHP so I'm sorry if anything I ask isn't clear. I'm actually a writer, but my boss randomly decided I need to learn PHP so here I am
My first project is to take information from a simple HTML form that asks for users to fill out three text boxes, select if they are user 1 or user 2, and upload a file. I then have to store the information in a text file and display that information in the browser directly below the HTML form. The information must be ordered alphabetically by the first letter of whatever is entered in the first text box. Each entry must be on its own line. For example: Person 1 enters: Sally Mae Johnson User 1 Flowers.jpg Person 2 comes along later and enters: George Michael Johnson User 2 books.jpg Right now it displays in the order entered like this: Sally Mae Johnson User 1 Flowers.jpg George Michael Johnson User 2 books.jpg I need it to display in alphabetical order by the first letter of the first name like this: George Michael Johnson user 2 books.jpg Sally Mae Johnson User 1 Flowers.jpg I'm so close, but I just can't figure out how to finish it up. If anyone can help they'd be a life saver! Here's what I wrote so far: <body> <?php $fone = @$_POST["one"]; $ftwo = @$_POST["two"]; $fthree = @$_POST["three"]; $fselect = @$_POST["select"]; if ($_FILES) { $name = $_FILES['upload']['name']; (move_uploaded_file($_FILES['upload']['tmp_name'], "uploads/$name")); } //write to the file $values = "$fone\t"; $values .= "$ftwo\t"; $values .= "$fthree\t"; $values .= "$fselect\t"; $values .= "<img src='uploads/$name'><br />\n"; //open and write to the file $fp = @fopen("store.txt", "a") or die("Couldn't open the file!"); $numBytes = @fwrite($fp, $values) or die ("Couldn't write values to file!"); @fclose($fp); ?> <form action="test_it2.php" enctype="multipart/form-data" method="post"> Box 1: <input type="text" name="one" size="15" /> Box 2: <input type="text" name="two" size="15" /> Box 3: <input type="text" name="three" size="15" /> Select One: <select name="select"><option value="empty">Please Select</option><option value="user1">User 1</option> <option value="user2">User 2</option> <p>Upload a File:</p> <p><input type="file" name="upload" /> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <input type="submit" name="submit" value="submit" /> <input type="hidden" name="submitted" value="submitted" /> </p> </form> <?php print "<P>Here are the users:<br />"; $file = "store.txt"; if (file_exists($file)) { $file1 = fopen("store.txt" , "r"); while (!feof($file1)) { $display = fgets($file1, filesize("store.txt")); echo $display . " "; } fclose($file1); } else { echo "<P>Error occured! Please try again!</p>"; } ?> </body> </html> Similar TutorialsHello! I have a 2 questions: Q1: How do you store answers from a php file(see code below) into another file?(php preferably) I know it would probably be easier using a database, but I would like to know how to do it with a text/php file. Below you can see a piece of code for a page students would go on to fill in online exercices. They would first have to input their names. These names would have to be sent to a php file called "StudentAnswers.php". As well as their answers I also have another file that is called "QandA.php" which is called on with include in the piece of code below so the students can't see the answers before they submitted their answers. Q2: But how do I complete the if code(see question marks) so the answer only shows IF(as soon as) they clicked on the submit button? Code: [Select] <html> <body> <h2>Exercices</h2> <p> <form name="input" action="StudentAnswers.php" method="get"> Student name: <input type="text" name="user" /> </form> </p> <p> What is the gradient of T(x,y)=2x+3? <form name="input" action="StudentAnswers.php" method="get"> <input type="text" name="1b" /> <input type="submit" value="Input answer"/> </form> if ( ????????? ) { ???????"; } <?php include("QandA.php"); echo $Question["1b"];?> <p> </body> </html> B How can I sort a string alphabetically? I thought about creating an array ('a'=>0, 'b'=>1) etc, but didn't manage to work. So how can I do this? is there a predefined function for this? or I should create the algorithm? Thanks, Example: $word = 'cbad432'; // should become: '234abcd' Working on a music/video project. Uploaded tracks are stored in user files and product info is stored to DB. What I've been trying to figure out is getting the product information directly from the upload, much like you see in the shot attached. As I haven't had success with that, I've been trying to get the duration of a track using this code. Code: [Select] $fp = fopen($file, 'r'); $size_in_bytes = filesize($file); fseek($fp, 20); $rawheader = fread($fp, 16); $header = unpack('vtype/vchannels/Vsamplerate/Vbytespersec/valignment/vbits', $rawheader); $tsec = number_format($size_in_bytes/$header['bytespersec'],2); $minutes = intval(($tsec / 60) % 60); $seconds = intval($tsec % 60); $sec="$minutes".":".($seconds<10 ? "0$seconds" : "$seconds");This is working fine when file names are plain text, however it fails when when there are commas or brackets. I don't know if the code can be adjusted to work with these file names or I need to take a different approach. Code: [Select] examples $file ="A cool track, once again"; $file ="A cool track (once again)"; As artists can be picky about their music, I don't want to rename their tracks, but really we shouldn't even have spaces in the names. I could save original name to DB and rename the file, but not sure about restoring original when it come time to download the file. In any case, I hope you understand my problem and can offer some advice. Thanks. Hi Everyone, Let me start by saying i need any help put to me in dumb person terms, i know nothing but the bare bare basics of most web coding let alone php, enough to make very simple pages and forms. On to my problem... What i am aiming for us a single web page which takes a list of names from a file, generates a 2 column table, makes the second column into boxes where data can be entered in to, then i want it to be submitted to email in the form of a html email, the email doesn't need any fancy formatting or colour scheme, just want the the table of names and entered information sent Now this is how far i have got (with help obviously): Code: [Select] <body> <h1 align="center"><u>7B Praise Points</u></h1> <div id="contact-wrapper"> <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" id="contactform"> <?php $file = file("7B.txt"); $count = 0; print "<table cellspacing='2'>\n <tr><td>Student Name</td><td>Number of Praise Points</td></tr>\n"; foreach($file as $line){ $line = trim($line); $split = split("\t",$line); print "<tr>\n<td>$split[0]<input name='name$count' type='hidden' value='$split[0]'></td>\n<td>$split[1]<input name='points$count' type='hidden' value='$split[1]'></td>\n</tr>"; $count++; } print "</table>"; ?> <p> <input name="submit" type="submit" value="Submit"> </p> </form> </div> </body> So i've got it generating the table from the list of names in the file called "7B.txt" all i need to be able to do is making the second column in to a data entry box and generating the email Starting with the first problem of making the second column in to data entry boxes how do i go about doing this? Thanks Is there a way to get the source path for an uploaded file? It seems that's a function of the browser and the two I've tried FF and Safari don't return it in $_FILES['file']['name']. Ok Basically I need to know how to do this: I upload a txt file that contains this: Code: [Select] "MLE ",20,"2057NALL ","ND ","Amber for 2057 1 ","!Amber for 2057 ",00003.65,00001.02 "MLE ",20,"211-2 ","D ","Dome-Courtesy 10 ","!Dome-Courtesy 1 ",00001.60,00000.61 How would I get Information from each different line like the below: Code: [Select] 2057NALL | Amber for 2057 1 | 00003.65 | 00001.02 211-2 | Dome-Courtesy 10 | 00001.60 | 00000.61 Any help on this subject would be greatly appreciated. PhotonicCoder I want to make the news feed on my website easier to maintain. I just created a form that I will use to add the information. The form saves the files that it creates as "entry-date-time.txt" and places it in a folder for the year and a sub folder for the month. Such as "2011\09". I have displayed data from a single flat file before, but I am unsure how to go about displaying the data from multiple files. Can anyone show me an example? I want to be able to paginate the data, displaying a number of updates per page from newest to oldest. I don't have MySQL access on the server or I'd just use that, instead. I'm going to be blunt, I've been working on a website for quite some time now and I never really stopped to think about the effects that an over abundant amount of queries could actually slow things down. I'm quite new to the whole PHP / MySQL thing so I am still learning. While reading through some things about optimization of queries I've learned some valuable information, such as working with Indexes, and not running unnecessary queries which the data doesn't seem to change that often. So for a few aspects of my site which don't really change in particular periods of time, I've decided to write the contents of them into a text file then retrieve and display them as normal through my site. Things that last an hour, or a day, will no longer be queries on each page load; tremendously reducing the amount of queries which my database would take. Currently I have the following code: if($database->numrows($query) > 0) { $myFile = 'testFile.txt'; if($fh = fopen($myFile, 'w')) { $i = 0; while($row = $database->fetchassoc($query)) { ++$i; $stringData = '' . $row['id'] . '--' . $row['name'] . '--' . $row['color'] . '--' . $row['bdaytest'] . '--' . $row['gmtoffset'] . "\n"; fwrite($fh, $stringData); } fclose($fh); } } Which Prints Out Quote 32--User3--0--1939-10-03--+0.0 27--User7--0--1979-10-04--+17.0 28--User65--150--1969-10-05--+17.0 30--User1--0--1959-10-06--+6.0 31--User9--0--1949-10-07--+3.0 29--User5--0--1989-10-08--+17.0 The problem stems from pulling the information from the file and exploding it. That file would be for yesterday's up to 7 days from now's birthdays. The amount of lines could change, possibly messing up the possibility of an array. I was thinking about pulling the information into an array, than exploding it from within that array, posting it to variables.. and then have it display all in a while. Am I on the right track, or is there some other alternative I can use? Only data that will always be visible on the website, will be held in these text files. Any suggestions on how I pull the information from the text file and explode it to display exactly how I need it to be displayed? Hey everyone, I don't know what i'm doing wrong or missing some code snippet (duh! thats why i'm here. lol). The html form with meeting time doesn't transfer the information over to my calendar php file. calendar.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Lab 5</title> <link rel="stylesheet" type="text/css" href="settings.css" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/> </head> <body> <center> <form method="get" action="calendar.php"> Student Name: <input type="text" name="name"/> <input type="submit" value="Submit" /> <input type="reset" value="Clear" /> </center> <p align="center">Today is <?php print(date("l, F\ jS\ Y")); ?> </p> <?php $date = time(); $day = date('d', $date); $month = date('m', $date); $year = date('Y', $date); $first_day = mktime(0,0,0,$month, 1, $year); $title = date('F', $first_day); $day_of_week = date('D', $first_day); switch($day_of_week){ case "Sun": $blank = 0; break; case "Mon": $blank = 1; break; case "Tue": $blank = 2; break; case "Wed": $blank = 3; break; case "Thu": $blank = 4; break; case "Fri": $blank = 5; break; case "Sat": $blank = 6; break; } $days_in_month = cal_days_in_month(0, $month, $year); //Table starts here echo "<table border=1 cellpadding=10 align=center height=500 width=494>"; echo "<tr><th colspan=7> $title $year </th></tr>"; echo "<tr><td width=42>Su</td> <td width=42>Mo</td> <td width=42>Tu</td> <td width=42>We</td> <td width=42>Th</td> <td width=42>Fr</td> <td width=42>Sa</td></tr>"; //Days in week $day_count = 1; echo "<tr>"; // blank days while ( $blank > 0 ) { echo "<td></td>"; $blank = $blank-1; $day_count++; } //Set the first day of the month $day_num = 1; //This while loops works while there are still days in that month while ( $day_num <= $days_in_month ) { echo "<td> $day_num </td>"; $day_num++; $day_count++; //Starts new row for every week if ($day_count > 7) { echo "</tr><tr>"; $day_count = 1; } } //Finaly we finish out the table with some blank details if needed while ( $day_count >1 && $day_count <=7 ) { echo "<td> </td>"; $day_count++; } echo "</tr></table>"; ?> <a href="http://helios.ite.gmu.edu/~easad/IT207/Lab5/DecCal.php" target="info">Next Month</a> <p> <a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0 Strict" height="31" width="88" /></a> </p> </body> </html> MeetingTime.html Code: [Select] <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <link rel="stylesheet" type="text/css" href="settings.css" /> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/> <title>Meeting Time Sign Up</title> </head> <body> <h1> Meeting Time Setup Form</h1> <form method="get" action="calendar.php"> <table border="1" cellpadding="15" width="75%"> <tr><td width=42>Day: </td> <td width=42><input type="checkbox" name="available" value="Mon" />Monday</td> <td width=42 ><input type="checkbox" name="available" value="Tue" />Tuesday</td> <td width=42 ><input type="checkbox" name="available" value="Wed" />Wednesday</td> <td width=42 ><input type="checkbox" name="available" value="Thr" />Thrusday</td> <td width=42 ><input type="checkbox" name="available" value="Fri" />Friday</td></tr> <tr><td width=42 >Time: </td> <td width=42 > <p><select multiple="multiple" size="3" style="width: 180%;"> <option>7:00am</option> <option>7:00am</option> <option>7:30am</option> <option>8:00am</option> <option>8:30am</option> <option>9:00am</option> <option>9:30am</option> <option>10:00am</option> <option>10:30am</option> <option>11:00am</option> <option>11:30am</option> <option>12:00pm</option> <option>12:30pm</option> <option>1:00pm</option> <option>1:30pm</option> <option>2:00pm</option> <option>2:30pm</option> <option>3:00pm</option> <option>3:30pm</option> <option>4:00pm</option> <option>4:30pm</option> <option>5:00pm</option> <option>5:30pm</option> <option>6:00pm</option> <option>6:30pm</option> <option>7:00pm</option> <option>7:30pm</option> <option>8:00pm</option> <option>8:30pm</option> <option>9:00pm</option> <option>9:30pm</option> <option>10:00pm</option> </select></p> </td> <td width=42 > <p><select multiple="multiple" size="3" style="width: 180%;"> <option>7:00am</option> <option>7:30am</option> <option>8:00am</option> <option>8:30am</option> <option>9:00am</option> <option>9:30am</option> <option>10:00am</option> <option>10:30am</option> <option>11:00am</option> <option>11:30am</option> <option>12:00pm</option> <option>12:30pm</option> <option>1:00pm</option> <option>1:30pm</option> <option>2:00pm</option> <option>2:30pm</option> <option>3:00pm</option> <option>3:30pm</option> <option>4:00pm</option> <option>4:30pm</option> <option>5:00pm</option> <option>5:30pm</option> <option>6:00pm</option> <option>6:30pm</option> <option>7:00pm</option> <option>7:30pm</option> <option>8:00pm</option> <option>8:30pm</option> <option>9:00pm</option> <option>9:30pm</option> <option>10:00pm</option> </select></p></td> <td width=42 > <p><select multiple="multiple" size="3" style="width: 180%;"> <option>7:00am</option> <option>7:30am</option> <option>8:00am</option> <option>8:30am</option> <option>9:00am</option> <option>9:30am</option> <option>10:00am</option> <option>10:30am</option> <option>11:00am</option> <option>11:30am</option> <option>12:00pm</option> <option>12:30pm</option> <option>1:00pm</option> <option>1:30pm</option> <option>2:00pm</option> <option>2:30pm</option> <option>3:00pm</option> <option>3:30pm</option> <option>4:00pm</option> <option>4:30pm</option> <option>5:00pm</option> <option>5:30pm</option> <option>6:00pm</option> <option>6:30pm</option> <option>7:00pm</option> <option>7:30pm</option> <option>8:00pm</option> <option>8:30pm</option> <option>9:00pm</option> <option>9:30pm</option> <option>10:00pm</option> </select></p></td> <td width=42> <p><select multiple="multiple" size="3" style="width: 180%;"> <option>7:00am</option> <option>7:30am</option> <option>8:00am</option> <option>8:30am</option> <option>9:00am</option> <option>9:30am</option> <option>10:00am</option> <option>10:30am</option> <option>11:00am</option> <option>11:30am</option> <option>12:00pm</option> <option>12:30pm</option> <option>1:00pm</option> <option>1:30pm</option> <option>2:00pm</option> <option>2:30pm</option> <option>3:00pm</option> <option>3:30pm</option> <option>4:00pm</option> <option>4:30pm</option> <option>5:00pm</option> <option>5:30pm</option> <option>6:00pm</option> <option>6:30pm</option> <option>7:00pm</option> <option>7:30pm</option> <option>8:00pm</option> <option>8:30pm</option> <option>9:00pm</option> <option>9:30pm</option> <option>10:00pm</option> </select></p></td> <td width=42 > <p><select multiple="multiple" size="3" style="width: 180%;"> <option>7:00am</option> <option>7:30am</option> <option>8:00am</option> <option>8:30am</option> <option>9:00am</option> <option>9:30am</option> <option>10:00am</option> <option>10:30am</option> <option>11:00am</option> <option>11:30am</option> <option>12:00pm</option> <option>12:30pm</option> <option>1:00pm</option> <option>1:30pm</option> <option>2:00pm</option> <option>2:30pm</option> <option>3:00pm</option> <option>3:30pm</option> <option>4:00pm</option> <option>4:30pm</option> <option>5:00pm</option> <option>5:30pm</option> <option>6:00pm</option> <option>6:30pm</option> <option>7:00pm</option> <option>7:30pm</option> <option>8:00pm</option> <option>8:30pm</option> <option>9:00pm</option> <option>9:30pm</option> <option>10:00pm</option> </select></p></td>; </tr> </table> </br> <input type="reset" value="Clear" /> <input type="submit" value="Submit" /> <input type="hidden" value="newuser" /> </form> </body> </html> From what I have so far is that I am reading a text file into a textbox. Now I want to update/append new information to my file(the information may contain HTML/PHP code, text etc.) after I click the save button so the contents can be read on a separate page called "edit.php". Any suggestions? (My first time using PHP on a higher level) The following is written in my editcontent1.php(I'm seperating each content block on my edit.php page into several editcontent(n).php files where n is = 1 to infinity) Here is before the html tags: <?php if ( isset ($_POST ['content']) ) { file_put_contents ('content1.txt', $_POST ['content'] ); } ?> Here is before the html tags: Code: [Select] <form action = "edit.php" method="post"> <textarea name="content" cols="" rows="" wrap="virtual" class="textarea1"> <?php include 'content1.txt'; ?> </textarea> <br /> <input type="submit" value="Save"> </form> I need to display Credit card number with only last 4 digits visible.The remaining numbers should display as ** eg: If the credit card number is 2222 1111 3333 4444 its should display as **** **** **** 4444 in a textbox Can anybody provide me a solution I want to add a note field and a checkbox to my list/grid page and save this information to a json file using uomptrucknumber as the key. The note information will be information for the whole truck not by order. The check box will let them know that the truck is ready to have paper work printed. I have not add the note field or checkbox because I did not want to start off wrong. echo "<table>"; echo "<tr style='background:#82fbfd'>"; echo "<th>ShipDate</th>"; echo "<th>ShipMeth</th>"; echo "<th>Name</th>"; echo "<th>LoadID</th>"; echo "<th>Drop</th>"; echo "<th>OrderID</th>"; echo "<th>Status</th>"; echo "<th>FGI</th>"; echo "<th>FGM</th>"; echo "<th>TotalBox</th>"; echo "<th>Cubes</th>"; echo "<th>Total</th>"; echo "<th>Notes \n</th>"; //echo "<table>"; echo "<tr style='background:#82fbfd'>"; $result =odbc_exec($connect,$sql); if(!$result){ exit("Error in SQL"); } function ShowDetail($row){ if($row['ompclosed']==-1){ $theColor="#AAF0D2"; }else{ $theColor="#FFFFFF"; } if($row['ompclosed']==0 && $row['date'] < date("m/d/Y")) { $theColor="#FF0000"; } echo "<tr style='background-color :$theColor'><td>" .$row['date'] ."</td>"; echo "<td>" .$row['ompshippingmethodid'] ."</td>"; echo "<td style='text-align:left'>" .$row['cmoname'] ."</td>"; echo "<td>" .$row['uomptrucknumber'] ."</td>"; echo "<td>" .$row['uompdropsequence'] ."</td>"; echo "<td>" .$row['ompsalesorderid'] ."</td>"; echo "<td>" .$row['ompclosed'] ."</td>"; echo "<td>" .round($row['FGIqty'],0) ."</td>"; echo "<td>" .round($row['FGMqty'],0) ."</td>"; echo "<td>" .round($row['uomptotalboxcount'],0) ."</td>"; echo "<td>" . number_format($row['uompvolumetotal'],2) ."</td>"; echo "<td>" . number_format($row['ompordertotalbase'],2) ."</td>"; echo "<td style='text-align:left'>" .$row['ompordercommentstext'] ."</td></tr>" ; } //**************************************************************** while ($row = odbc_fetch_array($result)) { if($row['ompclosed']==-1){ $theColor="#AAF0D2"; }else{ $theColor="#FFFFFF"; } if($row['ompclosed']==0 && $row['date'] < $today) { $theColor="#FF0000"; } if($row['uomptrucknumber'] != $loadid) { if ($loadid !== 0) { echo "<tr style='background:#eee'> <td colspan='7'>TOTAL</td> <td>$TotalFGI</td> <td>$TotalFGM</td> <td> </td> <td> </td> <td>$loadTotal</td> </tr>"; } $TotalFGI=0; $TotalFGM=0; $loadTotal=0; } ShowDetail($row); $loadid = $row['uomptrucknumber']; $TotalFGI+=round($row['FGIqty'],0); $TotalFGM+=round($row['FGMqty'],0); $loadTotal +=$row['ompordertotalbase']; } echo "<tr style='background:#eee'> <td colspan='7'>TOTAL</td> <td>$TotalFGI</td> <td>$TotalFGM</td> <td> </td> <td> </td> <td>$loadTotal</td> </tr> </table>"; odbc_close($connect); ?>
I currently am working on a project where I code a "simple" telephone directory. There are three main tasks that it needs to do: 1. Directory.php(index page) has a "First Name" and "Last Name" field and a search button. When a name is searched from the directory.txt file, it displays First Name, Last Name, Address, City, State, Zip and phone in findinfo.php in designated text boxes...first name, last name, etc. 2. From the findinfo.php, like previously stated, the users information is listed in the appropriate text boxes. From there, there is an update button that will overwrite the user's information to directory.txt if that button is selected. It will then say the write was sucessful. 3. (completed this step) From the index page, there is a link that will take you to addnew.php where you enter First Name, Last Name, Address, City, State, Zip and phone in a web form and write it to directory.txt. This is the php code for the third step: <?php $newentryfile = fopen("directory.txt", "a+"); $firstname = $_POST['fname']; $lastname = $_POST['lname']; $address = $_POST['address']; $city = $_POST['city']; $state = $_POST['state']; $zip = $_POST['zip']; $phone = $_POST['phone']; $newentry = "$firstname $lastname\n\r $address\n\r $city, $state $zip\n\r $phone\n\r"; if (flock($newentryfile, LOCK_EX)) { if (fwrite($newentryfile, $newentry) > 0) echo "<p>" . stripslashes($firstname) . " " . stripslashes($lastname) . " has been added to the directory.</p>"; else echo "<p>Registration error!</p>"; flock($newentryfile, LOCK_UN); } else echo "<p>Cannot write to the file. Please try again later</p>"; fclose($newentryfile); if(empty($firstname) || empty($lastname) || empty($address) || empty($city) || empty ($state) || empty($zip) || empty($phone)) { echo "<p>Please go back and fill out all fields.</p>"; } ?> So to sum it all up, what would be my best approach? I am totally stumped and not sure which function to use. Should I work my way from step 1 to step 2? I see it as when I do the search for the name from directory.php, it takes me to findinfo.php, listing the users information in the text boxes. From there, if I needed to, having the user's information already listed I could hit the update button to overwrite the new information to directory.txt. Doing the update when then tell me that the write was successful. I have literally been scouring the internet for hours. What would be the best function to do this? I hope I was clear enough. Please help me out and thank you for your time. Ok i have been working on this for a day+ now. here is my delema simple .ini text file. when a user makes a change (via html form) it makes the correct adjustments. problem is the newline issue 1. if i put a "\n" at the end (when using fputs) works great, except everytime they edit the file it keeps adding a new line (i.e. 10 edits there are now 10 blank lines!!!!) 2. if i leave off the "\n" it appends the next "fgets" to that lilne making a mess Code: [Select] ##-- Loop thruoght the ORIGINAL file while( ! feof($old)) { ##-- Get a line of text $aline = fgets($old); ##-- We only need to check for "=" if(strpos($aline,"=") > 0 ) { ##-- Write NEW data to tmp file fputs($tmp,$info[$i]." = ".$rslt[$i]."\n"); $i++; } ##-- No Match else { fputs($tmp,$aline."\n"); }//Checking for match }//while eof(old) what in the world is making this such a big deal. i dont remember having this issue in the past I tried opening with w+, and just w on the temp file a typical text line would be some fieldname = some value the scipt cycles through the file ignoring comments that are "#" ps the tmp file will overwrite the origianl once complete all i really want to know is WHY i cant get the newline to work, and what is the suggested fix EDIT: i just tried PHP_EOL and it still appends another newline Hi, I am writing several scripts and some are used to amend extra information to a text file. However, I added a hyperlink to the text file so that the user can go back to a page where they can add extra information. However, since I have done this every time I amend more text to the text file, the extra text appears below the hyperlink rather than above it, and I was wondering if there was a way around this. My amend code is as follows: Code: [Select] <html> <head> <title>Amend File</title> <link rel="stylesheet" type="text/css" a href="rcm/stylesheet.css"> </head> <?php if($_POST['append'] !=null) { $filename="C:/xampp/htdocs/rcm/denman2.txt"; $file=fopen($filename, "a"); $msg="<p>Updated Information: " .$_POST['append']. "</p><br>"; fputs ($file, $msg); fclose($file); } ?> <body> <h1>Do you want to append to a document?</h1> Enter Updated Information: <form action="amendfile2.php" method="post"> <input type="text" size="40" name="append"><br><br> <input type="submit" value="Add updated information to report"> </form> <form action="viewfile3.php" method="post"> <input type="submit" size="40" value="View Web Blog"> </form> <form action="loginform.php" method="post"> <input type="submit" value="Click here to go to the Log In Screen"> </form> </body></html> And my text file is as follows: Code: [Select] <h1>Accident Report</h1> <p>First Name: Andrew Last Name: Denman Age: 18 Complete Weeks Since Accident: 2<br> <a href="amendfile2.php">Amend to this file</a> Any help would be appreciated Hello, i am currently getting an Microsoft Excel formatted text file whose save type is .Txt from a URL.I used to open it and will change the save type as excel file. Please suggest whether we can do this with php code. currently my code is like this, <? php copy("http://www.faa.gov/airports/airport_safety/airportdata_5010/menu/emergencyplanexport.cfm?Region=&District=&State=&County=&City=LAS%20VEGAS&Use=&Certification=","./contactsexport.xls"); ?> where as the contactsexport.xls type is .Txt which i need it in .xls Thanks in Advance. Hey, Currently i have a chat room which calls my database quite frequently... so im thinking i can lower the heavy load from my server by taking it off MYSQL methods and using PHP read/write/delete methods of a text file. Now i have two issues with this... first one is: Code: [Select] <?php $myFile = "chatlist.txt"; $fh = fopen($myFile, 'w') or die("can't open file"); $stringData = $Message.'<br/>'; fwrite($fh, $stringData); fclose($fh); ?> This writes the most recent line, how ever the next line that gets sent overwrites so theres only ever one line in the txt file =/ Secondly how on earth do you delete a specific line from the file efficiently ? Say for example a line which broke the rules some how like spam was posted etc. Hope you get shed light on this. Thanks Hello, I had simple php website in one folder, no database in the website. I need a method for text search in the web directory... Any help? Thanks Hello everyone, This is my first post and I need a little help. My knowledge of php is limited, so this question may look simple. English isn't my mother tongue, which you have probably noticed already. So, my problem: I 've made a a phpscript that adds text to a txt-file, that works perfect, but I also need something to delete some parts of the file. part of my html-code: Code: [Select] <form method="POST" action="verwijderscript.php"> <table class="noborder"> <tr><td class="noborder"> <input type="text" id="verwijdertitel" name="verwijdertitel" size="40"> <input type="submit" name="s1" value="Verwijder Bericht" /> </td></tr> </table> </form> part of my txt-file: Code: [Select] <div id="Testtitel"> <span class="subtitel">Testtitel</span> <span class="rechts">Gepost op 15/03/2011</span> <br> <img class="nieuws" src="image.gif"><br> texttexttexttexttext<br> texttexttext<br> text <div class="streep"></div> </div id="Testtitel"> <div id="Testtitel2"> <span class="subtitel">Testtitel2</span> <span class="rechts">Gepost op 15/03/2011</span> <br> <img class="nieuws" src="image2.gif"><br> texttexttexttexttext<br> texttexttext<br> text <div class="streep"></div> </div id="Testtitel2"> part of my php-code: Code: [Select] <?php $titel = $_POST['verwijdertitel']; $oud = file_get_contents("data.txt"); $data = fopen("data.txt", "w+"); $nieuw = str_replace("id=\""$titel, "id=\"hidden", $oud); fwrite($data, "$nieuw"); fclose($data); header("refresh:0;url=http://www.test.com"); ?> css: Code: [Select] #hidden{display:none;} Problem: parse error line 6 of php-file And I don't think this works if the error is solved. I don't have a MySQL database, that's why I use a txt files. What I try to do is to hide the div, it would be better to delete it, but than I need to work with regex, I guess $tracking_file_location = "../dispatch-manager/logs/tracking_file.txt"; $tracking_file = fopen("$tracking_file_location", "r") or die("Unable to open file!"); $tracking_file_size = filesize("$tracking_file_location"); $tracking_file_text = fread($tracking_file,$tracking_file_size); fclose($tracking_file); |