Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Potrzebuję pomocy ze wstawieniem zmiennej.
Gemmern
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 1.05.2014

Ostrzeżenie: (0%)
-----


Witajcie, jestem bardzo początkujący w tych sprawach.

Mam skrypt php -
  1. <?php defined('SYSPATH') or die('No direct script access.');
  2.  
  3. /**
  4.  * Controller Translations
  5.  */
  6.  
  7.  
  8. class Controller_Panel_Newsletter extends Auth_Controller {
  9.  
  10.  
  11.  
  12. public function action_index()
  13. {
  14.  
  15. // validation active
  16. Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Newsletter')));
  17. $this->template->title = __('Newsletter');
  18. //$this->template->styles = array('http://cdn.jsdelivr.net/sceditor/1.4.3/themes/default.min.css' => 'screen');
  19. $this->template->scripts['footer'][] = 'js/jquery.sceditor.min.js';
  20.  
  21. $user = new Model_User();
  22. $user->where('status','=',Model_User::STATUS_ACTIVE);
  23. $user = $user->count_all();
  24.  
  25. if($this->request->post())
  26. {
  27. $query = DB::select('email')->select('name')
  28. ->from('users')
  29. ->where('status','=',Model_User::STATUS_ACTIVE)
  30. ->execute();
  31.  
  32. $users = $query->as_array();
  33. if (count($users)>0 OR Core::post('subject')!=NULL)
  34. {
  35. if ( !Email::send($users,'',Core::post('subject'),Core::post('description'),Core::post('from'), Core::post('from_email') ) )
  36. Alert::set(Alert::ERROR,__('Error on mail delivery, not sent'));
  37. else
  38. Alert::set(Alert::SUCCESS,__('Email sent to all the users'));
  39. }
  40. else
  41. {
  42. Alert::set(Alert::ERROR,__('Mail not sent'));
  43. }
  44.  
  45.  
  46. }
  47.  
  48.  
  49.  
  50.  
  51.  
  52. $this->template->content = View::factory('oc-panel/pages/newsletter',array('count'=>$user));
  53.  
  54. }
  55.  
  56.  
  57.  
  58.  
  59. }//end of controller


I z tego oto kodu chciałbym wstawić do odmiennej podstrony zmienną <?=$count?>, tyle tylko, że po prostu mi nie działa. Dostaję błąd Undefined variable: count i nie wiem jak sobie z tym poradzić.

Pozdrawiam,
Gemmern.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
pitu
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 96
Dołączył: 10.04.2008
Skąd: Koszalin

Ostrzeżenie: (0%)
-----


To jest Kohana? Jeżeli tak:
  1. $this->template->content = View::factory('oc-panel/pages/newsletter')
  2. ->bind('count', $user);
Go to the top of the page
+Quote Post
Gemmern
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 1.05.2014

Ostrzeżenie: (0%)
-----


Tak, to chyba kohana. Dzięki za szybką odpowiedź, aczkolwiek pojawiło się coś takiego - Using $this when not in object context

Mam dwa pliki.

1) newsletter.php, który zawiera skrypt zamieszczony powyżej
2) home.php, pusty plik

Chcę aby w home.php wyświetlała się liczba użytkowników. Chcę pobrać zmienną $count z newsletter.php i wstawić ją do w/w pliku. Jak to zrobić?

Wstawiłem do home.php takie coś
  1. <?php $this->template->content = View::factory('oc-panel/pages/newsletter')->bind('count', $user) ?>


No i pojawiło mi się całe newsletter.php, a chcę tylko jedną wartość - w tym przypadku $count.

Ktoś może mi pomóc? Byłbym bardzo wdzięczny!

@edit
Oto rozwiązanie do którego doszedłem osobiście.

home.php
  1. <?php $abc = View::factory('oc-panel/pages/newsletter')->bind('count', $user);
  2. $user = new Model_User();
  3. $user->where('status','=',Model_User::STATUS_ACTIVE);
  4. $user = $user->count_all();
  5. ?>
  6.  
  7. <?php echo $user ?>


Wyświetla mi to, co chciałem. Pytanie tylko czy jest to poprawna składnia i czy nic mi się nie pochrzani z innymi szablonami?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.12.2025 - 23:02