Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> przekazywanie zmiennej z funkcji do funkcji, trywialny problem :(
Fixus
post 16.07.2007, 13:14:08
Post #1





Grupa: Zarejestrowani
Postów: 295
Pomógł: 9
Dołączył: 8.02.2006

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


Witam...zwracam się do was (prawdopodobnie z dośc trywialnym) problemem. Otóż stawiam kroki coraz mocniejsze w programowaniu obiektowym w php
Kod
function checkEmails() {
        
            $sql = "SELECT * FROM newsletter";
            $result = mysql_query($sql);
            if(!$result) {
                echo "Problem z pobraniem danych z bazy";
            }
            $rekordy = mysql_num_rows($result);
            
            if(isset($_POST['all'])) {
            for($i=1; $i<=$rekordy; $i++) {
                $item = mysql_fetch_array($result);
                $email[] = $item['Email'];
            }
            $adresses = implode(",", $email);
            echo $adresses."<br />";
            return $adresses;
        } else {
            for($i=1; $i<=$rekordy; $i++) {
                $zlozenie = $i.'0';
                if(isset($_POST[$i])) {
                    $email[] = $_POST[$zlozenie];
                }
            }
            $adresses = implode(",", $email);
            echo $adresses."<br />";
            return $adresses;
        }
    }
    
    function sendEmail($adresses) {
        echo "<b>".$adresses."</b>";
    }

Problem polega na tym, że kiedy wywołuje metody:
Kod
<?php
include('included/DataBase.php');
include('class.newsletter.php');

$newsletter = new newsletter();
$newsletter->checkEmails();
$newsletter->sendEmail($adresses);
?>

adresy wyświetlają się raz...czyli wyświetla je metoda checkEmails()...jak przekazać zmienną $adresses do metody sendEmail?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
delfinium
post 16.07.2007, 20:17:44
Post #2





Grupa: Zarejestrowani
Postów: 90
Pomógł: 6
Dołączył: 30.06.2007
Skąd: Zielona Góra

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


  1. <?php
  2. class newsletter {
  3. private $emails;
  4.  
  5. function checkEmails() {
  6. // ...
  7. // Twój kod
  8. // ...
  9. // zamień linie ( masz je 2 razy!! )
  10. // $adresses = implode(',', $email);
  11. // echo $adresses."<br />";
  12. // return $adresses;
  13. // na tę poniżej
  14.  $this->emails = implode(',', $email);
  15. }
  16.  
  17. function sendEmail() {
  18.  echo $this->emails;
  19. }
  20. }
  21. ?>


i wywołanie
  1. <?php
  2. include('included/DataBase.php');
  3. include('class.newsletter.php');
  4.  
  5. $newsletter = new newsletter();
  6. $newsletter->checkEmails();
  7. $newsletter->sendEmail()
  8. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 17:52