You are using a browser which is not compatible with CSS (for more information, see Tara's tutorial). Because of this, it is possible that our website may not appear correctly in your browser. We apologise for the inconvenience, and recommend you upgrade your browser to one which is compatible with CSS. For more information, please visit our Browser Upgrade page.

4WebHelp

Scripts: PHP: Random Quote

This script will output a random quote.

Demo

<?php

###########################################################################
#                                                                         #
# Copyright © http://www.4webhelp.net/                                    #
# Neither http://www.4webhelp.net/ nor its members accept any             #
# responsibility, either expressed or implied, for any damage caused by   #
# using this script or the misuse of this script.                         #
#                                                                         #
#                                                                         #
#                          INSTRUCTIONS                                   #
#                                                                         #
# 1) Copy this code to an editor such as Notepad and save it with a       #
# .php  extension.                                                        #
# 2) FTP this file to a folder on your site in ASCII mode                 #
# 3) Add your quotes - ask in our forums if you don't know how to         #
# 4) Call up this file in your web browser to see a quote                 #
#                                                                         #
###########################################################################

  $quotes[] = 'Your first quote';
  $quotes[] = 'Your second quote';
  $quotes[] = 'etc...';

  srand ((double) microtime() * 1000000);
  $random_number = rand(0,count($quotes)-1);

  echo ($quotes[$random_number]);

?>

<p>This script courtesy of <a href="http://www.4webhelp.net/">4WebHelp</a>.</p>
Latest comments
Name: bibiEmail none
I tried   mawst' version
<? $r_array=file('quotes.txt');
shuffle($r_array);
echo $mQuotePath[0];
echo $r_array[0];
?>

had to eliminate  the first echo line.  After that, it worked well.
Name: ChriseanEmail chrisean at hotmail dot com
Hi Im Using this for the random quotes:

<?php
$quote=file("your-quotes.txt");
$totalnumberofquotes=count($quote);
$rdm=rand(1,$totalnumberofquotes);
echo $quote[$rdm];
?>

Just make sure that your external .txt file is in the same path as you .php file
Name: AlElooEmail none
I want ask if you can edit that code to be random every one day or time I specify it. Also, If you can make a code to include specify text for each day, that will be a nice idea. Very Happy




Thanks a lot
Kind Regards,
Name: phpnerdEmail none
This script is REALLY inefficient....

Try using it on a page, then benchmark the page with ab (apache benchmark)....

you wont wanna use it if your site is high traffic.
Name: CthosEmail none
There are two ways to get around the problem with  a ' causing problems in a script.

The first one is to instead use double quotes when making a quote as shown by:

$quotes[] = "This is Steve's llama.";

The other way is to use single quotes and to escape the internal 's with a backslash:

$quotes[] = 'This is Steve\'s llama.';

Hope that helps.
Name: Dargel NapolesEmail Dargel at unikness dot com
I'm new to php, but when I try to run it using the require() it gives me a parsing error.
Name: nucEmail none
how do i insert this in an html website?
Name: mawstEmail mawst at mawst dot net
Just take out the mQuotePath bit. i was using it for debugging. Whoops.
Name: mawstEmail mawst at mawst dot net
Here's what everyone (I think) was asking for. A 3 line script that uses a flatfile for quotes.


Make a file called quotes.txt

Put each quote on it's on line.

Here's a script:

<?
$r_array=file('quotes.txt');
shuffle($r_array);
echo $mQuotePath[0];
echo $r_array[0];
?>
Name: ArjayEmail atbdoorinc at rogers dot com
Can someone tell me if there's a variation out there that I can get in order to put a quote on my website and have it change every day, not on every browser reload?

Also, I need a bit of help on how to incorporated it into my website since I have almost zero knowlege with html LOL

If someone could help me I'd really appreciate it!  

My email is: atbdoorinc @ rogers.com ((remove spaces to reply))

My Site: http://www.picurkamonkey.com/index.html

Thank you!
Name: DanielEmail use contact form
Sure! Simply replace
 $quotes[] = 'Your first quote';
 $quotes[] = 'Your second quote';
 $quotes[] = 'etc...';
with
include('name_of_your_text_file.txt');
And put this in your text file:
<?php  $quotes[] = 'Your first quote';
 $quotes[] = 'Your second quote';
 $quotes[] = 'etc...';
?>
Name: RobEmail none
Would it be possible to use an include to keep the quotes in a seperate file?
Name: DanielEmail use contact form
$quotes[$random_number] contains the quote, so just remove the echo function line, and do what you want with the variable I mentioned above!
Name: MavEmail mavcam at cfl dot rr dot com
How could you incorporate that into and existing php file so you could just use the script in another area instead of it being printed directly using the echo.  I would like to be able to call the script from other places in a code I already have.
Name: DanielEmail use contact form
Many thanks for pointing that out!
Name: SfCommandEmail admin at miguel dot me dot uk
There appear to be 2 opening <?php tags. Shouldn't either the second one be removed, or the first one closed?
Name: TimEmail none
Brilliant, worked a treat!

Add a new comment

This page is © Copyright 2002-2017, 4WebHelp. It may not be reproduced without 4WebHelp's prior permission.