Я строю простой газетный сайт из-за школьной работы. У меня две таблицы в моей базе данных.Каков наилучший способ получить информацию о категории и информацию о статье одновременно с mysql/php?
Категории [CategoryID, CategoryName, ParentID (что указывает на cat.id)]
Статья [ArticleID, заглавия, Teasertext, Материалами дате, категории (что внешний ключ CategoryID)]
На первой странице я вынимаю последние статьи, и ниже каждой статьи должна быть ссылка на статью (которая основана на index.php? Name = CategoryName & parent = ParentID).
Мне нужно снять соответствующую информацию о CategoryName и ParentID из категории-информации в статьях-таблице.
Я застрял на том, как объединить два запроса в одном. Мне интересно, есть ли у вас какие-либо идеи о том, как ее решить?
Это то, что я получил.
function display_articles($link)
{
$result = mysqli_query($link, "SELECT * FROM Article ORDER BY Date DESC");
if (!$result)
{
$error = 'Error fetching Articles: ' . mysqli_error($link);
exit();
}
while ($row = mysqli_fetch_array($result))
{
$Heading[] = $row['Heading'];
$Teasertext[] = $row['Teasertext'];
$Date[] = $row['Date'];
}
if (isset($Heading))
{
for ($i=0; $i<count($Heading); $i++)
{
echo '<div class="frontpage"><h2>' .htmlspecialchars($Heading[$i], ENT_QUOTES, "UTF-8"). '</h2>';
echo htmlspecialchars($Date[$i], ENT_QUOTES, "UTF-8");
echo '<p class="Teasertext"> ' .htmlspecialchars($Teasertext[$i], ENT_QUOTES, "UTF-8"). '</p></div>';
echo '<a href="index.php?name='
}
}
}
Вы в настоящее время только один запрос в вашей выборке. Итак, какие два вопроса вы пытаетесь объединить? Вы читали какую-либо документацию MySQL/SQL? Вы знаете, как использовать JOINs? –
Очевидно, что нет. Я прочитаю об этом, tnx! –
Вы также можете не захотеть использовать 'SELECT *'. По моему опыту, очень мало случаев, когда вам действительно нужны все столбцы данных в запросе. Хотя использование «SELECT *» может показаться простым способом написания кода, это делает ваше приложение потенциально обрабатывать больше данных, чем нужно, замедляет производительность при работе с вашим набором результатов и потребляет больше памяти, чем необходимо, по путь. –