Skocz do zawartości

Czy title generowane dynamicznie to dobra sprawa?


lamcpp
 Udostępnij

Rekomendowane odpowiedzi

Witam serdecznie,

mam strone opartą na php, gdzie artykuły są wczytywane z bazy, czy dobrym rozwiązaniem jest title takie same jak nazwa artykułu, wyciągane za pomocą polecenia:

<html>
<head>
	<?php
		require_once("admin/dane.php");
		require_once("funkcje.php"); 
	 if(isset($_GET['id'])){
		 $query = mysqli_query($dbc,"SELECT artykul.nazwa FROM artykul WHERE id={$_GET['id']}");
		 while($wynik = mysqli_fetch_array($query)){
			 echo "<title>$wynik[0]</title>";
		 }
	 }
?>
itd....

Czy moze lepiej byłoby zrobić osobną pozycje o nazwie title w bazie danych i przypisywać manualnie każdemu artykułowi jakiś title a następnie odcczytywać go za pomocą PHP z bazy?

Odnośnik do komentarza
Udostępnij na innych stronach

Zawsze lepiej mieć większą możliwość wpływania na title, zwłaszcza że nie jest to duży problem, więc raczej 2 opcja jest lepsza.

I tak nawiasem, jeżeli jest to rzeczywisty wycinek kodu twojej strony, to polecam poczytać trochę o bezpieczeństwie skryptów PHP, ciekawa lektura i zdecydowanie Ci się przyda.

Odnośnik do komentarza
Udostępnij na innych stronach

Najlepszym rozwiązaniem jest pobieranie title z tytułu artykułu z opcją manualnej zmiany title przy dodawaniu art. Jeśli nie wpiszesz title, to system powinien sam je wyciągnąć z bazy. W ten sposób działa moduł Nodewords do Drupal i wiesz mi, nie mam mu nic do zarzucenia.

Odnośnik do komentarza
Udostępnij na innych stronach

za pomocą polecenia:

<html>
<head>
	<?php
		require_once("admin/dane.php");
		require_once("funkcje.php"); 
	 if(isset($_GET['id'])){
		 $query = mysqli_query($dbc,"SELECT artykul.nazwa FROM artykul WHERE id={$_GET['id']}");
		 while($wynik = mysqli_fetch_array($query)){
			 echo "<title>$wynik[0]</title>";
		 }
	 }
?>
itd....

Po co stosujesz pętle while do przechodzenia przez jeden element tablicy !

Tak wystarczy:

$query = mysqli_query($dbc,"SELECT artykul.nazwa FROM artykul WHERE id={$_GET['id']}");
$wynik = mysqli_fetch_array($query, MYSQL_ASSOC);
echo "<title>$wynik['nazwa']</title>";

Edytowane przez Mion

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

spookypld pisze:

Najlepszym rozwiązaniem jest pobieranie title z tytułu artykułu z opcją manualnej zmiany title przy dodawaniu art. Jeśli nie wpiszesz title, to system powinien sam je wyciągnąć z bazy. W ten sposób działa moduł Nodewords do Drupal i wiesz mi, nie mam mu nic do zarzucenia.

Uważam, że to bardzo dobre rozwiązanie, tylko pytanie jak je wdrożyć: tzn. czy dobrze rozumiem:

W panelu admina powinienem mieć pole na wpisanie title, i w przypadku gdy nie wpiszę title, to system wczyta je z bazy z pola nazwa artykułu? Natomiast jeśli je wpisze to system powinien zapisać title do nowoutworzonej przeze mnie tabeli, w której będę przechowywał title?

I tabela title mogłaby się składać z pól: id, id_artykulu, tytul

Xelos pisze:

I tak nawiasem, jeżeli jest to rzeczywisty wycinek kodu twojej strony, to polecam poczytać trochę o bezpieczeństwie skryptów PHP, ciekawa lektura i zdecydowanie Ci się przyda.

Poczytałem, rozumiem że chodzi o to by pliki configuracyjne umieszczać poza folderem public_html i tak też zrobiłem.

Mion pisze:

Po co stosujesz pętle while do przechodzenia przez jeden element tablicy !

Tak wystarczy:

KOD

$query = mysqli_query($dbc,"SELECT artykul.nazwa FROM artykul WHERE id={$_GET['id']}");

$wynik = mysqli_fetch_array($query, MYSQL_ASSOC);

echo "<title>$wynik['nazwa']</title>";

Masz rację - dziękuję za słuszną uwagę

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności