Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]jeden rekord - jeden link
qt0
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 30.09.2009

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


Witam, pytałem się wujka google czy mnie przypadkiem nie uświadomi w tej kwestii, niestety. Zdaję sobie sprawę, że rozwiązanie jest pewnie banalne, bo występuje wszędzie, ale po prostu nie mogę (IMG:style_emoticons/default/blinksmiley.gif)

Otóż tworzę system newsów, już właściwie wszystko zrobione.
Ostatnim problemem jaki mi pozostał to podłączanie poszczególnych rekordów bazy do pojedynczych linków.
Tabela bazy ma pola: tytuł, treśc, autora jako obcy klucz, nr kategorii jako obcy klucz do drugiej tabeli. Chodzi mi o to, żeby własnie mając pojedynczy rekord, wyświetlało mi na stronie tytuł (będący jednocześnie linkiem do całości artykułu) a i żeby wpisując sam link do przeglądarki, też trafic na konkretny artykuł.

Pozdrawiam

Ten post edytował qt0 6.06.2010, 14:35:39
Go to the top of the page
+Quote Post
zend
post
Post #2





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

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


Musisz przeksztalcac tytul na adres i zapisywać do bazy, potem szukasz po tym adresie
  1. function filter($string)
  2. {
  3. $string = str_replace(' ', '-', $string);
  4. $string = iconv('utf-8', 'ascii//translit', $string);
  5. $string = preg_replace('#[^a-z0-9\-\.]#si', '', $string);
  6. return str_replace('\'', '', $string);
  7. }
  8.  
  9. //tak wyswietlasz
  10. echo '<a href="'.$row['url'].'">'.$row['tytul'].'</a>';
  11.  


Ten post edytował zend 6.06.2010, 15:18:10
Go to the top of the page
+Quote Post
qt0
post
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 30.09.2009

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


Jeszcze jedno, jak wygenerowac taką stronę. Wszystko już ładnie działa, dzięki za podanie rozwiązania z linkami. Natomiast jeśli chodzi już o wejście pod dany link. Czy jest jakiś sposób, żeby generowac taką stronę przy kliknięciu na link? Czy może zrobic jakiś skrypt, który automatycznie po dodaniu artykułu do bazy danych tworzył by fizycznie taką stronę, w której byłoby zapytanie do tekstu z bazy?

Pozdrawiam i jeszcze raz dzięki za pomoc

[edit]
Doszedłem już jak to zrobic. Tak jak kolega zend poradził zrobiłem linki. Następnie miałem problem, bo nie wiedziałem czy tworzyc fizyczne strony, czy generowac z tego co mam w bazie danych. Okazało się to banalne, a ponieważ przynajmniej ja nie mogłem tego znaleźc to wklejam, jakby ktoś miał podobny problem

  1. $adres='http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; //pobiera adres aktualnego urla
  2.  
  3. $ciag = substr($adres, 34, strlen($adres)); //z urla a href=wyniki.php?wynik=".$wiersz['url']." wyciągam temat ( przy notacji tak jak to przedstawił zend)
  4.  
  5.  
  6. $db = new mysqli('localhost' , '*', '*', '*');
  7. if (!$db)
  8. throw new Exception('Połączenie z bazą danych nie powiodło się');
  9.  
  10. $autor="ktos";
  11. $dodaj="select * from art where '".$ciag."'=url"; //porównanie ciagu znaku do tego co mam zapisane w bazie pod pozycją url (notacja jak podał zend)
  12. $result = $db->query($dodaj);
  13.  
  14. $ile_znalezionych =$result->num_rows;
  15.  
  16. $wiersz=$result->fetch_assoc();
  17.  
  18. echo '<p><b>Utworzono dnia: </b>';
  19. echo stripslashes($wiersz['data']); //wyciaga poszczegolne kolumy
  20. echo ' przez autora <b>';
  21. echo stripslashes($wiersz['autor']);
  22. echo '</b><br/> Tresc: <br />';
  23. echo nl2br(stripslashes($wiersz['tekst'])); //zeby odczytywalo entery, taby i inne takie
  24. echo '<p>';
  25.  
  26. //hura, udalo sie ;)
  27.  


temat do zamknięcia
pozdrawiam


Ten post edytował qt0 7.06.2010, 00:23:07
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: 16.09.2025 - 08:59