Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z $_GET[] i jego porównywaniem
Forum PHP.pl > Forum > PHP
fgfd
Chodzi o to, że pobrałem jakieś dane z nagłówka przez $_GET[] w php. W tym przypadku jest to nazwa podstrony. I teraz chcę sprawdzić czy podana podstrona istnieje, dlatego porównuję ją z listą wszystkich podstron:
  1. for($i = 0, $length = count($dane); $i < $length; $i+=8)
  2. {
  3. if($_GET['site'] == $dane[$i+7]) //tu jest błąd, to jest 37 wiersz
  4. {
  5. //wyświetlenie podstrony
  6. }
  7. }


Lista podstron jest zapisana w pliku tekstowym, ale w tym pliku są jeszcze inne dane, które nie są tu ważne. Każda komórka tablicy $dane przechowuje jeden wiersz z pliku. Pętla przelatuje przez całą tablice i porównuje podstrony do $_GET['site'].

Plik wygląda mniej więcej tak:
  1. jakieś dane
  2. jakieś dane
  3. jakieś dane
  4. jakieś dane
  5. jakieś dane
  6. jakieś dane
  7. nazwa-podstrony
  8.  
  9. jakieś dane
  10. jakieś dane
  11. jakieś dane
  12. jakieś dane
  13. jakieś dane
  14. jakieś dane
  15. nazwa-podstrony
  16.  
  17. (i tak dalej)
  18.  


Php wywala taki błąd:
Notice: Undefined offset: 55 in D:\wamp\www\index.php on line 37
linia 37 to właśnie warunek if

Nie wiem o co chodzi. Próbowałem obie zmienne rzutować na string, jednak to nic nie dało. Może Wy mi coś doradzicie?
Jeżeli coś źle wytłumaczyłem to postaram się wytłumaczyć jeszcze raz.
CuteOne
Tak się tego nie robi. Routing lub jak kto woli tablica z danymi ma być oddzielnym plikiem TYLKO z danymi routingu np.

  1. modules.php:
  2. <?php
  3. return array(
  4. 'index' => 'index.php',
  5. 'login' => 'module/login.php',
  6. //itd...
  7. );
  8. ?>
  9.  
  10. router.php:
  11. <?php
  12. $modules = require_once 'modules.php';
  13. //dalsza czesc kodu
  14. ?>
tehaha
Cytat
Php wywala taki błąd:
Notice: Undefined offset: 55 in D:\wamp\www\index.php on line 37
To nie jest błąd, tylko powiadomienie o tym, że próbujesz odwołać się do nieistniejącego klucza w tablicy, jeżeli chcesz tego uniknąć to musisz sprawdzać czy taki klucz istnieje np. funkcją array_key_exists(). Ogólnie sposób w jaki to robisz, jest kompletnie nie poprawny, więc najlepiej poszukaj sobie dobrej książki lub przynajmniej kursu php.
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.