Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ostatni rekord
Forum PHP.pl > Forum > PHP
ufoek
W ciągu ostatnich dni męcze się sporo na skryptem cenzury, ale niestey nie wiem czemu pobiera ciągle ostatni rekord z bazy.

  1. <?php
  2. function cenzor($t) { 
  3. $zapytanie = mysql_query ('SELECT * FROM cenzor'); 
  4. while ($r = mysql_fetch_array ($zapytanie)) 
  5. { 
  6. $sl[] = $r[slowo]; 
  7. } 
  8. $txt = str_replace ($sl, '*', $t); 
  9. echo $txt; 
  10. }
  11. ?>
Levabul
chyba miało być $r['slowo'] a nie $r[slowo] ale tak to by ci wywaliło błąd...
Mystic007
Jak dla mnie to powinno być dobrze, radzę też dodać: $sl = array();
Zamień też to:
  1. <?php
  2. $txt = str_replace ($sl, '*', $t); 
  3. echo $txt;
  4. ?>

na
  1. <?php
  2. print str_replace ($sl, '*', $t);
  3. ?>

I może zamiast echo/print dać return? Ale to to nie jest rozwiązanie twojego problemu, wg. kod który podałeś jest OK.
envp
a nie powinno byc w petli for?
przeciez $s1 totablica...
acztery
  1. <?php
  2. function cenzor($t) 
  3. { 
  4. $zapytanie = mysql_query ('SELECT * FROM cenzor'); 
  5. while ($r = mysql_fetch_array ($zapytanie)) 
  6. { 
  7.  print str_replace ($r["slowo"], '*', $t); 
  8.  }
  9. return;
  10. }
  11. ?>


pisze bez sprawdzania , PS sprawdz tez jak by byly jakis klopoty czy $r["slowo"] zawiera jakies dane
Mystic007
acztery, ten kod który przysąłeś może i będzie działał ale wyświetli tekst nawet 100 razy, a każdy bedzie się różnił tym, że maksymalnie tylko 1 słowo zostanie zakodowane.... Jakby co to trzeba by było nie printować tego tylko zapisywać do zmiennej, a potem raz wypisać.
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.