Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Skrypt ustawiający przekierowanie 301 ze zduplikowanych podstron
Forum PHP.pl > Forum > Przedszkole
Greg23
Napisałem taki skrypcik:

  1. $sql = "select link, count(*) from tabela group by link";
  2.  
  3. $ans = mysql_query($sql);
  4. $deleted = 0;
  5. while (list($tytul, $cnt) = mysql_fetch_array($ans)) {
  6. if ($deleted > 5000) exit;
  7. if ($cnt > 1) {
  8. $cnt2 = $cnt - 1;
  9. $deleted ++;
  10. $sql2 = "delete from tabela where link = '$tytul' limit $cnt2";
  11. mysql_query($sql2);
  12. echo $tytul.'<br/>';
  13. }
  14. }


Działa on w ten sposób, że wyszukuje mi duplikaty podstron w serwisie (jest ich sporo) na podstawie pola 'link' i kasuje je, zostawiając
tylko 1 rekord.
Chciałbym to przerobić w taki sposób, żeby zamiast kasowania skrypt ustawiał wszystkim zduplikowanym rekordom przekierowanie 301
na ten 1 rekord, który pozostanie.

Problem jest tylko taki w jaki sposób dostać adres tej jednej strony, która zostaje ?

Czy aby pobrać dane ostatniego rekordu wystarczy przed kasowaniem zrobić:
  1. $sql = "SELECT * from tabela where link = '$tytul' ORDER BY DESC LIMIT 1";

To będzie ten ostatni rekord ?
klocu
  1. $sql = "SELECT * from tabela where link = '$tytul' ORDER BY !_____! DESC LIMIT 1";

order by (co) kierunek

masz tam zapewne jakiś identyfikator tych rekordów co?

--
jak chcesz dostać więcej informacji rzuć schematem tabelki i jakimiś np przykładowymi danymi
Greg23
Ok, już sobie poradziłem...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.