Php 使用SQL获取变量以从数据库获取信息
Php 使用SQL获取变量以从数据库获取信息,php,sql,Php,Sql,所以我试图通过php创建一个连接到数据库的网站。它通过查询获取信息。这个网站应该是关于新闻的,我已经暂停了。我已经创建了一个完整的首页等,从数据库中获取新闻并显示它们,当您使用左侧的导航栏(lnav)时,它会显示您选择的特定新闻(这是第一个.php文档)。我现在想做的是制作一个单独的文章页面。我想在页面上显示标题、简介、正文、日期、作者姓名和标题、文件名、描述和标题,我还想使用包括从名为newswebb.php的第一个文档链接导航栏。此外,SQL查询不是英文的,如果您需要翻译,我会在需要时进行编
所以我试图通过php创建一个连接到数据库的网站。它通过查询获取信息。这个网站应该是关于新闻的,我已经暂停了。我已经创建了一个完整的首页等,从数据库中获取新闻并显示它们,当您使用左侧的导航栏(lnav)时,它会显示您选择的特定新闻(这是第一个.php文档)。我现在想做的是制作一个单独的文章页面。我想在页面上显示标题、简介、正文、日期、作者姓名和标题、文件名、描述和标题,我还想使用包括从名为newswebb.php的第一个文档链接导航栏。此外,SQL查询不是英文的,如果您需要翻译,我会在需要时进行编辑
这些是我编写的SQL查询来完成这一任务
-- headers and preambles to Article
SELECT Rubriker, Ingress, Brödtext, Publicerat
FROM Artiklar
WHERE ArtikelID IN (2);
--
-- I have retrieved "" name and title of all the article writer. '"
SELECT p.Namn, p.Titel, ae.ArtikelID
FROM artiklar_anställda ae join
anställda p
on p.AnställningsID = ae.AnställningsID
WHERE ae.ArtikelID IN (2);
--
-- specifies a article # 2
SELECT p.BildID, p.Filnamn, p.FotografNamn, ap.ArtikelID
FROM bilder p join
artiklar_bilder ap
on p.BildID = ap.ArtikelID
WHERE ap.BildID IN (2);
这就是我目前掌握的
$query = mysql_query("SELECT artiklar.ArtikelID, artiklar.Rubriker, artiklar.Ingress, artiklar.Brödtext, artiklar.Publicerat, anställda.Namn AS Namn, anställda.Titel, anställda.AnställningsID
FROM artiklar
INNER JOIN artiklar_anställda
ON artiklar.ArtikelID = artiklar_anställda.ArtikelID
INNER JOIN anställda
ON artiklar_anställda.AnställningsID = anställda.AnställningsID");
while($row = mysql_fetch_array($query)) {
echo '<div class="ingress">' . $row['Ingress'] . '</div>';
echo '<div class="date">Publicerat: ' . date("Y-m-d", strtotime($row['Publicerat'])) . '</div>';
echo '<div class="rubrik">' . $row['Rubriker'] . '</div>';
echo '<div class="artikel">' . $row['Brödtext'] . '</div>';
echo '<div class="">' . $row['Namn'] . '</div>';
}
?>
$query=mysql\u query(“选择artiklar.ArtikelID、artiklar.Rubriker、artiklar.ingres、artiklar.Brödtext、artiklar.Publicerat、anställda.Namn作为Namn、anställda.Titel、anställda.anställningsID
来自artiklar
内部连接artiklar_anställda
关于artiklar.ArtikelID=artiklar_anställda.ArtikelID
内部连接anställda
关于artiklar_anställda.anställningsID=anställda.anställningsID”);
while($row=mysql\u fetch\u array($query)){
回显'.$row['Ingress'].';
回显“Publicerat:”.date(“Y-m-d”,strotime($row['Publicerat']))”;
回显“.$row['Rubriker']”;
回显'.$row['Brödtext'].';
回显'.$row['Namn'].';
}
?>
但是我不能让它工作我想你要求的是通过get从数据库中取出一篇文章 如果是这样的话: 有一个url:
http://www.url.com/page.php?article=5
现在,您可以在php文件中检索文章
$articleId = $_GET['article'];
现在,您可以在查询中使用此变量来选择包含where子句的项目:
WHERE article_id = $articleId
旁注:
停止使用mysql_*函数。检查以上警告:
备选方案:mysqli或PDO
还可以让您验证所有内容并防止SQL注入。在插入任何查询之前,始终确保GET/POST元素的安全
$articleID = isset($_GET['article']) ? intval($_GET['article']) : '';
if(!$articleID)
{
exit("Invalid article id!");
}
//rest of code..
你犯了什么错误?旁注:mysql很快就会被弃用,您应该使用mysqli来编写新代码。