Thread View: pl.comp.lang.php
6 messages
6 total messages
Started by jivanmukta
Wed, 10 Sep 2014 14:19
$GLOBALS, Undefined index
Author: jivanmukta
Date: Wed, 10 Sep 2014 14:19
Date: Wed, 10 Sep 2014 14:19
24 lines
1793 bytes
1793 bytes
Uczę się PHP5. Korzystam z PHP Version 5.3.10-1ubuntu3.13 na localhoście. Mam zmienną $client_name o wartości "Janko Muzykant". Dlaczego następujący kod: echo 'client_name:';var_dump($client_name); echo 'GLOBALS:';var_dump($GLOBALS['client_name']); wyświetla mi: client_name:string(14) "Janko Muzykant" GLOBALS: A PHP Error was encountered Severity: Notice Message: Undefined index: client_name Filename: announcement/form.php Line Number: 4 NULL Myślałem że wyświetli się: client_name:string(14) "Janko Muzykant" GLOBALS:string(14) "Janko Muzykant" Proszę o pomoc. Mam jeszcze małe doświadczenie.
Re: $GLOBALS, Undefined index
Author: Lemat
Date: Wed, 10 Sep 2014 14:48
Date: Wed, 10 Sep 2014 14:48
34 lines
1731 bytes
1731 bytes
jivanmukta@poczta.onet.pl wrote: > Uczę się PHP5. Korzystam z PHP Version 5.3.10-1ubuntu3.13 na localhoście. > Mam zmienną $client_name o wartości "Janko Muzykant". > Dlaczego następujący kod: > > echo 'client_name:';var_dump($client_name); > echo 'GLOBALS:';var_dump($GLOBALS['client_name']); > > wyświetla mi: > > client_name:string(14) "Janko Muzykant" > GLOBALS: > A PHP Error was encountered > Severity: Notice > Message: Undefined index: client_name > Filename: announcement/form.php > Line Number: 4 > NULL > > Myślałem że wyświetli się: > > client_name:string(14) "Janko Muzykant" > GLOBALS:string(14) "Janko Muzykant" > > Proszę o pomoc. Mam jeszcze małe doświadczenie. a $client_name jest zmienną globalną czy lokalną? -- Pozdrawiam Lemat www.lemat.priv.pl
Re: $GLOBALS, Undefined index
Author: jivanmukta
Date: Wed, 10 Sep 2014 15:21
Date: Wed, 10 Sep 2014 15:21
23 lines
1949 bytes
1949 bytes
Myślałem, że globalną. Ale może rzeczywiście jest lokalna.
Zmienna jest parametrem widoku announcement/form.php, powstaje tak (w kontrolerze, CodeIgniter):
$params['client_name'] = ...;
$this->load->view('announcement/form', $params);
Potrzebuje się do niej odwołać w helperze, zrobiłem tak (i jest źle):
function myValue($fieldName) {
if (array_key_exists($fieldName, $GLOBALS)) {
return $GLOBALS[$fieldName];
}
$ci =& get_instance();
$values = $ci->session->flashdata('field_values');
if (!empty($values) && array_key_exists($fieldName, $values)) {
return $values[$fieldName];
}
return FALSE;
}
Czy wiesz jak się do niej odwołać?
Re: $GLOBALS, Undefined index
Author: jivanmukta
Date: Wed, 10 Sep 2014 16:12
Date: Wed, 10 Sep 2014 16:12
16 lines
1934 bytes
1934 bytes
Zrobiłem tak:
function myValue($fieldName) {
if (isset($$fieldName)) {
return $$fieldName;
}
$ci =& get_instance();
$values = $ci->session->flashdata('field_values');
if (!empty($values) && array_key_exists($fieldName, $values)) {
return $values[$fieldName];
}
return FALSE;
}
i działa. Więc chyba lokalna.
Problem zamknięty.
Re: $GLOBALS, Undefined index
Author: jivanmukta
Date: Thu, 11 Sep 2014 18:13
Date: Thu, 11 Sep 2014 18:13
2 lines
1616 bytes
1616 bytes
Nie, jednak nie działa. isset($$fieldName) zwraca mi FALSE. Czy ktoś mógłby mi pomóc i powiedzieć jak dobrać się do zmiennych typu $client_name (tzn. przez nazwę w stringu) w helperze myValue? Byłbym bardzo wdzięczny.
Re: $GLOBALS, Undefined index
Author: jivanmukta
Date: Tue, 16 Sep 2014 16:03
Date: Tue, 16 Sep 2014 16:03
2 lines
1693 bytes
1693 bytes
Użyłem flashdata zamiast zmiennych i działa. Problem zamknięty.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads