Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP][MySQL]Komentarze, artykuły - podstawy.
indiglo
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 11.04.2010

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


Witam

Jako, że jestem dość mocno raczkujący w w/w językach programowania piszę tu z prośbą o rade od doświadczonych programistów.
Chcę na swojej stronie zainstalować system komentarzy, jak i doprowadzić do porządku edycje i tworzenie nowego artykułu.

I problem:

Otóż mam taki oto kod:


  1. <?php
  2. if(isset($_GET["usun"]) && $_GET["usun"]==1)
  3. {
  4. mysql_connect('localhost','root');
  5. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  6. $id=$_GET["id"];
  7. $query="DELETE FROM news where id_news='$id'";
  8. if($result=mysql_query($query)){
  9. echo 'Pomyślnie usunięto wpis.';
  10. }
  11. else{
  12. echo 'Błąd bazy danych.';
  13. }
  14. }
  15.  
  16. if(isset($_GET["edit"]) && $_GET["edit"]==1)
  17. {
  18. mysql_connect('localhost','root');
  19. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  20. $id=$_GET["id"];
  21. $query="SELECT * FROM news WHERE id_news='$id' LIMIT 1";
  22. if($result=mysql_query($query)){
  23. echo 'Pomyślnie wybrano wpis.';
  24. }
  25. else{
  26. echo 'Błąd bazy danych.';
  27. }
  28. include("up_art.php");
  29.  
  30. }
  31. ?>
  32. <?php
  33.  
  34.  
  35.  
  36.  
  37. mysql_connect('localhost','root');
  38. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  39.  
  40. $query="SELECT * FROM news";
  41.  
  42. $result=mysql_query($query);
  43.  
  44. while ($r = mysql_fetch_assoc($result)) {
  45.  
  46. $tytul=$r["tytul"];
  47. $data=$r["data"];
  48. $tresc=$r["tresc"];
  49. $id=$r["id_news"];
  50.  
  51. echo"<table>";
  52. echo"<td>";
  53. echo " Tytul: $tytul </br>
  54. Data: $data </br>";
  55.  
  56. echo"</td>";
  57. echo"<td>";
  58. echo '<br><br><br><a href="index.php?pokaz=artlist&amp;usun=1&amp;id='.$r["id_news"].'">Usuń</a>';
  59. echo"</td>";
  60. echo "<td>";
  61. echo '<br><br><br>| <a href="index.php?pokaz=artlist&amp;edit=1&amp;id='.$r["id_news"].'">Edycja</a>';
  62. echo "</td>";
  63. echo "<hr style='width:200px;'>";
  64. echo"</table>";
  65.  
  66.  
  67.  
  68. }
  69.  
  70. ?>


Usuwanie działa poprawnie, natomiast edycję chciałem zrobić analogicznie. Niestety - próba zakończona porażką smile.gif Co jest do gruntownej poprawki?

II problem:

Tworzenie artykułu:

  1. <?php
  2. /*
  3. session_start();
  4. if(!session_is_registered("uzytkownik")){
  5. header("location:index.php");
  6. }
  7. session_destroy();
  8.  
  9. */
  10.  
  11. if(isset($_GET["new_art"]) && $_GET["new_art"]==1)
  12. {
  13. mysql_connect('localhost','root');
  14. @mysql_select_db(appledb) or die("Nie odnaleziono bazy danych");
  15. $query = "INSERT INTO news (tytul, data, tresc) VALUES ('$_POST[tytul]','$_POST[data]','$_POST[editor1]')";
  16. mysql_query($query);
  17. }
  18. ?>
  19. <html>
  20. <form action="index.php?pokaz=newart&amp;new_art=1" method="post">
  21. <table>
  22. <td>
  23. Tytul(max. 255 znaków): <td><input type="text" name="tytul" maxlength="255">
  24. Data(dd-mm-rrrr): <input type="text" name="data"></td>
  25. </td>
  26. </table>
  27.  
  28. <textarea name="editor1"></textarea>
  29. <script type="text/javascript">
  30. CKEDITOR.replace( 'editor1'
  31. );
  32. CKEDITOR.config.toolbar = 'Full';
  33. CKEDITOR.config.width='600px';
  34. CKEDITOR.config.resize_enabled = false;
  35. </script>
  36.  
  37. <input type="submit" value="Dodaj"/>
  38. </form>
  39. </html>
  40.  
  41. </body>
  42. </html>


Czy to ma rację bytu ? Przypuszczam, że jest zły adres w "action"...


III problem:

  1. <HTML>
  2. <HEAD>
  3. <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=iso-8859-2">
  4. <TITLE>Administracja komentarzami</TITLE>
  5. </HEAD>
  6. <BODY>
  7. <?php
  8.  
  9. if(isset($_GET["delete"]) && $_GET["delete"]==1)
  10. {
  11. mysql_connect('localhost','root');
  12. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  13.  
  14. $query="DELETE FROM news WHERE nr='$nr' LIMIT 1";
  15. if($result=mysql_query($query)){
  16. echo 'Pomyślnie usunięto wpis.';
  17. }
  18. else{
  19. echo 'Błąd bazy danych.';
  20. }
  21. }
  22. ?>
  23.  
  24.  
  25. <?php
  26.  
  27. echo "<b>Komentarze oczekujące zatwierdzenia:</b></br>";
  28. mysql_connect('localhost','root');
  29. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  30. $wynik = mysql_query ("SELECT * FROM komentarze WHERE zatwierdz=0;");
  31. while ($rekord = mysql_fetch_array ($wynik, MYSQL_NUM)) {
  32. $id=$rekord["nr"];
  33. $nr=$rekord[0];
  34. echo "</br>".$rekord[2]."<br>, <B> ".$rekord[1]."</B><br>, ".$rekord[3]."<br> <a href=\"index.php?pokaz=comments&amp;delete=1&amp;id=".$rekord["nr"]."\"> usuń </a> <br/>
  35. <a href=\"index.php?pokaz=comments&amp;accept=1&amp;id=$nr\"> zatwierdź </a><br><hr width='100px'></br></br>";
  36. }
  37. ?>
  38. </BODY>
  39. </HTML>


Nie reaguje na polecenie usunięcia przykładowego komentarza. Na moje oko w "a href'ie" jest zmienna na końcu niepoprawna. Dodatkowo chciałbym utworzyć możliwość komentowania pod każdym napisanym artykułem. Dodam, że wyświetlanie zrobione jest w taki oto sposób:

  1. <?php
  2.  
  3. mysql_connect('localhost','root');
  4. mysql_select_db(unti) or die("Nie odnaleziono bazy danych");
  5. $query="SELECT * FROM news";
  6.  
  7. $result=mysql_query($query);
  8.  
  9. while ($r = mysql_fetch_assoc($result)) {
  10.  
  11. echo '<div id=news'.$r["id_news"].'>';
  12. $tytul=$r["tytul"];
  13. $data=$r["data"];
  14. $tresc=$r["tresc"];
  15. $id=$r["id_news"];
  16.  
  17.  
  18.  
  19.  
  20. echo"Tytul: $tytul <br> Data: $data <br>";
  21.  
  22.  
  23. if(isset($_GET["more"]) && $_GET["more"]==1 && $r["id_news"]==$_GET["id"])
  24. {
  25. echo "<br>";
  26. echo $r["tresc"];
  27. }
  28.  
  29.  
  30. echo '<a href="index.php?pokaz=news_glowna&amp;more=1&amp;id='.$r["id_news"].'#news'.$r["id_news"].'"><br>Czytaj więcej</a><hr>';
  31.  
  32.  
  33.  
  34. echo"</div>";
  35.  
  36. }
  37.  
  38.  
  39.  
  40. ?>


Jak sensownie rozwiązać to, żeby po kliknięciu w "Czytaj więcej" rozwinął się artykuł jak i formularz łącznie z komentarzami?
W razie potrzeb, mogę zrobić screen'y z przeglądarki żeby do 'uwizualnić'.

Z góry bardzo dziękuję za rozwiązanie moich (dla Was łatwych wstydnis.gif ) komplikacji!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 18:52