2011-08-04 24 views
0

我创建了一个模板驱动的网站,但没有使用像Smarty或Twig这样的PHP模板包,它完全是我自己的编码。PHP模板语法 - 这是正确的吗?

这是一个模板(mypage.php):(移动,以适应页)

<TITLE>{$title}</TITLE> 
<TABLE> 
<TR><TD>{$maker}</TD><TD>{$model}</TD><TD>{$trim}</TD><TD>{$body}</TD> 
<TD>{$price}</TD> 
</TABLE> 

内容来自MySQL数据库,就像这样:

<?php 
mysql_connect("localhost", "mylogin", "password") or die(mysql_error()); 
mysql_select_db("test12") or die(mysql_error()); 
$query = "SELECT name, subject, message FROM contact"; 
$result = mysql_query($query); 

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    echo "<table><td>{$row['maker']} <br><TD>{$row['model']}</TD><TD>{$row['trim']}</TD><TD>{$row['price']}</TD>" . 

}

我认为我做得对,但如果我出错了,让我知道......这是我第一次正确的去吧! (编辑以适合于stackoverflow.com)

欢呼

+2

什么是你的问题? – phindmarsh

+0

哪个模板?你在你写的问题中没有任何模板,你只是说你想使用PHP。也许你正在寻找[字符串花括号](http://php.net/manual/en/language.types.string.php)(向下滚动到* Variable parsing *)? – hakre

回答

0

一个错误,我看到的是,你也没能逃脱从数据库中检索值。
这会让你开放给XSS。

我会改变回声部分为:

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    $maker = htmlspecialchars($row['maker']); 
    $model = htmlspecialchars($row['model']); 
    $trim = htmlspecialchars($row['trim']); 
    $price = htmlspecialchars($row['price']); 

    echo "<table><td>{$maker}<br><TD>{$model}</TD><TD>{$trim}</TD><TD>{$price}</TD>". 
} 
+0

好的,但至于模板...是否正确? – saltwynd8336

+0

@saltwynd我不是一个php模板向导,所以不能帮助你。 – Johan