Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: unexpected T_STRING.
Forum PHP.pl > Forum > Przedszkole
bobens_83
Witam. Nie mam pojecia o co chodzi. Zrobilem taka klase:
  1. <?php
  2.  
  3. class Strona
  4. {
  5.   public $zawartosc;
  6.   public $tytul = 'Tytul';
  7.   public $plik_css = '<link rel="stylesheet" href="style.css" type="text/css>';
  8.   public $przyciski = array(
  9.                              'Strona główna' => 'glowna.php',
  10.                              'Usługi'        => 'uslugi.php',
  11.                              'Kontakt'       => 'kontakt.php'
  12.  
  13.                            );
  14.   public function Wyswietl()
  15.   {
  16.     echo "<html>n<head>n";
  17.   }
  18. }
  19. ?>
i plik po odpaleniu generuje blad parse error, unexpected T_STRING. A wystarczy ze zmienie tylko fragment kodu funkcji na:
  1. <?php
  2.  
  3. public function Wyswietl()
  4.   {
  5.     echo "<html>n";
  6.   }
  7. ?>
i blad znika. Prosze o pomoc i z gory dziekuje.


~mike_mech
Tym razem poprawię, ale następnym prosze używać bbCode
mike
Możesz podać ten błąd, który Ci generuje i linijkę, na którą wskazuje :?:
Odpalałem ten kod i działa bez najmniejszysz zastrzeżeń, więc nie wiem dlaczego miałeby nie działać u Ciebie.
nospor
jaja w temacie? zamykam - temat nie zgodny z trescia. nie rob se jaj i podaj wlasciwy temat. przeslij mi go na PW a odblokuje

edit: otwieram
bobens_83
Cytat
Parse error: parse error, unexpected T_STRING in c:\wamp\www\class\index.php on line 17
tak to mniewiecej wyglada. Ps. Dzieki za poprawienie, jestem nowy na tym forum winksmiley.jpg
nospor
No wiec ja rownież wklepalem se ten kodzik i dziala bez problemu. Zadnych errorów nie ma. Oczywiscie uruchamialem go pod php5, gdyż taka struktura klasy wskazuje ze wlasnie php5 uzywasz. Jedyna rzecz do ktorej sie mozna przyczepisc to to:
  1. <?php
  2.  
  3. public $plik_css = '<link rel="stylesheet" href="style.css" type="text/css>';
  4.  
  5. ?>

nie zamknoles w type ", ale to ewentulanie html mialbys zlego a nie php. powinno byc
  1. <?php
  2.  
  3. public $plik_css = '<link rel="stylesheet" href="style.css" type="text/css>"';
  4.  
  5. ?>


Jestes pewien ze dokladnie ten sam kod kompilujesz? Nic przed nami nie ukryles? Na jakiej wersji php to uruchamiasz?
bobens_83
Pracuje na wamp5 1.4.5, gdy uruchomie phpinfo() to pokazuje ze jest php 5.0.5. Ale numer jest taki teraz: (moj kod juz troche sie zmienil ale problem jest ten sam, chyba ze zapisze zamiast
  1. <?php
  2. echo "<head>";
  3. ?>
to:
  1. <?php
  2.  
  3. echo "<";
  4. echo "head";
  5. echo ">";
  6. ?>
wtedy wszystko jest ok. Teraz to juz zglupialem. Poprostu jakby moj komp (albo wamp) byl uczulony na zwrot <head> pojawiajacy sie w kodzie ... guitar.gif PS. Robie ten przyklad z ksiazki Vademecum Profesjonalisty wydanie trzecie.
mike
Cytat(bobens_83 @ 2005-11-07 13:16:20)
Teraz to juz zglupialem guitar.gif

Nie głupiej tylko podaj całośc kodu tongue.gif

W kodach, które podajesz nie ma błędów, ale może masz je wcześniej. I tylko Ci się wydaje ze to echo jest błędm.

Podaj calutki kod jaki parsujesz to zobaczymy.
bobens_83
  1. <?php
  2.  
  3. class Strona
  4. {
  5. public $zawartosc;
  6. public $tytul = 'Tytul';
  7. public $meta = '<http-equiv="content-type" content="text/css"; charset="iso-8859-2">';
  8. public $css = '<link rel="stylesheet" href="style.css" type="text/css">';
  9. public $przyciski = array(
  10.  'Strona główna' => 'glowna.php',
  11.  'Usługi' => 'uslugi.php',
  12.  'Kontakt'  => 'kontakt.php'
  13.  
  14.  );
  15. public function Wyswietl()
  16. {
  17. echo "<html>n";
  18. echo "<";
  19. echo "head";
  20. echo ">n";
  21. $this->WyswietlMeta();
  22. $this->WyswietlStyle();
  23. echo "</head>n<body>n";
  24. $this->WyswietlNaglowek();
  25. echo "n</body>n</html>";
  26. }
  27.  
  28. public function WyswietlMeta()
  29. {
  30. echo $this->meta."n";
  31. }
  32.  
  33. public function WyswietlStyle()
  34. {
  35. echo $this->css."n";
  36. }
  37.  
  38. public function WyswietlNaglowek()
  39. {
  40. echo 'naglowek';
  41. }
  42. }
  43.  
  44. $a = new Strona;
  45. $a->Wyswietl();
  46.  
  47. ?>
ActivePlayer
ja nie widze błędów... ew:
  1. <?php
  2.  
  3. echo "<html>n";
  4. echo "<";
  5. echo "head";
  6. echo ">n";
  7.  
  8. ?>

na:
  1. <?php
  2.  
  3. echo '<html><head>';
  4.  
  5. ?>

bo po co Ci te newliny...
bobens_83
No wlasnie o tym caly ten temat smile.gif Jak zrobie w jednej linii to nie dziala, dlatego zastosowalem newline.
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.