PHP Form
Free PHP forms, scripts, resources and tutorials.

Smarty MySQL

Released: 10/10/09


Creating Dynamic Web Pages Using Smarty and MySQL

- Requirement(s): PHP Server, MySQL

Code config.php:
<?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;
?>
Code install.php:
<?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());
?> 
Code index.php:
<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>";
}
?>
Code insert.php:
<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
}
?>
Code webpage.php:
<?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);
?>
Code webpage.tpl
{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


Add a Comment

Name:


Comment:




Sitemap