I have a script that will randomly pull text out of a file, replace a chosen word with whatever the user inputs, and displays one line out of the text file, for some reason, since i ported it over to my new site, it's displaying everything that's inside the text file instead of just the one line.
Can anyone see where i've gone wrong?
Can anyone see where i've gone wrong?
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Fact Generator</title> </head> <body> <div align="center"> <p> </p> <p> <?php if(isset($_POST['fname'])) { $fname = $_POST['fname']; $filename = "facts.php"; $filedata = file($filename); shuffle($filedata); $farray = str_replace(fname, $fname, $filedata[array_rand($filedata)]); foreach($filedata as $farray) { echo wordwrap($farray,50,"<br/>"); } } ?> </p> </div> </p> </div> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <p align="center" class="style4">Enter your name: </p> <p align="center"> <form action="factgen.php" method="post" target="_self" /> <input type="text" size="30" name="fname" value="<?php echo $fname; ?>"/> </p> <p align="center"> <input type="submit" value="Fact!" /></p> <p align="center"> </p> </body> </html>
Comment