Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [PHP] Zmiana danych na stałe w Array

Napisany przez: batmat1903 18.03.2024, 18:43:37

Hej,

Potrzebuję stworzyć coś na zasadzie bazy danych, jednak nie korzystając z niej w ogóle. Przedstawię poniżej o co mi chodzi.

Posiadam dwa pliki *.php

Pierwszy plik: go.php zawiera treści, które ma wyświetlać po wczytaniu odpowiedniego url
Dla przykładu po wpisaniu: https://domena.pl/szkola-techniczna-warszawa
na stronie go.php wyświetlają się dane przypisane do $id = "szkola-techniczna-warszawa"

Na tej podstronie znajdują się także elementy (coś jak gwiazdki do ocen).

Drugi plik nazywa się r.php i posiada owy kod:

  1. $bases = http://www.php.net/array(
  2. http://www.php.net/array(
  3. "name" => "szkola-techniczna-warszawa",
  4. "count" => 0,
  5. "points" => 0,
  6. ),
  7. http://www.php.net/array(
  8. "name" => "szkola-techniczna-wroclaw",
  9. "count" => 0,
  10. "points" => 0,
  11. ),
  12. http://www.php.net/array(
  13. "name" => "szkola-techniczna-poznan",
  14. "count" => 0,
  15. "points" => 0,
  16. ),
  17. ...itd...


I teraz, każdy kto wejdzie na podstronę będzie mógł zaznaczyć na elemencie jakąś rzecz, do której przypisane są punkty (tutaj nie ma jeszcze problemu). Każdy z podelementów zawiera punktację. Jeżeli użytkownik kliknie w element, który ma 10 punktów, chciałbym aby w pliku r.php, pod właściwym nam zmieniły się dane "count" o 1 oraz "points" o wartość z kliknięcia.

Do odczytu owych wartości używam:

foreach -> gdzie warunkiem sprawdzam do którego elementu pasuje id stron ($id === ["name"])

Mój problem polega na tym, aby przy takiej akcji na stałem zmienić wartości "count" oraz "points" o wskazane przeze mnie.

Zapewne niezbyt jasno się wyraziłem. Jednak mam nadzieję, że ktoś pomoże.

Do odnoszenia się do pliku r.pl używam "require __DIR__ . "/assets/php/r.php";"

Napisany przez: viking 18.03.2024, 19:18:05

Musisz zapisać ponownie do pliku np przez https://www.php.net/manual/en/function.file-put-contents.php.
Natomiast dużo lepszym wyborem jest użyć sqlite. Przy większym ruchu dane mogą się nadpisywać.

Napisany przez: batmat1903 20.03.2024, 10:03:45

Dziękuję za odpowiedź. Z chęcią poznam sqlite, bo jeszcze nie miałem styczności żadnej z bazami danych.
A jeszcze mam pytanie, poza tematem.

Aktualnie uczę się PHP, czy są jakieś dobre bezpłatne kursy PHP czy po prostu najlepiej uczyć się z dokumentacji? Wiem, że są świetne zagraniczne materiały, jednak u mnie angielski nie stoi na najwyższym poziomie i ze słuchu nie wszystko jestem w stanie zrozumieć prawidłowo... JS uczyłem się z dokumentacji i tam poszło na prawdę dobrze, w PHP dokumentacja jest jakoś mniej zrozumiała dla mnie lub logika na ten moment nie jest do końca zrozumiała.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)