Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Księga gości na home.pl nie działa, księga gości po przeniesieniu na serwery home.pl nie dział
rosirosi
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.11.2008

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


Witam serdecznie....
Mam taki problem, normalnie działająca zbudowana na jednym pliku księga gości oparta na zapisie do pliku txt po przniesieniu na serwery home.pl nie działa..
po wybraniu linku do wpisania się w pasku adresu zmienia sie adres tj. zmienia sie ?id=1 ktore powinno wywołać odpowiedni do wpisania kod w skrypcie ale nic sie nie dzieje oprocz przeładownia strony-odświeżenia... na lokalnym serwerze tez działa jak należy...
Czy moglibyście pomóc ?
oczywiscie CHMODy sa na 777
  1. <? if ($id==1): ?>
  2. <DIV class="styl"><BR><BR><BR><font size="4">Twój wpis do księgi:<BR><BR><BR></font>
  3. <FORM ACTION="book.php?id=2" METHOD="POST">
  4. Autor: &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
  5. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="Autor"><BR><BR>
  6. E-mail: &nbsp; &nbsp; &nbsp; &nbsp;
  7. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="adres"><BR><BR>
  8. www: &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
  9. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="web"><BR><BR>
  10. <font size="2">(pola e-mail i www mogą pozostać puste)</font><BR><BR>
  11. <TEXTAREA NAME="Tresc" WRAP COLS=50 style="BACKGROUND-COLOR: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" ROWS=5></TEXTAREA><BR><BR><BR> &nbsp; &nbsp; &nbsp;
  12. <INPUT TYPE=SUBMIT VALUE= " Dopisz " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF"> &nbsp; &nbsp; &nbsp;
  13. <INPUT TYPE="RESET" VALUE=" Wyczyć " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF">
  14. </FORM></DIV>
  15. <? exit; endif; ?>
  16.  
  17.  
  18. <? if ($id==2) {
  19.  
  20. if(($Autor=="") or ($Tresc=="")) // było jeszcze sprawdzanie pole e-mail, ale zrezygnowałem: or ($adres=="")
  21. //jesli pole autor lub tresc jest puste pojawia sie komunikat monitujacy
  22. {
  23. print("<BR><BR><P class=\"styl\"><B>Nie wypełniłe wszytkich pól !</B></P>");
  24. print("<BR><BR><P class=\"styl\"><A HREF=\"book.php?id=1\">powrót do formularza</A></P>");
  25. print("<P class=\"styl\"><A HREF=\"book.php\">powrót do księgi</A></P>");
  26. }
  27. //tu obrabia sie wpis przez usuniecie ewentualnych znakow niebezpiecznych,
  28. //a enter zamienia sie na przejscie do nowej linii
  29. $Tresc = ereg_replace("<","&lt;", $Tresc);
  30. $Tresc = ereg_replace(">","&gt;", $Tresc);
  31. $Tresc = ereg_replace("\n", "<BR>", $Tresc);
  32.  
  33. //wpisy ksiegi gosci pamietane sa w pliku o nazwie ksiazka.txt - oczywiscie mozna to zmienic
  34.  
  35. $nazwa = "ksiazka.txt";
  36.  
  37. //nie wysilalem sie z weryfikacja wpisanego przez goscia adresu wlasnej strony
  38. //po prostu mozna tutaj wpisac tylko adres w ktorym wystepuje ciag znakow ".pl"
  39. //moze jest to krzywdzace dla posiadaczy stron bez takich znakow w adresie,
  40. //ale z pewnoscia uchroni to ksiege przed wpisem zlosliwego goscia np. <a href="http://dupa.jasiu" target="_blank">http://dupa.jasiu</a>
  41.  
  42. if (ereg(".pl", $web)) {
  43. $web="moja strona: &nbsp; <a href=\"$web\" target='_blank'>$web</a><BR>";
  44. }
  45. else {
  46. $web="";
  47. };
  48.  
  49. //jak widac nizej wpis zawiera nie tylko dane wpisane przez goscia, ale takze rozmaite znaczniki
  50. //HTML formatujace wpis do postaci przydatnej do natychmiastowego wyswietlenia.
  51. //jest to rozwiazanie spotykane w wielu ksiegach gosci
  52.  
  53. if ($adres=="") {
  54. $adres="nie podano adresu e-mail";
  55. $wpis = "<I>".date("d.m.Y")." &nbsp; &nbsp; g. ".date("H.i")."</I><BR><B>$Autor<BR>$adres<BR>$web <BR></B> $Tresc\n";
  56. }
  57. else {
  58. $wpis = "<I>".date("d.m.Y")." &nbsp; &nbsp; g. ".date("H.i")."</I><BR><B>$Autor<BR> <a HREF=\"mailto:$adres\">$adres</A> <BR>$web<BR></B> $Tresc\n";
  59. };
  60. $myFile = fopen($nazwa, "r+");
  61. $wpis=$wpis.fread($myFile, filesize($nazwa));
  62. rewind($myFile);
  63. fputs($myFile, $wpis);
  64. fclose($myFile);
  65.  
  66. print("<BR><BR><P class=\"styl\"><B>Dziękuję za wpis!</B></P><BR>");
  67. print("<BR><BR><P class=\"styl\"><A href=\"book.php\">obejrzyj swój wpis</A></P>");
  68.  
  69. //w tym miejscu jest hiperlink do powrotu do strony glownej naszego serwisu np index.php lub index.htm itp.
  70.  
  71. print("<P class=\"styl\"><A href=\"index.php\">powrót do strony</A></P>");
  72. }
  73.  
  74. else { //id nie równa się 1 ani 2
  75.  
  76. print "<P class=\"styl\"><B><BR><font color=#FF0000>aby się wpisać kliknij";
  77. print "<A HREF=\"book.php?id=1\">&nbsp;&nbsp;&nbsp;";
  78. print "&nbsp;>> tutaj <<</A>";
  79. print ("<BR><font color=#000000>liczba wpisów w księdze (od 26.02.2002):&nbsp;");
  80.  
  81.  
  82. // zliczanie dotychczasowych wpisów
  83. // tu istotny moment liczba 2000 lilka linii nizej okresla w przyblizeniu dlugosc calego wpisu
  84. //ktory mozna dokonac. Jezeli gosc wpisze caly elaborat to moze on zostac podzielony na 2
  85. //albo na wiecej wpisow w ksiedze, ktore beda wyswietlone jeden za drugim jakby byly to 2 wpisy
  86. //jezeli liczba 2000 jest za mala to mozna ja zmienic
  87.  
  88. $nazwa = "ksiazka.txt";
  89. $myFile = fopen($nazwa, "r");
  90. $i=0;
  91. while(!feof($myFile)) {
  92. $myLine = fgets($myFile, 2000);
  93. $i++;
  94. }
  95. fclose($myFile);
  96. print(" &nbsp; $i<BR><BR></B></font>"); // drukowanie liczby wpisow;
  97.  
  98.  
  99. print "<HR color=#0000FF width=\"500\"><BR>";
  100. $nazwa = "ksiazka.txt";
  101. $myFile = fopen($nazwa, "r");
  102. $k=1;
  103. $end=$st+9;
  104. while(!feof($myFile)) // dopóki nie jest koniec pliku - drukowanie po jednym wpisie (1 wpis = 1 linia pliku
  105. { // ale 1 linia pliku ma już w sobie format w jakim jest drukowana - zajmuje kilka linii)
  106. $myLine = fgets($myFile, 2000);
  107. if ($k>=$st) {
  108. if ($k<=$end) {
  109.  
  110. print("<P class=\"styl\">$myLine</P><HR width=\"500\" color=#0000FF><BR>");
  111. };
  112. };
  113. $k++;
  114. }
  115.  
  116.  
  117. //wpisy w ksiedze sa wyswietlane "w dawkach" po 10 sztuk na jednej stronie;
  118. //kolejne wpisy sa dostepne na innych stronach ksiegi, do ktorych mozna wejsc
  119. //przez hiperlinki u dolu strony
  120.  
  121. fclose($myFile);
  122. print("<P class=\"styl\"><B><font color=#000000>inne strony księgi<BR>");
  123.  
  124. $ile=floor($i/10); //obliczenie ilości stron ksiegi
  125. $ctpage=floor($st/10)+1; //numer strony biezacej
  126. for ($z=0;$z<=$ile;$z++) {
  127. $y=$z+1; //numery stron są od 1 a nie od 0
  128. if ($y==$ctpage) {print ("<FONT color=#000000> $y ");} //piszemy numer biezacej strony nie jako hiperlink
  129. else {print ("<A HREF=\"book.php?st=".$z."1\"> $y </A>");} //numery innych stron to hiperlinki
  130. };
  131.  
  132.  
  133. } //koniec od else
  134.  
  135. ?>



Go to the top of the page
+Quote Post
WebCM
post
Post #2





Grupa: Zarejestrowani
Postów: 375
Pomógł: 20
Dołączył: 28.07.2006

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


Podejrzewam, że short_open_tag = Off. Zamień <? na <?php

Zamień $id na $_GET['id']. Tak samo postąp z innymi parametrami przekazywanymi przez adres URL. Pola formularzy uzyskujesz przez $_POST, np. $_POST['nazwa_pola'], a nie $nazwa_pola.

Jeżeli to gotowiec - zmień skrypt. Era PHP 4.0 skończyła się już dawno.

Jeśli sam to pisałeś, podaj adres kursu, z którego korzystasz (jeśli nie chcesz na forum, możesz na PW).

Ten post edytował WebCM 26.02.2010, 22:44:28
Go to the top of the page
+Quote Post
mls
post
Post #3





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

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


short_open_tag jest na home.pl domyślnie włączone, w przeciwieństwie do register_globals, które zresztą na każdym lepszym czy gorszym serwerze powinno być wyłączone i w ogóle nigdy nie powinno istnieć...
Go to the top of the page
+Quote Post
rosirosi
post
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.11.2008

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


Dzięki serdeczne za odpowiedz...
jest to gotowiec wzięty jakis czas temu z net-a
po zmianie <? na <?php bez zmian...
jutro pozmieniam zmienne tak jak radził kolega WebCM i się odezwę (dzisiaj juz niestety nie żyje)...
chyba ze jeszcze jakaś koncepcja jest możliwa,(kontakt z adminem z home.pl) ?
jeszcze raz wielkie dzięki i dobranoc
Go to the top of the page
+Quote Post
WebCM
post
Post #5





Grupa: Zarejestrowani
Postów: 375
Pomógł: 20
Dołączył: 28.07.2006

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


W PHP 6 zniknie register_globals, a poza tym to jedna wielka luka w bezpieczeństwie skryptów. Dokonaj zmian. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
rosirosi
post
Post #6





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.11.2008

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


Witam Panowie.....

Dzięki wielkie kolego WebCM Twoje rady pomogły,

$_GET['id'] i $_POST['nazwa_pola'] pomogły
teraz śmiga jak na innych serwach...

załączam poprawiony kod, a nóż ktoś nie będzie musiał przerabiać-chociaż to było ciekawe doświadczenie (IMG:style_emoticons/default/winksmiley.jpg)
  1. <? if ($_GET[id]==1): ?>
  2. <DIV class="styl"><BR><BR><BR><font size="4">Twój wpis do księgi:<BR><BR><BR></font>
  3. <FORM ACTION="bookk.php?id=2" METHOD="POST">
  4. Autor: &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
  5. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="Autor"><BR><BR>
  6. E-mail: &nbsp; &nbsp; &nbsp; &nbsp;
  7. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="adres"><BR><BR>
  8. www: &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
  9. <INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="web"><BR><BR>
  10. <font size="2">(pola e-mail i www mogą pozostać puste)</font><BR><BR>
  11. <TEXTAREA NAME="Tresc" WRAP COLS=50 style="BACKGROUND-COLOR: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" ROWS=5></TEXTAREA><BR><BR><BR> &nbsp; &nbsp; &nbsp;
  12. <INPUT TYPE=SUBMIT VALUE= " Dopisz " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF"> &nbsp; &nbsp; &nbsp;
  13. <INPUT TYPE="RESET" VALUE=" Wyczyść " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF">
  14. </FORM><br>Powrót do księgi gości <a href="bookk.php">Powrót do księgi gości </a></DIV>
  15. <? exit; endif; ?>
  16. <? if ($_GET[id]==2) {
  17.  
  18. if(($_POST['Autor']=="") or ($_POST['Tresc']==""))
  19. {
  20. print("<BR><BR><P class=\"styl\"><B>Nie wypełniłeś wszytkich pól !</B></P>");
  21. print("<BR><BR><P class=\"styl\"><A HREF=\"bookk.php?id=1\">powrót do formularza</A></P>");
  22. print("<P class=\"styl\"><A HREF=\"bookk.php\">powrót do księgi</A></P>");
  23. }
  24. $Tresc = ereg_replace("<","&lt;", $_POST['Tresc']);
  25. $Tresc = ereg_replace(">","&gt;", $_POST['Tresc']);
  26. $Tresc = ereg_replace("\n", "<BR>", $_POST['Tresc']);
  27. $Autor = ereg_replace("\n", "<BR>", $_POST['Autor']);
  28. $web = ereg_replace("\n", "<BR>", $_POST['web']);
  29. $adres = ereg_replace("\n", "<BR>", $_POST['adres']);
  30.  
  31.  
  32. $nazwa = "ksiazkaa.txt";
  33.  
  34.  
  35. if (ereg(".pl", $_POST['web'])) {
  36. $web="moja strona: &nbsp; <a href=\"$web\" target='_blank'>$web</a><BR>";
  37. }
  38. else {
  39. $web="";
  40. };
  41.  
  42. if ($adres=="") {
  43. $adres="nie podano adresu e-mail";
  44. $wpis = "<I>".date("d.m.Y")." &nbsp; &nbsp; g. ".date("H.i")."</I><BR><B>$Autor<BR>$adres<BR>$web <BR></B> $Tresc\n";
  45. }
  46. else {
  47. $wpis = "<I>".date("d.m.Y")." &nbsp; &nbsp; g. ".date("H.i")."</I><BR><B>$Autor<BR> <a HREF=\"mailto:$adres\">$adres</A> <BR>$web<BR></B> $Tresc\n";
  48. };
  49. $myFile = fopen($nazwa, "r+");
  50. $wpis=$wpis.fread($myFile, filesize($nazwa));
  51. rewind($myFile);
  52. fputs($myFile, $wpis);
  53. fclose($myFile);
  54.  
  55. print("<BR><BR><P class=\"styl\"><B>Dziękuję za wpis!</B></P><BR>");
  56. print("<BR><BR><P class=\"styl\"><A href=\"bookk.php\">obejrzyj swój wpis</A></P>");
  57.  
  58. print("<P class=\"styl\"><A href=\"index.php\">powrót do strony</A></P>");
  59. }
  60.  
  61. else {
  62.  
  63. print "<P class=\"styl\"><B><BR><font color=#FF0000>aby się wpisać kliknij";
  64. print "<A HREF=\"bookk.php?id=1\">&nbsp;&nbsp;&nbsp;";
  65. print "&nbsp;>> tutaj <<</A>";
  66. print ("<BR><font color=#000000>liczba wpisów w księdze (od 26.02.2002):&nbsp;");
  67.  
  68.  
  69.  
  70.  
  71. $nazwa = "ksiazkaa.txt";
  72. $myFile = fopen($nazwa, "r");
  73. $i=0;
  74. while(!feof($myFile)) {
  75. $myLine = fgets($myFile, 2000);
  76. $i++;
  77. }
  78. fclose($myFile);
  79. print(" &nbsp; $i<BR><BR></B></font>");
  80.  
  81.  
  82. print "<HR color=#0000FF width=\"500\"><BR>";
  83. $nazwa = "ksiazkaa.txt";
  84. $myFile = fopen($nazwa, "r");
  85. $k=1;
  86. $end=$st+9;
  87. while(!feof($myFile))
  88. {
  89. $myLine = fgets($myFile, 2000);
  90. if ($k>=$st) {
  91. if ($k<=$end) {
  92.  
  93. print("<P class=\"styl\">$myLine</P><HR width=\"500\" color=#0000FF><BR>");
  94. };
  95. };
  96. $k++;
  97. }
  98.  
  99.  
  100. fclose($myFile);
  101. print("<P class=\"styl\"><B><font color=#000000>inne strony księgi<BR>");
  102.  
  103. $ile=floor($i/10);
  104. $ctpage=floor($st/10)+1;
  105. for ($z=0;$z<=$ile;$z++) {
  106. $y=$z+1;
  107. if ($y==$ctpage) {print ("<FONT color=#000000> $y ");}
  108. else {print ("<A HREF=\"bookk.php?st=".$z."1\"> $y </A>");}
  109. };
  110.  
  111.  
  112. } //koniec od else
  113.  
  114. ?>




Jeszcze raz dzięki wielkie i pozdrawiam!
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: 22.08.2025 - 20:56