Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wstawienie formularza [OOP]
Sa1rus
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


Witam, jestem nowy na forum wiec za wszelkie bledy z gory przepraszam... a wiec mam spory problem z wstawieniem kodu PHP w zawartosc (patrz kod ponizej). Chodzi mi dokladnie o formularz pocztowy. Prosze o szybka pomoc.

  1. <?php
  2. require ('strona.inc');
  3.  
  4.  $kontakt_form = new Strona;
  5.  $kontakt_form->zawartosc=
  6.  'jak tu wstawic formularz (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)  ';
  7.  
  8.  $kontakt_form->Wyswietl();
  9.  
  10.  ?>


Ten post edytował Sa1rus 6.06.2008, 19:35:04
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 22)
strife
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Popraw BB Code ([ php ]). Jeśli to jest jakiś plik .inc i nie jest parsowany, no to możesz go wczytać 
ak:

  1. <?php
  2. $kontakt_form = new Strona;
  3. $kontakt_form->zawartosc = file_get_contents('formularz.inc');  
  4. $kontakt_form->Wyswietl();
  5. ?>


Pozdrawiam.
Go to the top of the page
+Quote Post
Sa1rus
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


Niestety nie działa. zamiast przetwarzac PHP, na stronie jest wyswietlany czysty kod PHP.
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A co robi funkcja Wyswietl?

Podejrzewam, że to jest zwykłe echo" title="Zobacz w manualu PHP" target="_manual. Zamień na include" title="Zobacz w manualu PHP" target="_manual/require" title="Zobacz w manualu PHP" target="_manual i będzie ok. :]
Go to the top of the page
+Quote Post
Sa1rus
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


No niby wyswietla tak jak powinno, ale nie wiem czemu ucielo mi wogole z div'a. jest nad zawartoscia strony.
Funkcja Wyswietl() wyswietla caly schemat strony (menu, poustawiana grafike, stopke) a za pomoca $this->zawartosc chcialem w konktetnym miejscu (dokladnie w divie) wyswietlac zawartosc poszczegolnych podstron. Wszystkie chodza, tylko ta nie chce (dokladnie formularz kontaktowy)..
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Sory, z fusów nie umiem wróżyć. ;]
Go to the top of the page
+Quote Post
Sa1rus
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


no nie wiem (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Chodzi mi o to co moze byc przyczyna tego ze nie wyswietla mi sie w divie - jak wogole mozna umiescic kod php w
  1. <?php
  2. $kontakt_form->zawartosc= ;
  3. ?>
bo html sie wyswietla poprawnie a php nie. dopiero zaczynam nauke php wiec nie wiem od czego to moze byc zalezne. mozliwe ze jest to jakis banał, ale nic mi do głowy nie przychodzi, dlatego proszę o jakąś pomoc.
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A jak mam Ci powiedzieć, jeśli w ogóle nie wiem, co $kontakt_form->Wyswietl(); wykonuje przy wywołaniu?

Ale z tego, co podejrzewam:
Cytat
bo html sie wyswietla poprawnie a php nie.

Podstawiaj do zawartosc ścieżkę do pliku i includuj go. Jak będziesz tylko wyświetlał, to trudno, żeby jakikolwiek kod PHP się wykonywał. ;]
Go to the top of the page
+Quote Post
Sa1rus
post
Post #9





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


Chciałem zeby $kontakt_form->Wyswietl() wyswietlal i przetwarzal formularz kontaktowy. Zrobilem tak:
  1. <?php
  2.  
  3. require ('strona.inc');
  4.  
  5. $kontakt_form = new Strona;
  6. $kontakt_form->zawartosc = require('formularz.inc');
  7.  
  8. $kontakt_form->Wyswietl();
  9.  
  10. ?>


no i chcialem zeby wyswietlalo mi sie to w ramce w konkretnym miejscu. div jest wypozycjonowany tak jak chcialem, ale w tym przypadku wyswietla mi sie poza calym szablonem strony (dokladnie nad zawartoscia)
Go to the top of the page
+Quote Post
erix
post
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A nie możesz po prostu podać kodu Wyswietl()?

require" title="Zobacz w manualu PHP" target="_manual tak Ci nie zadziała.
Go to the top of the page
+Quote Post
Sa1rus
post
Post #11





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


  1. <?php
  2. public function Wyswietl()
  3. {
  4. echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
  5. echo "<html>\n<head>\n";
  6. $this->Meta();
  7. echo "</head>\n<body>\n";
  8. $this->Szablon();
  9. $this->Menu($this->przyciski);
  10. $this->Tresc();
  11. $this->Stopka();
  12. echo "</body>\n</html>";
  13. }
  14.  
  15.  
  16. public function Tresc()
  17. {
  18. echo "<div id=\"kontener3\">";
  19.  
  20. echo $this->zawartosc;
  21.  
  22. echo "</div>";
  23. }
  24. ?>
Go to the top of the page
+Quote Post
erix
post
Post #12





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
  1. <?php
  2. echo $this->zawartosc;
  3. ?>

echo" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
Sa1rus
post
Post #13





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


no i co jest nie tak w tym kodzie ?
Go to the top of the page
+Quote Post
erix
post
Post #14





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A czy zajrzałeś do manuala?
Co robi echo" title="Zobacz w manualu PHP" target="_manual?
Go to the top of the page
+Quote Post
Sa1rus
post
Post #15





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


no zajrzalem, wyswietla ciag znakow i nie wyswietla funkcji. Czyli z tego co rozumiem wyswietli czysty html ale nie php. i wlasnie to robi, a wiec czy mozesz mnie jakos naprowadzic, co zadziala w tym przypadku.
Go to the top of the page
+Quote Post
erix
post
Post #16





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




No, dobrze, że choć zrozumiałeś, o co mi chodzi.

Przeczytaj wcześniejsze moje posty; rozwiązanie Ci już podałem.
Go to the top of the page
+Quote Post
Sa1rus
post
Post #17





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


po zastosowaniu
  1. <?php
  2. include $this->zawartosc;
  3. ?>


wyskakuje mi
  1. <?php
  2. [b]Warning[/b]: Strona::include(1) [[url="http://localhost/function.Strona-include"]function.Strona-include[/url]]: failed to open stream: No error in [b]C:wampwwwpoligrafia titstrona.inc[/b] on line [b]131[/b]
  3.  
  4. [b]Warning[/b]: Strona::include() [[url="http://localhost/function.include"]function.include[/url]]: Failed opening '1' for inclusion (include_path='.;C:php5pear') in [b]C:wampwwwpoligrafia titstrona.inc[/b] on line [b]131[/b]
  5. ?>


udaje mi sie wyswietlic tekst to caly czas pojawia sie nad calym szablonem strony a nie w nim
Go to the top of the page
+Quote Post
erix
post
Post #18





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bo include" title="Zobacz w manualu PHP" target="_manual'a masz użyć w funkcji wyświetl.

Ten post edytował erix 8.06.2008, 11:08:34
Go to the top of the page
+Quote Post
Sa1rus
post
Post #19





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


i tak mi nie chodzi, niewiem co robie zle , robie tak:

  1. <?php
  2. public function Wyswietl()
  3. {
  4. echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
  5. echo "<html>\n<head>\n";
  6. $this->Meta();
  7. echo "</head>\n<body>\n";
  8. $this->Szablon();
  9. $this->Menu($this->przyciski);
  10. echo "<div id=\"kontener3\">";
  11. include $this->zawartosc;
  12. echo "</div>";
  13. $this->Stopka();
  14. echo "</body>\n</html>";
  15. }
  16. ?>


a formularz umieszczam:

  1. <?php
  2. $kontakt_form->zawartosc = include('formularz.inc');
  3. ?>


i i tak mi nie chodzi. Wez jak mozesz mi to wyjasnij bo juz cierpliwosc trace, a to dopiero moje poczatki z php ;]
Go to the top of the page
+Quote Post
erix
post
Post #20





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A czy będziesz include" title="Zobacz w manualu PHP" target="_manual'ował plik, którego nazwa, to kod zawarty w tym pliku? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Cytat
Wez jak mozesz mi to wyjasnij bo juz cierpliwosc trac

To groźba?

Ten post edytował erix 8.06.2008, 19:32:59
Go to the top of the page
+Quote Post
Sa1rus
post
Post #21





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.06.2008

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


to nie grozba tylko prosba ;] wiec jak mozesz to mi to wyjasnij tak na chlopski rozum, moze kiedys to wszystko ogarne ;]
Go to the top of the page
+Quote Post
wlamywacz
post
Post #22





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


To nie jest kod obiektowy a jedynie strukturalny zamknięty w klasy, naucz się pierw jak działają funkcję, co zwracają jak to wyświetlać a dopiero póxniej weź się za obiektowe podejście.
Go to the top of the page
+Quote Post
erix
post
Post #23





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Przeanalizuj dokładnie poniższe zdanie:
Cytat
A czy będziesz include'ował plik, którego nazwa, to kod zawarty w tym pliku?
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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: 2.10.2025 - 17:39