Ejemplo del archivo php
<?
require('../classes/app.class.php');
$dato2=new fragmentoTable();
$arr=$dato2->readData();
$i=array_rand($arr,1);
$smarty->assign('fragmento',$arr[$i]);
$smarty->display('index2.tpl');
?>
require('../classes/app.class.php');
$dato2=new fragmentoTable();
$arr=$dato2->readData();
$i=array_rand($arr,1);
$smarty->assign('fragmento',$arr[$i]);
$smarty->display('index2.tpl');
?>
En el codigo anterior, declaramos una clase de tipo fragmentoTable, que utilizamos para leer de la base de datos, todos los registros de la tabla fragmento mediante la funcion readData. Los registros quedaron guardados en la variable $arr.
El siguiente paso es seleccionar una cantidad de indices aleatorias que obtenemos mediante la funcion array_rand cuyos parametros son un arreglo($arr) y la cantidad de registros aleatorio que deseamos, en este caso 1.
Luego mediante smarty asignamos a la variable el fragmento aleatorio que deseamos
El archivo .tpl tendria la forma
<h5>{$fragmento.fragmento}</h5>
<br />{$fragmento.texto}<br /><br />
<div align="right"><h6>{$fragmento.bibliografia}</h6></div>
<br />{$fragmento.texto}<br /><br />
<div align="right"><h6>{$fragmento.bibliografia}</h6></div>