Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]News System
Adis92
post
Post #1





Grupa: Zarejestrowani
Postów: 146
Pomógł: 12
Dołączył: 9.01.2009
Skąd: Płock

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


Mam pewien problem. Otóż napisałem sobie prosty skrypt na wyświetlanie newsów, tylko chciałbym aby na stronie głównej były wyświetlane tylko skróty newsów które są pobierane z bazy danych, a po kliknięciu w temat przechodziło do głównej treści.
I jeszcze jeden problem jak dodać żeby przy dodawaniu newsa dodawało godzinę dodania. Próbowałem z $godz = time("H:m:s"); ale nie dodaje mi godziny tylko w bazie jest 00:00:00.
Skrypt include.php (wyświetla skróty newsów):
  1. <?php
  2.    $polacz = mysql_connect("host", "user", "password");
  3.  
  4.    if($polacz){
  5.        $select = mysql_select_db("baza");
  6.    } else echo "Blad polaczenia!";
  7.  
  8.    if($select){
  9.        $pytanie = mysql_query("SELECT * FROM nowosci ORDER BY id desc limit 0,5 ");
  10.    } else echo "Blad wyboru Bazy!";
  11.    
  12.        mysql_close($polacz);
  13.    
  14.            if($pytanie){
  15.                while($dane = mysql_fetch_assoc($pytanie)){
  16.        
  17.                    echo "<div id='news'>";
  18.                    echo "<h1><a href='includes/news.php?id=".$dane[id]."'>".$dane['temat']."</a></h1>";
  19.                    echo "<b class='news'>".$dane['datadodania']."</b><br><br>";
  20.                    echo "<p> ".$dane['skrot']." </p><br>";
  21.                    echo "<img src='images/linia.png' alt=''><br><br>";
  22.                    echo "</div>";
  23.                }
  24.            } else echo "Blad zapytania!";
  25. ?>

News.php (plik który ma wyświetlać całość newsa):
  1. <?php
  2.    $polacz = mysql_connect("host", "user", "password");
  3.  
  4.    if($polacz){
  5.        $select = mysql_select_db("baza");
  6.    } else echo "Blad polaczenia!";
  7.  
  8.    if($select){
  9.        $pytanie = mysql_query("SELECT * FROM nowosci WHERE id='$id'");
  10.    } else echo "Blad wyboru Bazy!";
  11.    
  12.        mysql_close($polacz);
  13.    
  14.            if($pytanie){
  15.                while($dane = mysql_fetch_assoc($pytanie)){
  16.        
  17.                    echo "<div id='news'>";
  18.                    echo "<h1>".$dane['temat']."</h1>";
  19.                    echo "<b class='news'>".$dane['datadodania']."</b><br><br>";
  20.                    echo "<p> ".$dane['tresc']." </p><br>";
  21.                    echo "<img src='images/linia.png' alt=''><br><br>";
  22.                    echo "</div>";
  23.                }
  24.            } else echo "Blad zapytania!";
  25. ?>


I może ktoś wie jak zrobić aby jak w polu z którego dodaje newsa po naciśnięciu entera działało tak jakbym dodał <br>.
Go to the top of the page
+Quote Post
patryczakowy
post
Post #2





Grupa: Zarejestrowani
Postów: 420
Pomógł: 44
Dołączył: 22.10.2008

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


mb_substr
Go to the top of the page
+Quote Post
kefirek
post
Post #3





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


Cytat(Adis92 @ 19.02.2009, 20:23:07 ) *
I może ktoś wie jak zrobić aby jak w polu z którego dodaje newsa po naciśnięciu entera działało tak jakbym dodał <br>.


Zainteresuj się nl2br

Cytat(Adis92 @ 19.02.2009, 20:23:07 ) *
chciałbym aby na stronie głównej były wyświetlane tylko skróty newsów które są pobierane z bazy danych, a po kliknięciu w temat przechodziło do głównej treści.


Najlepiej użyj do wyświetlania krótkiej formy newsa substr i zrób link więcej i przekazuj GETem id newsa i odczytuj całą zawartość

Prosty przykład
  1. <?php
  2. if(isset($_GET['wiecej'])){
  3. $pytanie = mysql_query("SELECT * FROM nowosci WHERE id='$wiecej' LIMIT 1");
  4. }
  5. ?>


Cytat(Adis92 @ 19.02.2009, 20:23:07 ) *
I jeszcze jeden problem jak dodać żeby przy dodawaniu newsa dodawało godzinę dodania. Próbowałem z $godz = time("H:m:s"); ale nie dodaje mi godziny tylko w bazie jest 00:00:00.
.


Dodawaj date w postaci:
NOW()
CURDATE()
Lub
time();

Ten post edytował kefirek 19.02.2009, 20:37:26
Go to the top of the page
+Quote Post
slewin
post
Post #4





Grupa: Zarejestrowani
Postów: 104
Pomógł: 7
Dołączył: 9.12.2008
Skąd: wroc

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


ad1.
W skrypcie dodawania wiadomości daj np. coś takiego
  1. <?php
  2. //początek
  3. ....
  4.         $query = "INSERT INTO news (pole1, pole2, pole3, pole4,".
  5.           " datadodania) VALUES ('$pole1', '$pole2', '$pole3', '$pole4', ".
  6.           "now());";
  7. .....
  8. //koniec
  9. ?>


ad2.
http://forum.php.pl/index.php?showtopic=73343

pozdro
Go to the top of the page
+Quote Post
Adis92
post
Post #5





Grupa: Zarejestrowani
Postów: 146
Pomógł: 12
Dołączył: 9.01.2009
Skąd: Płock

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


Z tym nl2br działa ale chciałbym zrobić że wystarczy nacisnąć enter i nie trzeba \n pisać.
Przychodzi mi do głowy sposób taki że sprawdza czy w treści został użyty enter jeżeli tak to automatycznie dodaje w trakcie dodawania do bazy wstawia w te miejsce <br>
W Delphi czy jakimś innym języku zrobiłbym że po naciśnięciu buttona wyślij przeszukiwało by czy został użyty kod ascii (odpowiadający enterowi) jeżeli tak to zamieniałoby go na <br>. Ale nie wiem jak w php coś takiego zrobić.

Ten post edytował Adis92 19.02.2009, 22:53:20
Go to the top of the page
+Quote Post
matixrr
post
Post #6





Grupa: Zarejestrowani
Postów: 207
Pomógł: 44
Dołączył: 14.04.2007

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


  1. <?php
  2. $tresc = str_replace("\n","<br>",$tresc);
  3. ?>
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: 26.08.2025 - 03:49