Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Usuwanie zduplikowanych rekordów, różniących się tylko id
-Pomurnik-
post
Post #1





Goście







Mam linki w formacie:

  1. http://www.wp.pl/artykuły-medycyna-1234-nazwa_danego_artykułu


Niestety w bazie czasami mam kilka takich samych artykułów różniących się tylko id (1234).
Chciałbym się ich pozbyć na zasadzie takiej, że jeśli link różni się od innego tylko id, np:

  1. http://www.wp.pl/artykuły-medycyna-1234-nazwa_konkretnego_artykułu
  2. <a href="http://www.wp.pl/artykuły-medycyna-5678-nazwa_konkretnego_artykułu" target="_blank">http://www.wp.pl/artykuły-medycyna-5678-na...etnego_artykułu</a>


czyli nazwa artykułu jest taka sama, tylko id inne to wyświetlany jest tylko jeden link zamiast wszystkich.

Linki pobieram za bazy i wyświetlam w taki sposób:

$sql = "SELECT link (...) ";
$result1231 = mysql_query($sql);
while($row121 = mysql_fetch_array($result1231))
{

$row = $row121['link'];
echo '<a class="link" href="artykuły-medycyna-'.$row121['id'].'-'.$row.'" title="'.$row121['tytul'].'">'.$tytul2.'</a> <br />';

}

Reasumując, jak spowodować, żeby w zmiennej $row = $row121['link']; nie pojawiały się duplikaty linków, różniące się wyłącznie id ?
Go to the top of the page
+Quote Post
mat-bi
post
Post #2





Grupa: Zarejestrowani
Postów: 690
Pomógł: 92
Dołączył: 6.02.2011

Ostrzeżenie: (0%)
-----


  1. DISTINCT
Go to the top of the page
+Quote Post
--Gizmo--
post
Post #3





Goście







Nie może być DISTINCT, bo link jest składany po pobraniu danych z bazy więc trzeba to zrobić w php.
Trzeba by jakoś za pomocą preg_match sprawdzać czy linki różnią się tylko id, ale jak to zrobić w tej sytuacji ?
Go to the top of the page
+Quote Post
--Gizmo--
post
Post #4





Goście







Sory, ale troszkę, źle wytłumaczyłem jaki efekt chcę uzyskać.
To nie w/w zmienna pobierana bezpośrednio z bazy ma być unikalna, tylko link tworzony na jej podstawie, a konkretnie część href:

href="artykuły-medycyna-'.$row121['id'].'-'.$row.'"

Trzaba to zwinąć do zmiennej:

href="$href"
a
$href="artykuły-medycyna-'.$row121['id'].'-'.$row.'"

Jak spowodować, żeby $href się nie powtarzała (czyli różniła tylko id) ?
Go to the top of the page
+Quote Post
Daimos
post
Post #5





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Możesz złożyć go w locie za pomocą zapytania, ewentualnie zrobić tak, że kiedy w pętli generujesz każdy link, wrzucasz go do tablicy i za każdym razem sprawdzasz, czy w tej tablicy "już" taki istnieje. Wtedy usuwasz
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 17:47