Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] system newsów co nie tak ?
Forum PHP.pl > Forum > Przedszkole
ahilles107
Witam !!posiadam skrypt newsów na stronę w php ale mam problem : po dodaniu newsa w pliku news.php widzę tylko tytuł i datę newsa A TREŚCI nie ;/
admin.php
  1. <?
  2. ?>
  3. <html>
  4.  
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  7. <title>NEWSY - panel administratora</title>
  8. </head>
  9.  
  10. <body>
  11. <?
  12. if(isset($_POST['pass']))
  13. {
  14. if($_POST['pass']=='wwwww') // Tu podajemy haslo jakim bedzie sie logowal admin do PA.
  15. {
  16. $_SESSION['admin']='ok';
  17. }
  18. }
  19. if((!isset($_SESSION['admin']) || $_SESSION['admin']!='ok') && $_GET['admin']!='wyloguj')
  20. {
  21. echo '<form method="POST" action="admin.php">
  22. <p align="center">
  23. Niestety nie jesteś zalogowany.<br> Proszę podać hasło:<br>
  24. <input type="password" name="pass" size="20"><br>
  25. <input type="submit" value="OK"></p>
  26. </form>';
  27. }
  28. if(isset($_GET['admin']) && $_GET['admin']=='wyloguj')
  29. {
  30. $_SESSION['admin']='';
  31. echo 'Nastąpiło wylogowanie<br> Przejdź do <a href="admin.php">strony głównej</a>...';
  32. }
  33. if($_SESSION['admin']=='ok')
  34. {
  35.  
  36. $uchwyt=mysql_connect('bazy5.vel.pl','wiesmisie_jelnica','ck8daj')
  37. or die('Nieudane połączenie z bazą danych...');
  38. mysql_select_db('wiesmisie_jelnica')
  39. or die('Nie udało się wybrać bazy danych...');
  40. ?>
  41. <table border="1" width="600" align="center">
  42. <tr>
  43. <td align="center"><b>PANEL ADMINISTRATORA - NEWSY</b></td>
  44. </tr>
  45. <tr>
  46. <td align="center">
  47. <a href="admin.php">Strona główna</a> |
  48. <a href="admin.php?newsy=pokaz">Pokaż newsy</a> |
  49. <a href="admin.php?newsy=dodaj">Dodaj newsa</a></td>
  50. </tr>
  51. <tr>
  52. <td align="center">
  53. <?
  54. if(isset($_GET['newsy']) && $_GET['newsy']=='pokaz')
  55. {
  56. echo '<b>NEWSY W TWOIM SERWISIE:</b><br>';
  57. $link=mysql_query('SELECT * FROM news ORDER BY id desc');
  58. while($wiersz=mysql_fetch_array($link))
  59. {
  60. echo '<b>'.$wiersz['tytul'].'</b>';
  61. echo ' - ';
  62. echo $wiersz['data'];
  63. echo ' - ';
  64. echo '<a href="admin.php?newsy=edytuj&id='.$wiersz['id'].'">Edytuj</a>';
  65. echo ' - ';
  66. echo '<a href="admin.php?newsy=usun&id='.$wiersz['id'].'">Usuń</a>';
  67. echo "<br>\n";
  68. }
  69.  
  70. }
  71. elseif(isset($_GET['newsy']) && $_GET['newsy']=='dodaj')
  72. {
  73. echo '<b>DODAJ NOWEGO NEWSA</b><br>';
  74. echo '<form method="POST" action="admin.php?newsy=dopisz">
  75. <table border="0" width="100%">
  76. <tr>
  77. <td>Tytuł:</td>
  78. <td><input type="text" name="tytul" size="64"></td>
  79. </tr>
  80. <tr>
  81. <td>Treść: </td>
  82. <td><textarea rows="5" name="tresc" cols="42"></textarea></td>
  83. </tr>
  84. <tr>
  85. <td> </td>
  86. <td><input type="submit" value="DODAJ"></td>
  87. </tr>
  88. </table>
  89. </form>';
  90. }
  91. elseif(isset($_GET['newsy']) && $_GET['newsy']=='edytuj' && isset($_GET['id']))
  92. {
  93. $id=$_GET['id'];
  94. $link=mysql_query("SELECT * FROM news WHERE id='$id'");
  95. $wiersz=mysql_fetch_array($link);
  96.  
  97. echo '<b>EDYTUJ NEWSA</b><br>';
  98. echo '<form method="POST" action="admin.php?newsy=wyedytuj&id='.$wiersz['id'].'">
  99. <table border="0" width="100%">
  100. <tr>
  101. <td>Tytuł:</td>
  102. <td><input type="text" name="tytul" size="64" value="'.$wiersz['tytul'].'"></td>
  103. </tr>
  104. <tr>
  105. <td>Treść: </td>
  106. <td><textarea rows="5" name="tresc" cols="42">'.$wiersz['tresc'].'</textarea></td>
  107. </tr>
  108. <tr>
  109. <td> </td>
  110. <td><input type="submit" value="EDYTUJ"></td>
  111. </tr>
  112. </table>
  113. </form>';
  114. }
  115. elseif(isset($_GET['newsy']) && $_GET['newsy']=='dopisz')
  116. {
  117. $tytul=$_POST['tytul'];
  118. $tresc=$_POST['tresc'];
  119. $data=date('d.m.Y, H:i');
  120.  
  121. mysql_query("INSERT INTO news VALUES(0,'$tytul','$tresc','$data')");
  122. echo 'Pomyślnie dodałem newsa o tytule: <b>'.$tytul.'</b> i o treści: <b>'.$tresc.'</b>';
  123.  
  124. }
  125. elseif(isset($_GET['newsy']) && $_GET['newsy']=='wyedytuj' && isset($_GET['id']))
  126. {
  127. $tytul=$_POST['tytul'];
  128. $tresc=$_POST['tresc'];
  129. $id=$_GET['id'];
  130.  
  131.  
  132. mysql_query("UPDATE news SET tytul='$tytul', tresc='$tresc' WHERE id='$id'");
  133. echo 'Pomyślnie wyedytowałem newsa! <br> Jego nowy tytuł to: <b>'.$tytul.'</b>, a treść: <b>'.$tresc.'</b>';
  134.  
  135. }
  136. elseif(isset($_GET['newsy']) && $_GET['newsy']=='usun' && isset($_GET['id']))
  137. {
  138. $id=$_GET['id'];
  139.  
  140. mysql_query("DELETE FROM news WHERE id='$id'");
  141. echo 'Pomyślnie usunąłem newsa numer '.$id.'!';
  142.  
  143. }
  144. else echo 'Witaj w panelu administracyjnym newsami...<br>
  145. W górnej części znajduje się menu, które pozwoji ci zarządzać newsami w twoim serwise.<br>
  146. <br>Korzystanie z tego systemu newsów jest całkowicie darmowe, nie wymagam także umieszczania mnie w stopce, ale jeśli chcesz to możesz to uczynić - nie obrażę się...<br>
  147. <a href="mailto:wormsikk@poczta.fm">WORMS</a>';
  148. ?></td>
  149. </tr>
  150. <tr>
  151. <td align="right"><a href="admin.php?admin=wyloguj">WYLOGUJ >></a></td>
  152. </tr>
  153. </table>
  154. <?
  155. mysql_close($uchwyt);
  156. }
  157.  
  158. ?>
  159. </body>
  160.  
  161. </html>

newsy.php
  1. <?
  2. $uchwyt=mysql_connect('bazy5.vel.pl','wiesmisie_jelnica','ck8daj')
  3. or die('Nieudane połączenie z bazą danych...');
  4. mysql_select_db('wiesmisie_jelnica')
  5. or die('Nie udało się wybrać bazy danych...');
  6.  
  7. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  8.  
  9. echo '<table>';
  10. while($wiersz=mysql_fetch_array($link))
  11. {
  12. echo '<tr><td>';
  13. echo $wiersz['tytul'];
  14. echo '</td><td>';
  15. echo $wiersz['data'];
  16. echo '</td></tr>';
  17. echo '<tr><td colspan="2">';
  18. echo $wiersz['tresc'];
  19. echo "</td></tr>";
  20. }
  21. echo '</table>';
  22. mysql_close($uchwyt);
  23. ?>

dodam ze jest to nie mój kod winksmiley.jpg
drPayton
1. Pokaż schemat tabeli z newsami
2. W pliku news.php dopisz:
  1. <?php
  2. (...)
  3. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  4. // Dopisz
  5. echo "<br /><pre>";
  6. echo "</pre><br />";
  7. (...)
  8. ?>


Wyświetli tablicę pierwszego pobranego rekordu, zobacz czy jest tam tresc
Cysiaczek
O jak mi miło, ze ktoś odświerzył...

@ahilles107
Popraw proszę tytuł topiku na zgodny z zasadami forum Przedszkole
ahilles107
http://jelnica.misie.net.pl/logowanie/admin.php (hasło wwwww)
http://jelnica.misie.net.pl/logowanie/newsy.php
- tutaj sami możecie zobaczyć jak teraz to wygląda winksmiley.jpg

newsy.php po tym co kazałeś dopisac wyglądają tak
  1. <?
  2. $uchwyt=mysql_connect('bazy5.vel.pl','wiesmisie_jelnica','ck8daj')
  3. or die('Nieudane połączenie z bazą danych...');
  4. mysql_select_db('wiesmisie_jelnica')
  5. or die('Nie udało się wybrać bazy danych...');
  6.  
  7. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  8. echo "<br /><pre>";
  9. echo "</pre><br />";
  10.  
  11. echo '<table>';
  12. while($wiersz=mysql_fetch_array($link))
  13. {
  14. echo '<tr><td>';
  15. echo $wiersz['tytul'];
  16. echo '</td><td>';
  17. echo $wiersz['data'];
  18. echo '</td></tr>';
  19. echo '<tr><td colspan="2">';
  20. echo $wiersz['tresc'];
  21. echo "</td></tr>";
  22. }
  23. echo '</table>';
  24. mysql_close($uchwyt);
  25. ?>


jestem jeszcze bardzo poczatkujący więc prosiłbym o pomoc winksmiley.jpg a mianowicie jak pokazać schenat tabeli z newsami i wyświetlić pierwszą tablice pobranego rekordu??
drPayton
Jak wejdziesz na podany adres (news.php) to nad tabelką newsów zobaczysz właśnie efekt działania tego, co kazałem Ci dopisać (pierwszy rekord pobrany z bazy). Ale on akurat jest pusty, widzisz, że tylko data jest tam wpisana.
Więc sprawdzimy pozostałe rekordy, ten wpis który dopisałeś przesuń wewnątrz pętli while, i zakomentuj tymczasowo niepotrzebne echa czyli zrób tak:
  1. <?php
  2. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  3.  
  4. //echo '<table>';
  5. while($wiersz=mysql_fetch_array($link))
  6. {
  7. echo "<br /><pre>";
  8. var_dump($wiersz);
  9. echo "</pre><br />";
  10. //echo '<tr><td>';
  11. //echo $wiersz['tytul'];
  12. //echo '</td><td>';
  13. //echo $wiersz['data'];
  14. //echo '</td></tr>';
  15. //echo '<tr><td colspan="2">';
  16. //echo $wiersz['tresc'];
  17. //echo "</td></tr>";
  18. }
  19. //echo '</table>';
  20. mysql_close($uchwyt);
  21. ?>

Jak to zrobisz to odpal news.php, będziesz miał podgląd tego co zwraca zapytanie
ahilles107
zakomentowałem. czyli widze teraz dane które są zapisane w bazie winksmiley.jpg

ale w niej widać treści newsów.

co może być źle questionmark.gif
drPayton
Dopiero teraz zauważyłem, pole w bazie nie nazywa się tresc, ale tesc, więc albo popraw w bazie nazwę kolumny, albo w skrypcie (lepiej w bazie winksmiley.jpg )
-ahilles107-
aha a można prosić o krótką instrukcję jak tego dokonać questionmark.gif
drPayton
W pliku news.php dopisz:

  1. <?php
  2. $uchwyt=mysql_connect('bazy5.vel.pl','wiesmisie_jelnica','ck8daj')
  3. or die('Nieudane połączenie z bazą danych...');
  4. mysql_select_db('wiesmisie_jelnica')
  5. or die('Nie udało się wybrać bazy danych...');
  6. //dopisz:
  7. $alter = mysql_query("ALTER TABLE news CHANGE `tesc` `tresc` TEXT NOT NULL");
  8. echo ($alter) ? "<br />Nazwa tabeli zmieniona<br />" : "<br />Błąd!<br />";
  9. ?>

Wykonaj ten skrypt (przejdź do news.php), zobacz czy wykona się prawidłowo (komunikat). Jeśli nie - napisz, jeśli tak - wywal te dwie linijki i powinno wszystko śmigać
-ahilles107-
Działa winksmiley.jpg

Jesteś wielki winksmiley.jpg dzięki bardzo.
ahilles107
jeszcze o jedno mi chodzi winksmiley.jpg

Jak można by dodać do tego systemu obsługe obrazków questionmark.gif

zeby do każdewgo newsa był dodany obrazek??
drPayton
Do formularza dodajesz:
  1. <form enctype="multipart/form-data" (...)>

i pole input typu file. W php odwołujesz się do tego pliku poprzez tablicę $_FILES, a plik przerzucasz za pomocą move_uploaded_file
Poszukaj na forum, było setki razy
ahilles107
sorka ;/ pośpieszyłem się winksmiley.jpg fakt jest na forum winksmiley.jpg dzięki.
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.