Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]komentarze na stronie
Forum PHP.pl > Forum > Przedszkole
kasik1
Witam.

Bardzo proszę o pomoc. Znam tylko podstawy html, a potrzebuję aby na stronie była możliwość dodawania komentarzy do artykułów.

Znalazłam w sieci podobno prosty skrypt php do dodawania komentarzy na stronę. Składa się z czterech plików:

add.php
all.php
kom.php
data.txt


Jak ja to mam połączyć ze stroną? Nie wiem nawet czy poprawnie zadaję pytanie. Chodzi mi o to, co mam wpisać w kodzie strony, i gdzie żeby to zadziałało? Rozumiem,że te cztery pliki powinny się znaleźć na serwerze ftp ale, ale jak to powiązać ze stroną.

Bardzo, bardzo proszę o pomoc. Na prawdę nie wiem jak się za to zabrać.




Oto pliki skryptu:

============================
add.php

PHP:

Kod:
<?
$napis="dziękujemy za komentarz";
$dataloc="data.txt";

$zobacz="<a href=all.php>$napis</a>";

$read=fopen($dataloc, "r");
$fileread = fread($read, filesize($dataloc));
fclose($read);


fwrite (fopen("data.txt", "r+"), "<table border=0 cellpadding=0 cellspacing=0 width=100%><td width=100%><font SIZE=\"3\" color=\"Maroon\" face=\"times new roman\"><b>$imiez $imie</b></font> &amp;nbsp;&amp;nbsp;&amp;nbsp;<font size=\"3\" color=\"Maroon\" face=\"times new roman\"><u>$mailz $mail</u></font> <br><br> <font SIZE=\"3\" color=\"Maroon\" face=\"times new roman\"><i>$komentz $koment</i></font> <BR><hr noshade size=1 color=#000000><br> \n $fileread</td>
</table>");

fclose(fopen("data.txt", "a+"));

echo ("$zobacz");
?>






============================
all.php

PHP:

Kod:
<?
//otwieranie komentarzy

$sciezka = "data.txt";
$plik = fopen($sciezka, "r");
$zawartosc = fread($plik, filesize("data.txt"));

echo $zawartosc
?>








=============================
kom.php

Kod:
<form method="post" action="add.php">
<table>
<tr>
<td width="80">imię/nick:</td>
<td><input type="text" name="imie" size=20>
mail: <input type="text" name="mail" size=20><br></td>
</tr>
<tr>
<td width="80">komentarz:</td>
<td><textarea name="koment" rows=9 cols=38></textarea></p>
<input type="submit" value="Dodaj"></td>
</tr>
</table>
</form>






==============================
data.txt

Kod:
<table border=0 cellpadding=0 cellspacing=0 width=100%><td width=100%>
</table></td>
</table>




Pozdrawiam.

A może ktoś ma prosty skrypt do komentarzy? Najlepiej z instrukcją ,dla kompletnie zielonych, jak tego użyć. Wystarczy mi na stronie okno na wpisanie treści komentarza, nicka i żeby te komentarze było widać pod artykułem, nic więcej.
wookieb
Proszę wstawić bbcode.
kasik1
Pewnie się skompromituję jeszcze bardziej. Nie wiem czy o to chodziło w prośbie moderatora.
Będę wdzięczna, jeśli toś znajdzie chwilę,żeby pomóc w poruszonym przeze mnie temacie.
Pzdr

add.php
  1. <?
  2. $napis="dziękujemy za komentarz";
  3. $dataloc="data.txt";
  4.  
  5. $zobacz="<a href=all.php>$napis</a>";
  6.  
  7. $read=fopen($dataloc, "r");
  8. $fileread = fread($read, filesize($dataloc));
  9. fclose($read);
  10.  
  11.  
  12. fwrite (fopen("data.txt", "r+"), "<table border=0 cellpadding=0 cellspacing=0 width=100%><td width=100%><font SIZE=\"3\" color=\"Maroon\" face=\"times new roman\"><b>$imiez $imie</b></font> &amp;nbsp;&amp;nbsp;&amp;nbsp;<font size=\"3\" color=\"Maroon\" face=\"times new roman\"><u>$mailz $mail</u></font> <br><br> <font SIZE=\"3\" color=\"Maroon\" face=\"times new roman\"><i>$komentz $koment</i></font> <BR><hr noshade size=1 color=#000000><br> \n $fileread</td>
  13. </table>");
  14.  
  15. fclose(fopen("data.txt", "a+"));
  16.  
  17. echo ("$zobacz");
  18. ?>


all.php
  1. <?
  2. //otwieranie komentarzy
  3.  
  4. $sciezka = "data.txt";
  5. $plik = fopen($sciezka, "r");
  6. $zawartosc = fread($plik, filesize("data.txt"));
  7.  
  8. echo $zawartosc
  9. ?>


kom.php
  1. <?
  2. //otwieranie komentarzy
  3.  
  4. $sciezka = "data.txt";
  5. $plik = fopen($sciezka, "r");
  6. $zawartosc = fread($plik, filesize("data.txt"));
  7.  
  8. echo $zawartosc
  9. ?>


data.txt
  1. <table border=0 cellpadding=0 cellspacing=0 width=100%><td width=100%>
  2. </table></td>
sadistic_son
Te skrypty można połączyć ze stroną na kilka różnych sposobów ale bez dokumentu do którego chcesz to wrzucić niewiele pomożemy. Pokaż kod swojej strony (tego fragmentu gdzie mają się wyświetlać komentarze) albo chociaż daj do niej link.
Plik data.txt w obecnej postaci to jakieś nieporozumienie. Nie wiem czy zauważyłaś ale all.php i kom.php to to samo. Z kolei add.php pochodzi chyba sprzed 10 lat. Jest niepotrzebnie zagmatwany i zupełnie niezgodny ze standardami W3C.
No i brakuje formularza dodawania komentarzy.

Podsumowując: Podałaś za mało informacji aby móc Ci pomóc. Nie znamy konstrukcji strony ; na jakiej zasadzie wyświetlane są artykuły ( z bazy danych, z plików txt czy bezpośrednio w html )? Jeśli to czysty html to trochę mija się z celem dodawanie komentarzy bo przy każdorazowym dodaniu nowego artykułu musiałabyś wklejać skrypt wyświetlania komentarzy pod każdym artykułem.
kasik1
Witam.

Bardzo dziękuję za odpowiedź.

To ,że all.php i kom.php to to samo, to mój błąd (sorry), źle wkleiłam w bbcode. W pierwszym poście jest poprawnie.


Założeniem moim jest stworzenie bardzo prostego serwisu ( to i tak wielkie słowo, na to co zamierzam zrobić) opartego jedynie ma html i css. Tylko o tym mam jako takie pojęcie i będę sobie z tym w stanie poradzić. Ze strony głównej będą przekierowania na strony , na których będą artykuły. I pod tymi art. chciałabym żeby było okienko dodawania komentarzy i widoczne dodane komentarze.
Artykuły będę wyświetlane bezpośrednio w html. Zdaję sobie sprawę z tego ,że przy każdorazowym dodaniu nowego artykułu będzie konieczność wklejać skryptu wyświetlania komentarzy. Zakładam, że serwis nie będzie bardzo rozbudowany i nie będzie dużo tych artykułów.

Niestety nie mam jeszcze co pokazać, nie mam gotowego serwisu. W zasadzie mam tylko mglistą wizję , tego co chcę. Ale na pewno będą mi potrzebne te komentarze. Na szybko skleciłam tylko szkic strony ( tak naprawdę to podstrony serwisu), na której miałyby być dodawane komentarze. Oczywiście menu , część z informacjami po prawo, nagłówek, stopka , top strony oraz treść „po środku” w ogóle całość, są tylko „naszkicowane” po to, żeby pokazać jaki jest mój zamysł i żeby może było łatwiej wytłumaczyć komuś kto się nade mną ulituje co i gdzie ja mam wpisać w kod strony, żeby skrypt obsłużył najprostsze okienko dodawania komentarzy (takie jak właśnie na tym moim „szkicu” )

Ja wiem, że kompletnemu laikowi, na dodatek bez opracowanej jeszcze strony, ciężko cokolwiek wytłumaczyć, ale bardzo, bardzo proszę o pomoc.


  1.  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4.  
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  6. <title>simple document</title>
  7. <link rel="stylesheet" type="text/css" href="style.css" />
  8. </head>
  9. <div id="naglowek">
  10. <p>
  11. nagłówek
  12. </p>
  13. </div>
  14.  
  15.  
  16. <div id="top">
  17.  
  18. <p>
  19. top
  20. </p>
  21. </div>
  22.  
  23.  
  24.  
  25. <div id="menu">
  26. <p>
  27. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
  28. </p>
  29. </div>
  30.  
  31.  
  32. <div id="informacje">
  33. <p>
  34. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
  35. </p>
  36. </div>
  37.  
  38. <div id="tresc">
  39. <p>
  40. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  41. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  42. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  43.  
  44. </p>
  45.  
  46.  
  47. <form method="post" action="add.php">
  48. <tr>
  49. <td width="80">imię/nick:</td>
  50. <td><input type="text" name="imie" size=20>
  51. mail: <input type="text" name="mail" size=20><br></td>
  52. </tr>
  53. <tr>
  54. <td width="80">komentarz:</td>
  55. <td><textarea name="koment" rows=9 cols=38></textarea></p>
  56. <input type="submit" value="Dodaj"></td>
  57. </tr>
  58. </form>
  59.  
  60. </div>
  61.  
  62.  
  63.  
  64. <div id="stopka">
  65. <p>
  66. to co najczęściej podaje się w stopce
  67. </p>
  68. </div>
  69.  
  70. </body>
  71. </html>
  72.  
  73.  
  74. </body>
  75. </html>






  1.  
  2. css
  3.  
  4.  
  5. body {
  6. background-color: #fff;
  7. color: #000;
  8. margin-right: 5cm;
  9. margin-left: 5cm;
  10. }
  11.  
  12. #top {
  13. width:780px;
  14. }
  15.  
  16. #naglowek {
  17. background-color: #888;
  18. }
  19.  
  20. #menu {
  21. width: 150px;
  22. float: left;
  23. overflow: hidden;
  24. background-color: #ccc;
  25. }
  26.  
  27. #informacje {
  28. width: 150px;
  29. float: right;
  30. overflow: hidden;
  31. background-color: #ccc;
  32. text-align: justify;
  33. }
  34.  
  35. #tresc {
  36. width: 480px;
  37. float: left;
  38. overflow: hidden;
  39. background-color: #fff;
  40. text-align: justify;
  41. padding-left: 20px;
  42. }
  43.  
  44. #stopka {
  45. clear: both;
  46. width: 100%;
  47. background-color: #888;
  48. }
sadistic_son
Wow, zarys to nawet na wyrost powiedziane tongue.gif

No dobra, to lecimy. Zapomnij o tamtym skrypcie co sobie w necie znalazłaś. Jeśli już uparłaś się aby każdy artykuł był w oddzielnym pliku html, nieprzechowywanym w bazie tylko bezpośrednio w html to musi to wyglądać mniej więcej tak:
  1. <?php
  2. //sprawdzenie czy wyslano komentarz
  3. if(isset($_POST['send'])){
  4. //sprawdzenie czy wypelniono wszystkie pola
  5. if(!empty($_POST['imie']) && !empty($_POST['mail']) && !empty($_POST['koment'])){
  6. $data=date("Y/m/d H:i:s",time());
  7. $tresc=$_POST['imie'].';;;'.$_POST['mail'].';;;'.$_POST['koment'].';;;'.$data.'[;;;]';
  8. file_put_contents('art_id.txt',$tresc,FILE_APPEND); // <======TUTAJ
  9. }else{echo 'Wypelnij wszystkie pola!';}
  10. }
  11.  
  12. echo '<form method="post" action="add.php">
  13. <table>
  14. <tr>
  15. <td width="80">imię/nick:</td>
  16. <td><input type="text" name="imie" size=20>
  17. mail: <input type="text" name="mail" size=20><br></td>
  18. </tr>
  19. <tr>
  20. <td width="80">komentarz:</td>
  21. <td><textarea name="koment" rows=9 cols=38></textarea></p>
  22. <input type="submit" name="send" value="Dodaj"></td>
  23. </tr>
  24. </table>
  25. </form>';
  26.  
  27. //wyswietlanie komentarzy
  28. $file=file_get_contents("art_id.txt"); // <======TUTAJ
  29. $koment=explode("[;;;]",$file);
  30. foreach($koment as $k){
  31. $kom=explode(";;;",$k);
  32. $imie=$kom[0];
  33. $mail=$kom[1];
  34. $koment=$kom[2];
  35. $data=$kom[3];
  36.  
  37. echo "Dnia $data Użytkownik $imie mail $mail napisal:<br />$koment<br />";
  38. }
  39. ?>
Cały ten kod wklej w każdym miejscu gdzie mają się wyświetlać komentarze i formularz do ich dodawania. Założyłem, że każdy artykuł to oddzielny plik, że nie wyświetlasz ich np. jeden pod drugim. Wszędzie gdzie masz strzałki TUTAJ musisz pozamieniać string art_id na konkretne id artykułu. Musi ono być niepowtarzalne dla każdego artykułu. Najlepiej kolejne liczby. Czyli dla przykładu artykuł "O mnie" zamiast art_id ma 1, artykuł "Lekcja html" zamiast art_id ma 2 itp. To jest bardzo ważne bo komentarze do artykułów są zapisywane w oddzielnych plikach nazywanych właśnie tym art_id czyli 1.txt , 2.txt itd.
Jest to rozwiązanie generalnie że tak powiem cieniackie... jakiekolwiek negatywne znaczenie temu słowu nadasz to będzie odpowiednie wink.gif

Piszesz, że znasz podstawy html i css więc sposób wyświetlania komentarzy sformatuj sobie sama. To ostatnie echo w kodzie.

No i zaznaczam, że skrypt pisałem na szybko, prosto z głowy, nie testowałem go czy działa, nie jest w żaden sposób zabezpieczony przed złośliwością użytkowników ani w ogóle przed niczym. To podstawa podstawy systemu komentarzy.

PS: Acha, no i oczywiście teraz Twój plik nie może mieć rozszerzenia html tylko php
kasik1
Hej.
Dzięki, dzięki, dzięki.

Wow, zarys to nawet na wyrost powiedziane tongue.gif hi, hi, no wiem, ale wystarczyło,żeby było na czym wytłumaczyć


Jest to rozwiązanie generalnie że tak powiem cieniackie... jakiekolwiek negatywne znaczenie temu słowu nadasz to będzie odpowiednie wink.gif jak uda mi się to zrobić i zadziała , to dla mnie będzie to i tak radocha i mistrzostwo świata

Piszesz, że znasz podstawy html i css więc sposób wyświetlania komentarzy sformatuj sobie sama. To ostatnie echo w kodzie.

No i zaznaczam, że skrypt pisałem na szybko, prosto z głowy, nie testowałem go czy działa, nie jest w żaden sposób zabezpieczony przed złośliwością użytkowników ani w ogóle przed niczym. To podstawa podstawy systemu komentarzy.

PS: Acha, no i oczywiście teraz Twój plik nie może mieć rozszerzenia html tylko php
[/quote]

Jeszcze raz wielkie dzięki, wielkie.
Pzdr


No niestety sad.gif nie działa.

Na stronie pod oknem dodawania komentarzy jest:

Warning: file_get_contents(1.txt) [function.file-get-contents]: failed to open stream: No such file or directory in /homez.331/ogrzewanj/www/1.php on line 105

Notice: Undefined offset: 1 in /homez.331/ogrzewanj/www/1.php on line 115

Notice: Undefined offset: 2 in /homez.331/ogrzewanj/www/1.php on line 117

Notice: Undefined offset: 3 in /homez.331/ogrzewanj/www/1.php on line 119

a po dodaniu komentarza, otwiera się strona z tym:

The requested URL /add.php was not found on this server.


Co zrobiłam źle?
pzdr


No niestety :(nie działa.

Na stronie pod oknem dodawania komentarzy jest:

Warning: file_get_contents(1.txt) [function.file-get-contents]: failed to open stream: No such file or directory in /homez.331/ogrzewanj/www/1.php on line 105

Notice: Undefined offset: 1 in /homez.331/ogrzewanj/www/1.php on line 115

Notice: Undefined offset: 2 in /homez.331/ogrzewanj/www/1.php on line 117

Notice: Undefined offset: 3 in /homez.331/ogrzewanj/www/1.php on line 119

a po dodaniu komentarza, otwiera się strona z tym:

The requested URL /add.php was not found on this server.


Co zrobiłam źle?
pzdr
sadistic_son
Oj, małe niedopatrzenie.... w linijce 12 mojego kodu zmień add.php na nazwę Twojego pliku, do którego to wklejasz.

A kod z linijek od 28 do 38 włącznie zastąp tym:
  1. $plik='art_id.txt'; // <==== TUTAJ
  2. if (file_exists($plik)) {
  3.  
  4. $file=file_get_contents($plik);
  5. $koment=explode("[;;;]",$file);
  6. foreach($koment as $k){
  7. $kom=explode(";;;",$k);
  8. $imie=$kom[0];
  9. $mail=$kom[1];
  10. $koment=$kom[2];
  11. $data=$kom[3];
  12.  
  13. echo "Dnia $data Użytkownik $imie mail $mail napisal:<br />$koment<br />";
  14. }
  15.  
  16.  
  17. }

kasik1
No ni choroby nie działa.
Teraz wyświetla się jedynie: Parse error: syntax error, unexpected $end in /homez.331/ogrzewanj/www/1.php on line 138

Cały kod wygląda tak:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3.  
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  5. <title>simple document</title>
  6. <link rel="stylesheet" type="text/css" href="style.css" />
  7. </head>
  8. <div id="naglowek">
  9. <p>
  10. nagłówek
  11. </p>
  12. </div>
  13.  
  14.  
  15. <div id="top">
  16.  
  17. <p>
  18. top
  19. </p>
  20. </div>
  21.  
  22.  
  23.  
  24. <div id="menu">
  25. <p>
  26. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
  27.  
  28. <a href="1.php">1</a>
  29.  
  30. </p>
  31. </div>
  32.  
  33.  
  34. <div id="informacje">
  35. <p>
  36. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
  37. </p>
  38. </div>
  39.  
  40. <div id="tresc">
  41. <p>
  42. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  43. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  44. "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  45.  
  46. </p>
  47.  
  48.  
  49. <?php
  50.  
  51. //sprawdzenie czy wyslano komentarz
  52.  
  53. if(isset($_POST['send'])){
  54.  
  55. //sprawdzenie czy wypelniono wszystkie pola
  56.  
  57. if(!empty($_POST['imie']) && !empty($_POST['mail']) && !empty($_POST['koment'])){
  58.  
  59. $data=date("Y/m/d H:i:s",time());
  60.  
  61. $tresc=$_POST['imie'].';;;'.$_POST['mail'].';;;'.$_POST['koment'].';;;'.$data.'[;;;]';
  62.  
  63. file_put_contents('art_id.txt',$tresc,FILE_APPEND); // <======TUTAJ
  64.  
  65. }else{echo 'Wypelnij wszystkie pola!';}
  66.  
  67. }
  68.  
  69.  
  70.  
  71. echo '<form method="post" action="1.php">
  72.  
  73.  
  74. <tr>
  75.  
  76. <td width="80">imię/nick:</td>
  77.  
  78. <td><input type="text" name="imie" size=20>
  79.  
  80. mail: <input type="text" name="mail" size=20><br></td>
  81.  
  82. </tr>
  83.  
  84. <tr>
  85.  
  86. <td width="80">komentarz:</td>
  87.  
  88. <td><textarea name="koment" rows=9 cols=38></textarea></p>
  89.  
  90. <input type="submit" name="send" value="Dodaj"></td>
  91.  
  92. </tr>
  93.  
  94. </table>
  95.  
  96. </form>';
  97.  
  98.  
  99.  
  100. //wyswietlanie komentarzy
  101.  
  102. $plik='1.txt'; // <==== TUTAJ
  103. if (file_exists($plik)) {
  104.  
  105. $file=file_get_contents($plik);
  106. $koment=explode("[;;;]",$file);
  107. foreach($koment as $k){
  108. $kom=explode(";;;",$k);
  109. $imie=$kom[0];
  110. $mail=$kom[1];
  111. $koment=$kom[2];
  112. $data=$kom[3];
  113.  
  114.  
  115.  
  116. echo "Dnia $data Użytkownik $imie mail $mail napisal:<br />$koment<br />";
  117.  
  118. }
  119.  
  120. ?>
  121.  
  122.  
  123. </div>
  124.  
  125.  
  126.  
  127. <div id="stopka">
  128. <p>
  129. to co najczęściej podaje się w stopce
  130. </p>
  131. </div>
  132.  
  133. </body>
  134. </html>
  135.  
  136.  



Pewnie jakiś banał, którego nie widzę. Chyba marnuję Twój czas.
sadistic_son
Niedomknięty nawias klamrowy ; wstaw go w linijce 123.
kasik1
O kurczaki, udało się smile.gif Teraz działa. Tylko po wysłaniu komentarza pod jego treścią pojawia się jeszcze to:

Notice: Undefined offset: 1 in /homez.331/ogrzewanj/www/1.php on line 114

Notice: Undefined offset: 2 in /homez.331/ogrzewanj/www/1.php on line 115

Notice: Undefined offset: 3 in /homez.331/ogrzewanj/www/1.php on line 116

sadistic_son
Wynika to z tego, że ostatni element zwrócony przez zewnętrzny explode jest pusty. Rozwiązanie - linijki od 113 do 121 włącznie zstąpić tym:
  1. if(isset($kom[0]) && isset($kom[1]) && isset($kom[2]) && isset($kom[3])){
  2. $imie=$kom[0];
  3. $mail=$kom[1];
  4. $koment=$kom[2];
  5. $data=$kom[3];
  6.  
  7. echo "Dnia $data Użytkownik $imie mail $mail napisal:<br />$koment<br />";
  8. }
Mówiłem, że to rozwiązanie jest nie najlepsze. Takie rzeczy jak komentarze załatwia się bazą danych.

I zwróć uwagę, że w swoim kodzie nie wszędzie art_id masz zastąpione przez swoje id, czyli jak mniemam 1.
kasik1
Teraz wszystko działa. Mała rzecz a cieszy. Bardzo mi pomogłeś.
Jeszcze raz dzięki, za pomoc, cierpliwość i poświęcony czas.
Pzdr

Antosiekkal
Mnie się kurka ni w chorobę nie chce otwierać sad.gif
Pokazuje mi się pod polem do wpisania takie coś:
'; //wyswietlanie komentarzy $file=file_get_contents("art_id.txt"); // <======TUTAJ $plik='art_id.txt'; // <==== TUTAJ if (file_exists($plik)) { $file=file_get_contents($plik); $koment=explode("[;;;]",$file); foreach($koment as $k){ $kom=explode(";;;",$k); $imie=$kom[0]; $mail=$kom[1]; $koment=$kom[2]; $data=$kom[3]; echo "Dnia $data Użytkownik $imie mail $mail napisal:
$koment
"; } }

I w ogóle to nie chce mi się wysłać...
Cały mój kod komentarza który wpisałem to:
<?php
//sprawdzenie czy wyslano komentarz
if(isset($_POST['send'])){
//sprawdzenie czy wypelniono wszystkie pola
if(!empty($_POST['imie']) && !empty($_POST['mail']) && !empty($_POST['koment'])){
$data=date("Y/m/d H:i:s",time());
$tresc=$_POST['imie'].';;;'.$_POST['mail'].';;;'.$_POST['koment'].';;;'.$data.'[;;;]';
file_put_contents('art_id.txt',$tresc,FILE_APPEND); // <======TUTAJ
}else{echo 'Wypelnij wszystkie pola!';}
}

echo '<form method="post" action="add.php">
<p>
<tr>
<td width="80">imię/nick:</td>
<td><input type="text" name="imie" size=20>
mail: <input type="text" name="mail" size=20><br></td>
</tr>
<tr>
<td width="80">komentarz:</td>
<td><textarea name="koment" rows=9 cols=38></textarea></p>
<input type="submit" name="send" value="Dodaj"></td>
</tr>
</table>
</form>';

//wyswietlanie komentarzy
$file=file_get_contents("art_id.txt"); // <======TUTAJ
$plik='art_id.txt'; // <==== TUTAJ
if (file_exists($plik)) {

$file=file_get_contents($plik);
$koment=explode("[;;;]",$file);
foreach($koment as $k){
$kom=explode(";;;",$k);
$imie=$kom[0];
$mail=$kom[1];
$koment=$kom[2];
$data=$kom[3];

echo "Dnia $data Użytkownik $imie mail $mail napisal:<br />$koment<br />";
}


}



A jak, za przeproszeniem, wygląda ten kod? Bo ja jestem w tych sprawach matoł...
dublinka
Cytat(Antosiekkal @ 15.12.2020, 16:37:55 ) *
A jak, za przeproszeniem, wygląda ten kod? Bo ja jestem w tych sprawach matoł...

Nie jest mozliwe zeby część kodu była parsowana a częśc nie. Moze gdzies masz zamkniety znacznik ?>
To wszystko co masz czy to powycinales skas ?

Wogole to powinienes to zrobic inaczej bo teraz przy F5 dodaje sie to samo ciagle. Albo formularz w osobnym pliku i samo dodanie w osobnym a jak juz bardzo chcesz miec to w jednym to zabezpiecz powielanie wpisow poprzez cookie lub sesje.

U mnie jest ok samo wyswietlenie.
Antosiekkal
Cytat(dublinka @ 16.12.2020, 10:34:34 ) *
Nie jest mozliwe zeby część kodu była parsowana a częśc nie. Moze gdzies masz zamkniety znacznik ?>
To wszystko co masz czy to powycinales skas ?

Wogole to powinienes to zrobic inaczej bo teraz przy F5 dodaje sie to samo ciagle. Albo formularz w osobnym pliku i samo dodanie w osobnym a jak juz bardzo chcesz miec to w jednym to zabezpiecz powielanie wpisow poprzez cookie lub sesje.

U mnie jest ok samo wyswietlenie.

headsetsmiley.png


Dzięki za pomoc. Jeśli chodzi o to czy wycinałem to tak. To znaczy nie przysłałem całego kodu html do mojej strony bo to nie miałoby sensu. Umieściłem tylko CAŁY KOD HTML DO KOMENTARZA
dublinka
Jak juz napisalem zrob to porzadnie.
Jesli sobie nie poradzisz z wersja w jednym pliku to napisz to osobno. W jednym formularz ktory sle do pliku gdzie doda kom a jeszcze gdzie indziej wyswietlaj lub samo wyswietlanie zrob z formularzem. Teraz nie wiem jak jest bo sam piszesz ze powycinales
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.