Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Newsy + automatyczne linki
Forum PHP.pl > Forum > PHP
kwiatek
Witam
Na stronie www.polskikosz.pl mam newsy baze zawodnikow i klubow oparte jest wszystko na MySQL i php i teraz jak wpisuje w tresci newsa np:
Zawodnik ITK Notec Alex Austin rzucil dzisiaj ...
chcialbym aby po wykonaniu zapytania sql tworzyl sie link do klubu i do
zawodnika tyle ze nie wiem jak to zrobic probowalem
$SQL = "SELECT * FROM news, klub,zawodnicy";
ale nic mi nie wycodzi nie wiem moze trzeba dodac klauzule WHERE ?
jeszcze jedna sprawa w bazie mam osobno imie zawodnika i nazwisko wiec przy linku trzeba by to bylo polaczyc w jedno
A zeby zrobic tak aby np po wpisaniu np Austinowi tez go rozpoznalo jako
Austina to trzeba skorzystac z wyrazen regularnych np:
^$imie$ - czy cos takiego? albo $imie$
tresc linka wygladala by tak
$tresc = ereg_replace($imie, "<A HREF='id.4.php dzial=1&poddzial=2&klub=$klub&zawodnik=$zawodnik'>$imie $nazwisko</A>", $tresc);
czy jakos tak jezeli ktos wie jak to zrobic to bardzo prosze o pomoc
Domel
trzeba zastosowac where !
hyper
Sprawa jest dosyć skomplikowana, bo z tego co napisałeś nie wiadomo, które słowa są nazwiskiem zawodnika, więc trzeba zrobić odwrotne wyszukiwanie. Opisze algorytm tej czynności:

1) pobierasz z bazy imiona i nazwiska graczy
2) dla każdego gracza szukasz w newsie imienia
3) jeśli imie istnieje to sprawdź czy następny wyraz to nazwisko
4) jeśli tak to zamień to na link
5) analogicznie postępujesz z klubem

Zapewne trzeba jeszcze uwzględnić odmianę niektórych imion.
kwiatek
No i niby wszystko jest ok. Wyszukuje mi imiona i nazwiska jeszcze nie polaczylem tego w jeden link ale pracuje nad tym. nawet jak wpisze imie Alexa to mi tez podkresla calosc. Tyle ze zamiast jednego newsa pokazuje sie np 6 tych samych i w pierwszym jest odnosnik do Austina a w ostatnim czyli 6 odnosnik do Welsha. W bazie Austin ma przypisany numer 1 a Welsh 6. Wiem ze jest to zwiazane z zapytaniem sql mam je zdefiniowane w ten sposob:
$sql = "SELECT * FROM news,zaw ORDER BY id DESC LIMIT 15";
Domel mowiles ze trzeba dodac WHERE ale nie za bardzo wiem jak to zrobic. Dla imienia jest przypisana zmiennna $imie dla nazwiska $nazwisko a dla numeru zawodnika $zawodnik. Jezeli mozesz mi podac jak powinno wygladac poprawne zapytanie bede wdzieczny.
haiaw
Cytat
$sql = "SELECT * FROM news,zaw ORDER BY id DESC LIMIT 15";
Domel mowiles ze trzeba dodac WHERE ale nie za bardzo wiem jak to zrobic. Dla imienia jest przypisana zmiennna $imie dla nazwiska $nazwisko a dla numeru zawodnika $zawodnik. Jezeli mozesz mi podac jak powinno wygladac poprawne zapytanie bede wdzieczny.


Jezeli chcesz wyswietlic dane jednego zawodnika to robisz:
$sql = "SELECT * FROM news,zaw WHERE nazwisko = '$nazwisko' ORDER BY id DESC LIMIT 15 ";

Oczywiscie zakladajac,ze w tabeli masz kolumne nazwisko.
Inne kombinacje robisz analogicznie.
kwiatek
Tak wiem ale to nie o to chodzi ja nie chce pobierac danych jednego zawodnika chce wszystkich zawodnikow odzukac ich w newsie i zrobic link do nich a cos mi zapytanie nie dziala tak jak trzeba bo wyswietla mi sie kilka tych samych newsow. Dokladnie o co mi chodzi pisalem wyzej chcialbym pomocy tylko w zapytaniu bo z reszta dam sobie rade. chyba... smile.gif
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.