Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapis do pliku *.php wielu różnych linijek
Forum PHP.pl > Forum > PHP > Object-oriented programming
tomilipin
Witam,
natrafilem na okropny problem, z którym za nic nie mogę sobie poradzić sad.gif Na swoim komputerze używam php 5.0.2, na serwerze, na którym znajdują się moje pliki wersja php jest na pewno niższa (starsze php). Skrypt na moim sprzęcie wykonuje się, ale z błędem, natomiast na serwerze wszystko jest dobrze.
Skrypt napisałem na podstawie (właściwie to skopiowałem i zmieniłem na swoje) przykładowych plików do książki "php od podstaw". Oryginalny skrypt działał bez zarzutu, mój do pewnego momentu także - jednak gdy go skończyłem okazało się że działa niepoprawnie... Oto skrypt:
  1. <?
  2. function liczby($dzial) {
  3.  include(&#092;"liczby.php\");
  4.  if($dzial==&#092;"glowna\") { $glowna++; }
  5.  if($dzial==&#092;"strony\") { $strony++; }
  6.  if($dzial==&#092;"galeria\") { $galeria++; }
  7.  if($dzial==&#092;"linki\") { $linki++; }
  8.  if($dzial==&#092;"restricted\") { $restricted++; }
  9.  if($dzial==&#092;"ksiega\") { $ksiega++; }
  10.  if($dzial==&#092;"subskrypcja\") { $subskrypcja++; }
  11.  if($dzial==&#092;"kontakt\") { $kontakt++; }
  12.  $msg=&#092;"<?n\";
  13.  $msg.=&#092;"$glowna=\"$glowna\";n\";
  14.  $msg.=&#092;"$strony=\"$strony\";n\";
  15.  $msg.=&#092;"$galeria=\"$galeria\";n\";
  16.  $msg.=&#092;"$linki=\"$linki\";n\";
  17.  $msg.=&#092;"$restricted=\"$restricted\";n\";
  18.  $msg.=&#092;"$ksiega=\"$ksiega\";n\";
  19.  $msg.=&#092;"$subskrypcja=\"$subskrypcja\";n\";
  20.  $msg.=&#092;"$kontakt=\"$kontakt\";n\";
  21.  $msg.=&#092;"?>\";
  22.  
  23.  $op = fopen(\"liczby.php\", \"r+\");
  24.  fwrite($op, $msg);
  25.  fclose($op);
  26. }
  27. //treść działu 'glowna'
  28. liczby(\"glowna\"); // uruchomienie funkcji dla \"glowna\" aby dodać +1 do $glowna
  29. ?>
plik "liczby.php" po wykonaniu tej funkcji wygląda tak:
  1. <?
  2. $glowna=&#092;"46\";
  3. $strony=&#092;"3\";
  4. $galeria=&#092;"2\";
  5. $linki=&#092;"0\";
  6. $restricted=&#092;"0\";
  7. $ksiega=&#092;"3\";
  8. $subskrypcja=&#092;"3\";
  9. $kontakt=&#092;"7\";
  10. ?>=\"6\"; // o to właśnie mi chodzi...
  11. ?> // i to także


Nie mam pojęcia dlaczego tak się dzieje. Po usunięciu tych zbędnych znaków i wejściu na stronę, zostają dodane zapewne od razu, przy pierwszym wyświetleniu, gdyż po kliknięciu w jakiś link pojawia się ="6" ?>w treści każdego działu...
Jak temu zaradzić...?
Jojo
Używasz złego trybu otwierając plik. Użyj 'w' zamiast 'r+'.
tomilipin
haha! Działa biggrin.gif:D:D Serdecznie dziękuję za rzeczową pomoc :-)
Zawsze można na Was liczyć, jesteście najlepsi! Dlatego: Wesołych, rodzinnych, spokojnych, śnieżnych ale ciepłych Świąt, mnóstwa prezentów pod choinką; w Nowym Roku wszystkiego dobrego, samych udanych skryptów ;-) , spełnienia marzeń i co niektórym: zdania matury...
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.