Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Ostrzeżenie co oznacza i czy się nim przejmować
Forum PHP.pl > Forum > Przedszkole
amii
Mam włączone raportowanie błędów, pierwsze 3 linie w pliku i dostaje takie ostrzeżenie:

Notice: Undefined index: charset in login.php on line 48

  1. ini_set('display_errors', TRUE);
  2. ini_set('display_startup_errors', TRUE);
  3.  
  4.  
  5. //Funkcja pobiera ważne ustawienia z bazy danych
  6. function s($var) {
  7. connect_to_db(); //laczenie z baza danych
  8. $site_settings = array();
  9. $value = '';
  10.  
  11. $query = 'SELECT name, value FROM settings';
  12. $result = mysql_query($query) or die('Nastapił błąd w zapytani udo bazy w funkcji settings: '. mysql_error());
  13. while ($r = mysql_fetch_assoc($result)) {
  14. $site_settings[$r['name']] = $r['value'];
  15. }
  16.  
  17. $value = $site_settings[$var]; //LINE 48
  18. return $value;
  19. }


nospor
Tak, masz się nim przejmować i tak napisac, by się nie pojawiał.

$value = $site_settings[$var];
$var to charset i tablica $site_settings nie zawiera takiego indeksu wiec dostajesz blad
amii
No OK tyle, że do funkcji s jako parametr dołączam nazwę pola z kolumny name i to jest char a funkcja ma zwrócić dla danego name pole odpowiadające mu pole z kolumny value.
Podsumowując pole var musi być typu char bo to index w tablicy asocjacyjnej. Może podam przykład. Tutaj wczytuje wartość dla paginatora z bazy i funkcja działa OK i pobiera 10 a jest wywołana z argumentem typu char.

  1. $pager1->SetRecordsPerPage(s('paginator')); //ile rekordow ma sie wyswietlac na stronie



Struktura tabeli settings wygląda tak:
id | name | value
1 licznik 1
2 pula 1
..
5 paginator 10
nospor
Sluchaj... wyjasniam ci jeszcze raz na czym polega Twoj bład:
$site_settings nie zawiera indeksu o nazwie "charset" a ty mimo to próbujesz ten indeks pobrać - dostajesz więc blad.
Tyle w temacie nic dodać nic ująć. Jakies pytania?
Mephistofeles
Jakie typy char? Ty chyba nie wiesz o czym mówisz. Tu nie chodzi o żaden typ zmiennej (na dodatek w PHP typy są ukryte, dynamiczne), a o jej zawartość.
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.