HomeThursday, March 5, 2015, 20:19:45
2

Smarty - Create dynamic Web Pages with PHP & MySQL

Monday, February 9, 15, 02:04:15, 4 Weeks Ago Via wain, Hits: 3
Creating Dynamic Web Pages Using Smarty and MySQL - Requirement(s): PHP Server, MySQL
config.php:
Code:
<?php
//MySQL Configuration
//DB Host (Normally 'localhost')
$dbhost = 'localhost';
//DB Database Username
$dbusername = 'root';
//DB Database User Password
$dbpassword = 'mypassword';
//DB Database Name
$dbname = 'mydbname';
//mysql_connect function
$conn=mysql_connect($dbhost, $dbusername, $dbpassword);
if(!$conn) :
die('Could not connect: ' . mysql_error());
endif;
$db=mysql_select_db($dbname, $conn);
if(!$db) :
die ('Cant connect to database : ' . mysql_error());
endif;
?>

install.php
Code:
<?php
//make a MySQL connection
include('config.php');
//create a MySQL table in the selected database
mysql_query("CREATE table `page` (
`linkid` int(11) NOT NULL auto_increment,
`text` text collate utf8_unicode_ci,
`linkurl` text collate utf8_unicode_ci,
PRIMARY KEY (`linkid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
COLLATE=utf8_unicode_ci AUTO_INCREMENT=1")
or die(mysql_error());
?>

index.php
Code:
<title>Index Page</title>
<center><h2>INDEX</h2></center><BR>
<?php
//make a MySQL connection
include('config.php');
echo "&nbsp;<a href=\"insert.php\">INSERT PHP</a><br>";
//get all the data from the page table
//*=select everything from the table page
$result = mysql_query("SELECT * FROM page")
or die(mysql_error());
while($link=mysql_fetch_array($result)){
//echo (display) a link using $link[linkid]
echo "&nbsp;<a href=\"webpage.php?id=$link[linkid]\">Web Page 1</a><br>";
}
?>

insert.php
Code:
<title>Insert Page</title>
<center><h2>Insert Page</h2></center><br>
<a href="index.php">Index Page</a>
<?php
//make a MySQL connection
include('config.php');
//to check if a submit button was clicked, use this...
if(isset($_POST['submit']))
{
$text = $_POST['text'];
$linkurl = $_POST['linkurl'];
//the INSERT INTO statement is used
//to add new records to a database table
mysql_query("INSERT INTO page (text,linkurl)
VALUES ('$text','$linkurl')")
or die(mysql_error());
}else{
?>
<form method="post" action="insert.php">
<table><tr><td>
Title:
</td><td>
<input name="text" size="60" maxlength="255">
</td></tr>
<tr><td>
URL:
</td><td>
<input name="linkurl" size="60" maxlength="255">
</td></tr>
<tr><td>
<input type="submit" name="submit" value="submit">
</td></tr></table>
</form>
<?php
}
?>

webpage.php
Code:
<?php
////make a MySQL connection
include('config.php');
// smarty configuration
include('Smarty.class.php');
$smarty = new smarty();
$smarty->template_dir = 'templates';
$smarty->compile_dir = 'templates_c';
$smarty->cache_dir = 'cache';
//get ID from URL
$id = $_GET['id'];
//get linkid, text, linkurl from the page table
//..or..*=select everything from the table page
$result = mysql_query("SELECT linkid, text, linkurl
FROM page WHERE linkid='$id' ")
or die(mysql_error());
while($myrow = mysql_fetch_assoc($result))
{
$values[] = $myrow;
}
$smarty->assign('page', $values);
$smarty->caching = 1;
//$REQUEST_URI will create a separate cache file
//for each unique URL when you call webpage.tpl.
$smarty->display('webpage.tpl',$REQUEST_URI);
?>

webpage.tpl
Code:
{section name=page loop=$page}
<head><title>{$page[page].text}</title></head>
<h1>{$page[page].text}</h1>
<a href="{$page[page].linkurl}">{$page[page].text}</a>
{/section}

Comments

William Monday, November 29, 2010, 00:48:09

Nice script :)

george Thursday, January 13, 2011, 07:57:58

Thanks for Tut.

Sign In

Sponsor
About Author

wain

Date Registered: Sun, Feb 8, 15
Last Time Online: Thu, Feb 26, 15
So far has created 112 entries.
wain
This author has not yet filled in any details.