smarty如何执行sql
5个回答
展开全部
举个例子:
require('../libs/SmartySQL.class.php');
$smarty = new SmartySQL( array('pdo_dsn' => 'mysql:dbname=db_name;host=localhost',
'pdo_username' => 'username',
'pdo_password' => 'password',
'pdo_driver_options' => array() ) );
$smarty->display('index.tpl');
模板内容:
<table border="1">
<tr>
<td><b>ID</b></td>
<td><b>Name</b></td>
<td><b>E-Mail</b></td>
<td><b>Details</b></td>
</tr>
{foreach from=$res item=i sql="SELECT id, name, email FROM contacts"}
<tr>
<td>{$i.id}</td>
<td>{$i.name}</td>
<td>{$i.email}</td>
<td><a href="?id={$i.id}">Info</a></td>
</tr>
{/foreach}
</table>
{if $smarty.request.id}
User info:
{foreach from=$res item=i
sql="SELECT id, name, email FROM contacts WHERE id = {$smarty.request.id}"}
ID: {$i.id}<br />
Name: {$i.name}<br />
E-Mail: {$i.email}<br />
{/foreach}
{/if}
数据库:
DROP TABLE IF EXISTS contacts;
CREATE TABLE contacts (
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
name VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'Name',
email VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'E-Mail',
PRIMARY KEY (id)
) ENGINE=InnoDB CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' COMMENT='User contacts';
INSERT INTO contacts VALUES
(1, 'John Doe', 'jd@gm.com'),
(2, 'Mary Smith', 'ms@gm.com'),
(3, 'James Johnson', 'jj@gm.com'),
(4, 'Henry Case', 'hc@gm.com');
展开全部
smarty 是解决视图问题
执行SQL是model/dao要做的事情
建议不要在模板里面写sql
非要写也可以使用smarty 的php 标签
执行SQL是model/dao要做的事情
建议不要在模板里面写sql
非要写也可以使用smarty 的php 标签
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$query = "SELECT * FROM .......";
$name = $db->getall($query);
$smarty->assign('name', $name);
print_r($name);
$name = $db->getall($query);
$smarty->assign('name', $name);
print_r($name);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$query = "SELECT * FROM .......";
$name = $db->getall($query);
$smarty->assign('name', $name);
print_r($name);
$name = $db->getall($query);
$smarty->assign('name', $name);
print_r($name);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-10-16
展开全部
$db->query($sql);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询