Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][HTML][PHP]Edycja skryptu dodawania newsów
Forum PHP.pl > Forum > Przedszkole
Yasiu
Witam.
Jestem totalnym laikiem w php. Dzisiaj pierwszy raz napisałem skrypt. Mam prośbę o wskazówki jak go dostosować do moich oczekiwań.
Jest to prosty system wyświetlania newsów, a właściwie newsa. I tutaj tkwi mój problem. Skrypt wyświetla mi tylko jeden wiersz z bazy danych odpowiadający jednemu newsowi (chyba tak to mogę określić).
Chciałbym żeby kolejne newsy automatycznie pojawiały się na stronie po dodaniu ich do bazy danych (także poprzez skrypt - z nim na razie nie mam problemów).

Tutaj kod:
  1. <?php
  2. include("polacz.php");
  3. $query = mysql_query("select * from news order by id");
  4. while($rekord = mysql_fetch_array($query))
  5. {
  6. $naz .= '<li><a href="news.php?id='.$rekord[0].'">'.$rekord[1].'</a> Autor: '.$rekord[3].' - '.$rekord[2].'</li>';
  7. $tytul = $rekord[1] ;
  8. $data = $rekord[2] ;
  9. $autor = $rekord[3] ;
  10. $tresc = $rekord[4] ;
  11. }
  12.  
  13. echo '<ul>'.$naz.'</ul><br><br><div class="post"><h2 class="title"><a href="#"><center>'.$tytul.'</a></h2></center>'.'<br>
  14. <p class="byline"><small>Dodany '.$data.' przez <b>'.$autor.'</b></small></p>
  15. <div class="entry">'.$tresc.'<p class="links"><a href="http://nk.pl/..." target="_blank" class="comments">Skomentuj na forum</a></p></div></div>' ;
  16. ?>


Chciałbym więc, żeby taki kod pojawiał się automatycznie w moim index.php, tzn. aby wyświetlały się wszystkie newsy z bazy danych.

Mam nadzieję, że mój problem jest zrozumialy i liczę na odpowiedź.
kilab
Przenieś echo do pętli między { } i wtedy wyświetli wszystkie rekordy, teraz pokazuje tylko ostatni.
Yasiu
Tak, dziękuję. Oto chodziło.
Yasiu
Witam ponownie. Teraz mam problem z skrypytem który ma za zadanie usunąć wybrane newsy z bazy danych, niestety nie działa.
  1. <?php
  2. include("polacz.php");
  3. $query = mysql_query("select * from news order by id desc ");
  4. $usun = mysql_query("DELETE FROM news WHERE id = 'NIE ZA BARDZO WIEM CO TU WPISAĆ';");
  5. while($rekord = mysql_fetch_array($query))
  6. {
  7. $naz .= '<li><a href="news.php?id='.$rekord[0].'">'.$rekord[1].'</a> Autor: '.$rekord[3].' - '.$rekord[2].'<form action=""><input type="checkbox" name="NIE ZA BARDZO WIEM CO TU WPISAĆ" value="NIE ZA BARDZO WIEM CO TY WPISAĆ"/>usuń</form></li>';
  8. }
  9. echo '<ul>'.$naz.'</ul><br><br><form action="'.$usun.'"><input type="submit" value="Usuń wybrane" /></form>';
  10.  
  11. ?>
b4rt3kk
  1. <?php
  2. include("polacz.php");
  3.  
  4. // usuwanie newsow
  5.  
  6. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  7. $tab = implode(',', $_POST['deleteNews']);
  8. $usun = mysql_query("DELETE FROM news WHERE id IN ({$tab})");
  9. }
  10.  
  11.  
  12. $query = mysql_query("select * from news order by id desc ");
  13.  
  14. // sam formularz powinien wyglądać mniej więcej tak
  15.  
  16. echo '<form action="" method="POST"><ul>';
  17.  
  18. while($rekord = mysql_fetch_array($query))
  19. {
  20. echo '<li><a href="news.php?id='.$rekord[0].'">'.$rekord[1].'</a> Autor: '.$rekord[3].' - '.$rekord[2].'<input type="checkbox" name="deleteNews[]" value="$rekord[0]"/>usuń</li>';
  21. }
  22.  
  23. echo '</ul><input type="submit" value="Usuń wybrane" /></form>';
  24. ?>
Yasiu
No niestety, nie zbyt to działa.
Dlaczego wartość
  1. <form action=
powinna pozostać pusta?
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.