Я работаю над проектом, который отображает изображение продукта. Чтобы получить более подробную информацию о продуктах, я поместил ссылку, поэтому, когда мы наведем курсор на изображение, мы получим ссылку, например:
localhost/kbashop/display.html.php?name=alcatel.jpg
Так как же я могу изменить вышеуказанную ссылку на что-то вроде: localhost/kbashop/alcatel.html?
Я видел на многих сайтах электронной коммерции.
<?php
include_once'includes/connect.php';
try {
$sql = "SELECT filename FROM productlist LIMIT 4";
$s = $pdo->query($sql);
$result = $s->fetchAll(PDO::FETCH_ASSOC);
$counter = 0;
} catch (PDOException $e) {
$error = "Problem with your code".$e->getMessage();
}
?>
<!DOCTYPE html>
<html lang="fr" class="no-js">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Trouver un emploi rapidement.">
<meta name="auteur" content="kbajobs">
<head>
<title>KBASHOP</title>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/main.css">
<style type="text/css">figcaption
{
text-align:center;
font-weight: bold;
font-size: 12px;
border: 2px solid olive;
padding-top: 5px;
}
</style>
</head>
<body>
<header>
<div class="logo">
<h1><b>KBA</b><strong>Shop.com</strong></h1>
</div>
</header>
<div class="main">
<div class="catalog cf">
<ul class="products">
<?php foreach($result as $row):
$name = $row['filename'];
list($width, $height) = getimagesize("images/thumbs/$name");
?>
<li>
<a href="display.html.php?name=<?php echo $name;?>">
<img src="https://web-answers.ru/wp-content/uploads/2019/02/thumbs/<?php echo $row['filename']?>" width="<?php echo $width;?>" height="<?php echo $height;?>"/>
</a>
</li>
<?php endforeach;?>
</ul>
</div>
</div>
<footer>
<div class="footer-info cf">
<p>© Copyright - Tous droits réservés aux test - 2015</p>
</div>
</footer>
</body>
<html>
Пожалуйста, любая ссылка на учебник или советы или советы по этим темам действительно понравится сохранение.
Поэтому здесь я помещаю свой код для получения дополнительной помощи.
Мне удалось добиться этого, отредактировав файл .htaccess в корневом каталоге, добавив некоторые правила перезаписи.
Есть много способов сделать это в зависимости от URL, который вы хотите показать. Эти URL называются «дружественными». Этот простой пример решит ваш конкретный запрос:
RewriteEngine On
RewriteRule ^([^/]*)\.html$ /display.php?name=$1 [L]
Вы должны знать, что эти правила, как правило, усложняются в зависимости от требований к дружественным URL-адресам и размера проекта.
Один совет, который я хотел бы добавить, это не называть ваши файлы .html.php. Не усложняйте вызов ваших HTML-файлов с помощью .html и ваших PHP-файлов с помощью .php
Чтобы получить больше документации по этой теме, прочитайте о дружественных URL. Правила переписывания htaccess.
Рад помочь!
Других решений пока нет …