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
<? if ($id==1): ?>
<DIV class="styl"><BR><BR><BR><font size="4">Twój wpis do księgi:<BR><BR><BR></font>
<FORM ACTION="book.php?id=2" METHOD="POST">
Autor:
<INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="Autor"><BR><BR>
E-mail:
<INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="adres"><BR><BR>
www:
<INPUT TYPE="TEXT" SIZE="30" MAXLENGTH="30" style="background-color: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" NAME="web"><BR><BR>
<font size="2">(pola e-mail i www mogą pozostać puste)</font><BR><BR>
<TEXTAREA NAME="Tresc" WRAP COLS=50 style="BACKGROUND-COLOR: #BBBBBB; font-family: Verdana; font-size: 12pt color: #00FF00" ROWS=5></TEXTAREA><BR><BR><BR>
<INPUT TYPE=SUBMIT VALUE= " Dopisz " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF">
<INPUT TYPE="RESET" VALUE=" Wyczyć " style="BACKGROUND-COLOR: #333333; FONT-FAMILY : Verdana; FONT-SIZE : 12; color: #FFFFFF">
</FORM></DIV>
<? if ($id==2) {
if(($Autor=="") or ($Tresc=="")) // było jeszcze sprawdzanie pole e-mail, ale zrezygnowałem: or ($adres=="")
//jesli pole autor lub tresc jest puste pojawia sie komunikat monitujacy
{
print("<BR><BR><P class=\"styl\"><B>Nie wypełniłe wszytkich pól !</B></P>"); print("<BR><BR><P class=\"styl\"><A HREF=\"book.php?id=1\">powrót do formularza</A></P>"); print("<P class=\"styl\"><A HREF=\"book.php\">powrót do księgi</A></P>"); }
//tu obrabia sie wpis przez usuniecie ewentualnych znakow niebezpiecznych,
//a enter zamienia sie na przejscie do nowej linii
//wpisy ksiegi gosci pamietane sa w pliku o nazwie ksiazka.txt - oczywiscie mozna to zmienic
$nazwa = "ksiazka.txt";
//nie wysilalem sie z weryfikacja wpisanego przez goscia adresu wlasnej strony
//po prostu mozna tutaj wpisac tylko adres w ktorym wystepuje ciag znakow ".pl"
//moze jest to krzywdzace dla posiadaczy stron bez takich znakow w adresie,
//ale z pewnoscia uchroni to ksiege przed wpisem zlosliwego goscia np. <a href="http://dupa.jasiu" target="_blank">http://dupa.jasiu</a>
$web="moja strona: <a href=\"$web\" target='_blank'>$web</a><BR>";
}
else {
$web="";
};
//jak widac nizej wpis zawiera nie tylko dane wpisane przez goscia, ale takze rozmaite znaczniki
//HTML formatujace wpis do postaci przydatnej do natychmiastowego wyswietlenia.
//jest to rozwiazanie spotykane w wielu ksiegach gosci
if ($adres=="") {
$adres="nie podano adresu e-mail";
$wpis = "<I>".date("d.m.Y")." g. ".date("H.i")."</I><BR><B>$Autor<BR>$adres<BR>$web <BR></B> $Tresc\n"; }
else {
$wpis = "<I>".date("d.m.Y")." g. ".date("H.i")."</I><BR><B>$Autor<BR> <a HREF=\"mailto:$adres\">$adres</A> <BR>$web<BR></B> $Tresc\n"; };
$myFile = fopen($nazwa, "r+");
print("<BR><BR><P class=\"styl\"><B>Dziękuję za wpis!</B></P><BR>"); print("<BR><BR><P class=\"styl\"><A href=\"book.php\">obejrzyj swój wpis</A></P>");
//w tym miejscu jest hiperlink do powrotu do strony glownej naszego serwisu np index.php lub index.htm itp.
print("<P class=\"styl\"><A href=\"index.php\">powrót do strony</A></P>"); }
else { //id nie równa się 1 ani 2
print "<P class=\"styl\"><B><BR><font color=#FF0000>aby się wpisać kliknij"; print "<A HREF=\"book.php?id=1\"> "; print " >> tutaj <<</A>"; print ("<BR><font color=#000000>liczba wpisów w księdze (od 26.02.2002): ");
// zliczanie dotychczasowych wpisów
// tu istotny moment liczba 2000 lilka linii nizej okresla w przyblizeniu dlugosc calego wpisu
//ktory mozna dokonac. Jezeli gosc wpisze caly elaborat to moze on zostac podzielony na 2
//albo na wiecej wpisow w ksiedze, ktore beda wyswietlone jeden za drugim jakby byly to 2 wpisy
//jezeli liczba 2000 jest za mala to mozna ja zmienic
$nazwa = "ksiazka.txt";
$myFile = fopen($nazwa, "r"); $i=0;
$myLine = fgets($myFile, 2000
); $i++;
}
print(" $i<BR><BR></B></font>"); // drukowanie liczby wpisow;
print "<HR color=#0000FF width=\"500\"><BR>"; $nazwa = "ksiazka.txt";
$myFile = fopen($nazwa, "r"); $k=1;
$end=$st+9;
while(!feof($myFile)) // dopóki nie jest koniec pliku - drukowanie po jednym wpisie (1 wpis = 1 linia pliku { // ale 1 linia pliku ma już w sobie format w jakim jest drukowana - zajmuje kilka linii)
$myLine = fgets($myFile, 2000
); if ($k>=$st) {
if ($k<=$end) {
print("<P class=\"styl\">$myLine</P><HR width=\"500\" color=#0000FF><BR>"); };
};
$k++;
}
//wpisy w ksiedze sa wyswietlane "w dawkach" po 10 sztuk na jednej stronie;
//kolejne wpisy sa dostepne na innych stronach ksiegi, do ktorych mozna wejsc
//przez hiperlinki u dolu strony
print("<P class=\"styl\"><B><font color=#000000>inne strony księgi<BR>");
$ile=floor($i/10
); //obliczenie ilości stron ksiegi $ctpage=floor($st/10
)+1; //numer strony biezacej for ($z=0;$z<=$ile;$z++) {
$y=$z+1; //numery stron są od 1 a nie od 0
if ($y==$ctpage) {print ("<FONT color=#000000> $y ");} //piszemy numer biezacej strony nie jako hiperlink else {print ("<A HREF=\"book.php?st=".$z."1\"> $y </A>");} //numery innych stron to hiperlinki };
} //koniec od else
?>