Skocz do zawartości

QlWeb - usuwanie pustych podkategorii


Jelcyn

Rekomendowane odpowiedzi

Chyba każdy kto ma katalog oparty na QlWebie ma taki problem, że przyjdzie jakiś debil, założy podkategorie w których nie doda wpisu i robi się burdel. Często ktoś odruchowo zamiast nazwy nowego kategorii wpisze np. adres swojej strony.

Napisałem prosty skrypt, który usuwa puste podkategorie. Nie zastąpi to moderowania katalogu, ale na pewno trochę posprząta. Testowałem z QlWebem v 2.6

<?

$dbhost = "localhost";

$dbuser = "x";

$dbpasswd = "x";

$db_name="x";

$db=mysql_connect("$dbhost","$dbuser","$dbpasswd") or die("<p align=\"center\"><font color=\"red\"><b>Nie moge sie polaczyc z baza danych</b></font></p>");

mysql_select_db($db_name,$db) or die("<p align=\"center\"><font color=\"red\"><b>Nie moge sie polaczyc z baza danych</b></font></p>");

$result = mysql_query("SELECT id_pod, podkategoria, id_kat FROM podkategorie WHERE 1");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

$idp=$row[0];

$pod=$row[1];

$idk=$row[2];

// echo($pod."<br>");

$ile=0;

$result2 = mysql_query("SELECT id FROM powiazania WHERE id_pod=$idp");

$ile=mysql_num_rows($result2);

if ($ile==0){

//echo($pod."<br>");

$delete=mysql_query("delete from podkategorie where id_pod=$idp");

}

mysql_free_result($result2);

}

mysql_free_result($result);

mysql_close ($db);

echo("Gotowe");

?>

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 miesiące temu...

mala poprawka do powyzszego skryptu do usuwania pustych podkategorii, dodany przedrostek;)

testowane na wersji 2.8.8...

<?

//konfiguracja dostępu do bazy //
$dbhost = "localhost";
$dbuser = "x";
$dbpasswd = "x";
$db_name="x";
$g_przedrostek = 'x';   /// przedrostek (prefix) do tabeli


$db=mysql_connect("$dbhost","$dbuser","$dbpasswd") or die("<p align=\"center\"><font color=\"red\"><b>Nie moge sie polaczyc z baza danych</b></font></p>");
mysql_select_db($db_name,$db) or die("<p align=\"center\"><font color=\"red\"><b>Nie moge sie polaczyc z baza danych</b></font></p>");

$result = mysql_query("SELECT id_pod, podkategoria, id_kat FROM `" . $g_przedrostek . "podkategorie` WHERE 1");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$idp=$row[0];
$pod=$row[1];
$idk=$row[2];

// echo($pod."<br>");
$ile=0;
$result2 = mysql_query("SELECT id FROM `" . $g_przedrostek . "powiazania` WHERE id_pod=$idp");
$ile=mysql_num_rows($result2);

if ($ile==0){
//echo($pod."<br>");
$delete=mysql_query("delete from `" . $g_przedrostek . "podkategorie` where id_pod=$idp");
}
mysql_free_result($result2);

}
mysql_free_result($result);

mysql_close ($db);

echo("Gotowe");
?>

Blog meloniq | Katalog allweb

Odnośnik do komentarza
Udostępnij na innych stronach

Kapitalny skrypt! Wielkie dzięki za udostepnienie.

;)

Też miałem problem z uruchomieniem, bo leniwie przekopiowałem ustawienia połączenia z pliku vars.php "po całości"... Gdy zrobiłem to uważnie, jak trzeba - zadziałało doskonale.

Załadowałem plik do katalogu głównego z Qlwebem - to tutaj trzeba go umieścić? Czy w katalogu /Adm? (To w sumie kosmetyczne pytanie, bo gdy skrypt siedzi w katalogu głównym działa doskonale, więc chyba już nie będę robił "lepiej").

Ten skrypt jest mi bardzo przydatny, gdyż w jednym z moich Qlwebów, co trzy-cztery dni jakiś suczysyn dodaje ponad 1000 (tysiąc) pustych podkategorii! Zawsze w tym samym katalogu, chyba po złości mi to robi...

----

Update

Skrypt działa zarówno z katalogu /adm jak i katalogu głównego Qlweba. Mi wygodniej jest go uruchamiać z katalogu głównego, gdyż po skończonej pracy wyświetla się komunikat "gotowe". Gdy go uruchomię z katalogu /adm Qlweba, to koniec pracy poznaję tylko po zmianie animacji znaczka Firefoxa...

;-)

pozdrowienia

Dla tych, co lubią zdjęcia planet: Planety i ich zdjęcia, dla tych, co lubią katalogi stron: Podwójny katalog stron. Albo Idź do diabła.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...
  • 1 miesiąc temu...

Można na końcu owego skryptu (przed zamknięciem połączenia z bazą danych) dodać taką krótką linijkę:

$x=mysql_query("OPTIMIZE TABLE `podkategorie`");

Wiadomo jak skrypt wywali dużą ilość pustych podkategorii to nieźle to zfragmentuje bazę a ta komenda powoduje optymalizację (defragmentację) tabeli podkategorie

Odnośnik do komentarza
Udostępnij na innych stronach

Dodawanie pustych podkategorii do Qlweb-ów jest wykonywane przez dodawarki. Robią to w regularnych odstępach czasowych dodając podkategorie do najpopularniejszych kategorii takich jak "Biznes", "Internet", "Regionalne", "Hobby". Po ostatnich porządkach u siebie, dosłownie minutę po usunięciu pustych kategorii pojawiły się te same. Najwyraźniej ktoś nie potrafi korzystać z Crona, albo tworzy sztuczną konkurencję.

serce.gifKocham Cię | Życie po Ślubie | Psychopatologia

Popełniłeś tylko jeden błąd ... jaki ? ... RAMBO !

Odnośnik do komentarza
Udostępnij na innych stronach

Jak widać automat. Wystarczy zablokować to IP

( 10 ) Kwiaty-195.114.1.154-( 05:02:05 )

( 10 ) Kwiaciarnia-195.114.1.154-( 05:02:05 )

( 208 ) Kwiaty-195.114.1.154-( 05:02:06 )

( 208 ) Kwiaciarnia-195.114.1.154-( 05:02:06 )

( 1857 ) Przepisy-195.114.1.154-( 08:29:27 )

( 1857 ) Przepisy kulinarne-195.114.1.154-( 08:29:27 )

( 3095 ) Przepisy-195.114.1.154-( 08:29:28 )

( 3095 ) Przepisy kulinarne-195.114.1.154-( 08:29:28 )

( 2 ) Przepisy kulinarne-195.114.1.154-( 08:29:29 )

( 1857 ) modlitwa-195.114.1.154-( 08:29:52 )

( 1857 ) pieśni-195.114.1.154-( 08:29:52 )

( 896 ) modlitwa-195.114.1.154-( 08:29:53 )

( 896 ) pieśni-195.114.1.154-( 08:29:53 )

( 568 ) modlitwa-195.114.1.154-( 08:29:53 )

( 568 ) pieśni-195.114.1.154-( 08:29:54 )

( 888 ) modlitwa-195.114.1.154-( 08:29:54 )

( 888 ) pieśni-195.114.1.154-( 08:29:55 )

( 7199 ) Kwiaty-195.114.1.154-( 08:30:10 )

( 7199 ) Kwiaciarnia-195.114.1.154-( 08:30:10 )

( 208 ) Kwiaty-195.114.1.154-( 08:30:11 )

( 208 ) Kwiaciarnia-195.114.1.154-( 08:30:11 )

( 7199 ) Kwiaty-195.114.1.154-( 08:30:15 )

( 7199 ) Kwiaciarnia-195.114.1.154-( 08:30:15 )

( 208 ) Kwiaty-195.114.1.154-( 08:30:16 )

( 208 ) Kwiaciarnia-195.114.1.154-( 08:30:16 )

( 7199 ) Kwiaty-195.114.1.154-( 08:30:21 )

( 7199 ) Kwiaciarnia-195.114.1.154-( 08:30:21 )

( 208 ) Kwiaty-195.114.1.154-( 08:30:21 )

( 208 ) Kwiaciarnia-195.114.1.154-( 08:30:22 )

( 1230 ) firmy windykacyjne-195.114.1.154-( 08:30:27 )

( 1230 ) wierzytelności-195.114.1.154-( 08:30:27 )

( 1608 ) firmy windykacyjne-195.114.1.154-( 08:30:28 )

( 1608 ) wierzytelności-195.114.1.154-( 08:30:28 )

( 1562 ) firmy windykacyjne-195.114.1.154-( 08:30:29 )

( 1562 ) wierzytelności-195.114.1.154-( 08:30:29 )

( 566 ) Warmia i Mazury-195.114.1.154-( 08:30:32 )

( 564 ) Warmia i Mazury-195.114.1.154-( 08:30:33 )

( 24 ) Warmia i Mazury-195.114.1.154-( 08:30:34 )

( 6849 ) Warmia i Mazury-195.114.1.154-( 08:30:35 )

( 1561 ) Warmia i Mazury-195.114.1.154-( 08:30:36 )

( 3150 ) kraków-195.114.1.154-( 08:30:38 )

( 566 ) kraków-195.114.1.154-( 08:30:40 )

( 564 ) kraków-195.114.1.154-( 08:30:41 )

( 7171 ) kraków-195.114.1.154-( 08:30:44 )

( 6849 ) kraków-195.114.1.154-( 08:30:45 )

( 1610 ) kraków-195.114.1.154-( 08:30:46 )

( 1561 ) kraków-195.114.1.154-( 08:30:47 )

( 564 ) Parki narodowe-195.114.1.154-( 08:30:50 )

( 564 ) ochrona przyrody-195.114.1.154-( 08:30:50 )

( 24 ) Parki narodowe-195.114.1.154-( 08:30:50 )

( 24 ) ochrona przyrody-195.114.1.154-( 08:30:51 )

( 7 ) szkoły językowe-195.114.1.154-( 08:30:53 )

( 3795 ) tanie linie-195.114.1.154-( 08:30:56 )

( 3795 ) tanie linie lotnicze-195.114.1.154-( 08:30:57 )

( 896 ) tanie linie-195.114.1.154-( 08:30:58 )

( 896 ) tanie linie lotnicze-195.114.1.154-( 08:30:58 )

( 888 ) tanie linie-195.114.1.154-( 08:30:59 )

( 888 ) tanie linie lotnicze-195.114.1.154-( 08:30:59 )

( 816 ) tanie linie-195.114.1.154-( 08:31:00 )

( 816 ) tanie linie lotnicze-195.114.1.154-( 08:31:00 )

( 330 ) tanie linie-195.114.1.154-( 08:31:03 )

( 330 ) tanie linie lotnicze-195.114.1.154-( 08:31:03 )

( 960 ) tanie linie-195.114.1.154-( 08:31:04 )

( 960 ) tanie linie lotnicze-195.114.1.154-( 08:31:04 )

( 4410 ) Prezenty-195.114.1.154-( 09:02:04 )

( 4410 ) upominki-195.114.1.154-( 09:02:04 )

( 4410 ) książki-195.114.1.154-( 09:02:05 )

( 4410 ) kosmetyki-195.114.1.154-( 09:02:05 )

( 3596 ) Prezenty-195.114.1.154-( 09:02:06 )

( 3596 ) upominki-195.114.1.154-( 09:02:06 )

( 3596 ) książki-195.114.1.154-( 09:02:06 )

( 3596 ) kosmetyki-195.114.1.154-( 09:02:06 )

( 797 ) Prezenty-195.114.1.154-( 09:02:07 )

( 797 ) upominki-195.114.1.154-( 09:02:07 )

( 797 ) książki-195.114.1.154-( 09:02:07 )

( 797 ) kosmetyki-195.114.1.154-( 09:02:07 )

( 2504 ) Prezenty-195.114.1.154-( 09:02:08 )

( 2504 ) upominki-195.114.1.154-( 09:02:08 )

( 2504 ) książki-195.114.1.154-( 09:02:08 )

( 2504 ) kosmetyki-195.114.1.154-( 09:02:09 )

( 261 ) Prezenty-195.114.1.154-( 09:02:09 )

( 261 ) upominki-195.114.1.154-( 09:02:10 )

( 261 ) książki-195.114.1.154-( 09:02:10 )

( 261 ) kosmetyki-195.114.1.154-( 09:02:10 )

( 313 ) Prezenty-195.114.1.154-( 09:02:11 )

( 313 ) upominki-195.114.1.154-( 09:02:11 )

( 313 ) książki-195.114.1.154-( 09:02:11 )

( 313 ) kosmetyki-195.114.1.154-( 09:02:11 )

( 4 ) upominki-195.114.1.154-( 09:02:12 )

serce.gifKocham Cię | Życie po Ślubie | Psychopatologia

Popełniłeś tylko jeden błąd ... jaki ? ... RAMBO !

Odnośnik do komentarza
Udostępnij na innych stronach

  • 4 tygodnie później...
  • 2 miesiące temu...
  • 1 rok później...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • 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