Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zapis zmiennej do tablicy
Forum PHP.pl > Forum > Przedszkole
yta
Witam mam problem chciałbym powiększać zmienną o 1 po każdym odświeżeniu strony , w tym celu stworzyłem zmienną: licznik++ i usiłuję zapisać jej wartość do tablicy. Tylko pewno robię coś tu źle a nie wiem co ...

  1. $tablica = array($liczbaOdwiedzin++);// dodaje wartość 1
  2. echo $tablica;


Lub pokrewnie tworząc najpierw pustą tablicę później dodając do niej licznik i nic ...
Powiecie co nie tak tu robię ? wink.gif

nospor
No i czymże objawia się błąd?
yta
Tymże że wyświetla mi: ARRAY
Sam zobacz: http://sakuwbaraku.cba.pl/

A ja oczekiwałbym zwiększającej się wartości zmiennej ...
nospor
Bo robisz ECHO.... echo zawsze zwraca tekst array z tablicy....
używaj print_r
yta
No to teraz zwraca mi: Array ( [0] => )
nospor
$tablica = array(++$liczbaOdwiedzin);
print_r($tablica);
yta
Dobra to teraz mam: Array ( [0] => 1 )
I nadal nie ma inkrementacji ...
nospor
Jak nie ma? Jest z 0 na 1...
a jak chcesz inckrementować miedzy odświezeniami to wypadałoby tę zmienną gdzieś zapisać. Myślisz ze sama w magiczny sposób zgadnie, że ty chcesz by się ona zapamietywala?

zapis do pliku albo do bazy
rocktech.pl
Witam.

Nie ma inkrementacji bo tworzysz kolejne ządanie odświeżając stronę smile.gif Użyj zmiennej sesji.

  1.  
  2. !isset($_SESSION['liczbaOdwiedzin']) AND $_SESSION['liczbaOdwiedzin'] = 0;
  3. echo ++$_SESSION['liczbaOdwiedzin'];
  4.  
nospor
No gdzie sesja? Sesja dotyczyc będzie danego usera, a chyba chodzi o to, by dotyczyła wszystkich.

Zapis ma być robiony albo do pliku albo do bazy.

@sakuwbarakushow poszukaj w necie liczników - pełno tego
yta
Cytat(nospor @ 6.03.2012, 15:38:52 ) *
Jak nie ma? Jest z 0 na 1...
a jak chcesz inckrementować miedzy odświezeniami to wypadałoby tę zmienną gdzieś zapisać. Myślisz ze sama w magiczny sposób zgadnie, że ty chcesz by się ona zapamietywala?

zapis do pliku albo do bazy


Ja to zrobiłem w 5min z zapisem do pliku tekstowego ale przekaz zadania jest jasny, ja mam to zapisać na zmiennej , nie plik tekstowy czy baza danych. - > bo jeżeli tak to nie ma problemu , do zapisu do pliku dać zmienną++ i działa nie ma problemu.

@nospor
nie , nie ma być zapis do pliku tekstowego ani do bazy danych , ma być zapisane na zmiennej .

I takiego przykładu na google nie ma bo szukałem , dlatego postanowiłem napisać to od 0 .
nospor
Cytat
ale przekaz zadania jest jasny, ja mam to zapisać na zmiennej
zrozum mistrzu, że bez zapamietywania tego w pliku czy bazie, to ci nie będzie działać...
MGraphics
Cytat(rocktech.pl @ 6.03.2012, 15:40:34 ) *
Witam.

Nie ma inkrementacji bo tworzysz kolejne ządanie odświeżając stronę smile.gif Użyj zmiennej sesji.

  1.  
  2. !isset($_SESSION['liczbaOdwiedzin']) AND $_SESSION['liczbaOdwiedzin'] = 0;
  3. echo ++$_SESSION['liczbaOdwiedzin'];
  4.  


Tylko żże w tym przypadku kazdy uzytkownik zobaczy inną liczbe.

Chodzi raczej o typowy licznik odwiedzin więc najprościej było by w google wpisać fraze " php licznik odwiedzin " i w kilku pierwszych linkach z pewnością znajduje się licznik na plikach gdyż mysql nie jest opłacalny do tego.

PS to co wyżej już napisał kolega po każdym odświeżeniu strona idzie od początku do końca czyli twoje zmienne się czyszczą ( tak jakby )
yta
Cytat(nospor @ 6.03.2012, 15:44:21 ) *
zrozum mistrzu, że bez zapamietywania tego w pliku czy bazie, to ci nie będzie działać...


To nie jest moje widzi misie.
Nie może byc tekstowy bo :
a) Wchodzi na stronę jednocześnie 3osoby, jak program otworzy i zablokuje ten sam plik jednocześnie 3x ?
cool.gif Na szkolnym serwerze nie działa obsługa plików tekstowych
c) Nie moze być baza danych bo na szkolnym serwerze nie ma jej postawionego
d) Klasa jeszcze nie umie posłużyć się myadminem i nie mogę wychodzić po za szereg ...

Więc ok, ostateczny werdykt : NIE DA SIĘ TEGO TAK ZROBIĆ ? wink.gif

A co z dynamicznym tworzeniem zmiennych do zapamiętywania ? bo jakoś nauczyciel twierdzi że on znalazł na to sposób i jemu działa sad.gif A ja wszystko co na necie znajduję to pliki TXT

Cytat(MGraphics @ 6.03.2012, 15:45:31 ) *
PS to co wyżej już napisał kolega po każdym odświeżeniu strona idzie od początku do końca czyli twoje zmienne się czyszczą ( tak jakby )


Właśnie dlatego chciałem ją zapamiętać w tablicy ... ale widzę że to błędny trop sad.gif
nospor
Cytat
Właśnie dlatego chciałem ją zapamiętać w tablicy ...
Tablica to też zmienna...

Jedynie co się nie czyści to sesja, ale ta jest tworzona oddzielnie dla każdego usera, więc każdy będzie miał inny.

Cytat
Na szkolnym serwerze nie działa obsługa plików tekstowych
eee? A niby jakim cudem ty tam kod php piszesz, skoro pliki nie działają?
MGraphics
tylko że tablica to też tak jakby zmienna.

PS twój nauczyciel musi programować na jakiejś super hiper maszynie, bo gdyby zmiene się nie czyściły to dopiero było by kolorowo smile.gif
yta
Cytat(nospor @ 6.03.2012, 15:51:14 ) *
Tablica to też zmienna...

Jedynie co się nie czyści to sesja, ale ta jest tworzona oddzielnie dla każdego usera, więc każdy będzie miał inny.

eee? A niby jakim cudem ty tam kod php piszesz, skoro pliki nie działają?

Obsługa plików tekstowych. - > otwieranie, zapis .
Prosty przykład:

są sobie 2 takie same skrypty zapisujące podaną zmienną do pliku a.txt
Na jednym kompie działa, na drugim nie działa .
Tydzień później ten sam kod nie działa na żadnym kompie, a na serwerze typu (cba.pl) śmiga aż miło wink.gif Ale to nie ważne, tutaj nie ma pełnej obsługi php i wszystkich aktualizacji. To zamykam temat z twierdzą -> że się nie da tego zrobić smile.gif

Dzięki za pomoc wink.gif
rocktech.pl
Sakuwbarakushow powiedz Nam dokładnie czy też chcesz stworzyć licznik odwiedzin?
yta
Ja bym tego licznikiem nie nazwał ... To zliczanie ilości odświeżeń strony , czy wejść na podstronę i wyświetlenie wyniku: shakowano wyniki: x razy ... gdzie x generuje cośtam++;
Jak już wspomniałem ja to zrobiłem w 5min nie całe, przerabiajac stary program do tworzenia plików tekstowych na podstawie podanej zmiennej, dodałem przed zapisem pliku: zmienna++; i na moim serwerze działa wink.gif
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.