addarticle.html.php
<?php foreach ($articles as $article): ?>
<li>
<form action="" method="post">
<div>
<a href="?viewarticle?id=<?php echo'$id' ?>">
<?php echo htmlout($article['id']);?>
<?php echo htmlout($article['summary']);?>
</a>
</div>
</form>
</li>
<?php endforeach; ?>
的index.php
if(isset($_GET['viewarticle']))
{
include_once $_SERVER['DOCUMENT_ROOT'] . '/ArticleManager/Includes/db.inc.php';
$id = mysqli_real_escape_string($link, $_POST['id']);
// Get articles belonging to author
$sql = "SELECT summary FROM articles WHERE id='$id'";
$result = mysqli_query($link, $sql);
if (!result)
{
$error = 'Error getting full article.';
include 'error.html.php';
exit();
}
include 'fullarticle.html.php';
exit();
}
fullarticle.html.php
<form action="" method="post">
<?php foreach ($articles as $article): ?>
<div>
<?php echo htmlout($article[$id]['id']);?>
<?php echo htmlout($article[$id]['summary']);?>
</div>
</form>
以下是一篇文章应用程序,用户点击特定标题(来自addarticle.html.php)并动态创建一个新页面,其中显示正在阅读的完整文章。我无法将变量从上述页面传递到fullarticle.html.php页面。关于如何正确地使应用程序动态创建新页面的任何想法
之后从数据库加载特定文章信息<a href="?viewarticle?id=<?php echo'$id' ?>">
单击?
答案 0 :(得分:1)
首先,我假设&#34; fullarticle&#34;只是一篇文章,因此您不需要在该模板中拥有foreach()
。
其次,您使用mysqli_query提取数据,因此您的值应该是:
$articleData = $result->fetch_object()
然后:
$articleData['id']
$articleData['summary']
此外,在您的mysqli_real_escape_string
来电中,您使用$_POST
代替$_GET
来获取ID值,请修复此问题。
答案 1 :(得分:0)
OMG!
<?php foreach ($articles as $article): ?>
<li>
为什么不断地交换进出PHP - 它很混乱,使得代码难以调试/读取。
<form action="" method="post">
为什么在通过GET发送参数时发布POST,确实无法提交表单?
<div>
<a href="?viewarticle?id=<?php echo'$id' ?>">
$ ID? $ id是多少?通常'?'标记查询的开始,但随后的表达由'&amp;'分隔。您似乎正在解析index.php中的viewarticle参数 - 但是href和表单都没有在那里发送数据。
<?php echo htmlout($article['id']);?>
htmlout()做什么?为什么要单独使用PHP?为什么关闭并删除PHP标记?
<?php echo htmlout($article['summary']);?>
再一次!
</div>
</form>
</li>
<?php endforeach; ?>
假设神秘变量实际上是$ article ['id'] ......
<?php
foreach ($articles as $article) {
print "<li><a href='/?viewarticle&id=" . $article['id']
. "'>" . htmlout($article['id'])
. htmlout($article['summary'])
. "</a></li>\n";
}
?>
其余的代码也对html如何工作以及php数组如何工作感到困惑。