我已经使用template.php文件创建我的页面布局,然后通过存储在单独文件中的$ content变量插入内容。该文件的这个例子:使用模板文件时不通过PHP显示SQL数据
<?php
$content =
'
<table id="job_table">
<tr>
<th id="jobtitle">Catering Assistant</th>
<th id="r_code">Ref Code: 14407773</th>
</tr>
<tr>
<td id="location">Northampton</td>
<td id="salery">£2,000 Monthly</td>
</tr>
<tr>
<td id="description">Description</td>
<td>
Assist in catering for workers in canteen area.
</td>
</tr>
<tr>
<td><a href="apply.php" class="applyButton">Apply Now!</a></td>
<td></td>
</tr>
</table>
';
include 'template.php';
?>
我的模板内
然后,我只是使用echo显示的内容:
<div id="content_area">
<?php echo $content; ?>
</div>
当我使用下面的代码我的template.php内部文件一切正常像预期一样:
<div id="content_area">
<?php echo $content; ?>
<?php
$server = '192.168.56.2';
$username = 'student';
$password = 'student';
$schema = 'TravelCompanyDatabase';
$pdo = new PDO('mysql:dbname=' . $schema . ';host=' . $server, $username, $password);
$results = $pdo->query('SELECT * FROM user');
foreach ($results as $row)
{
echo '<p>' . $row['firstname'] . ' ' . $row['lastname'] . '</p>';
}
?>
</div>
但是当我使用我的内容的PHP文件中相同的代码我得到一个错误这样的:
<?php
$title = "Jobs";
$content =
'
<?php
$server = '192.168.56.2';
$username = 'student';
$password = 'student';
$schema = 'TravelCompanyDatabase';
$pdo = new PDO('mysql:dbname=' . $schema . ';host=' . $server, $username, $password);
$results = $pdo->query('SELECT * FROM user');
foreach ($results as $row)
{
echo '<p>' . $row['firstname'] . ' ' . $row['lastname'] . '</p>';
}
?>
';
include 'template.php';
?>
您是否尝试过用双引号,而不是单打包住你的$内容?我会说你得到这个错误的原因是因为当它到达192.168之前的第一个单引号时,它实际上跳出了引起错误的$ content部分。 – Haymaker
你正试图回应存储在单独文件中的变量$ content?你是否在template.php文件中包含了包含$ content变量的文件? – user3479671
@WesleyMurch我相信php的开启和关闭都是正确的? – aarontbarratt