Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Nawiasy klamrowe {} jako zmienne w php
ghost1511
post 19.04.2011, 09:25:49
Post #1





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


Czuwam nad sprawnością pewnego sklepu internetowego, nie jestem jego autorem jednak od czasu do czasu dodaje jakieś proste modyfikacje i poprawiam ewentualne błędy. System ostatnio się wysypał i nie wyświetla wartości zmiennych które są wyświetlane w nawiasach klamrowych, zamiast tego wyświetlany jest ciąg znaków, który ma zostać podmieniony na wartość zmiennej np.:
  1. {SYMBOL_JM}

Z racji mojego niewielkiego doświadczenia, nie spotkałem się z czymś takim, a dopóki działało nie interesowałem się tym z braku czasu.
i teraz pytanie ... co oznaczają te nawiasy ? co to za składnia? gdzie można zobaczyć czy wartości które powinny się tam wyświetlić zdefiniowane są poprawnie ?
Go to the top of the page
+Quote Post
zegarek84
post 19.04.2011, 09:50:29
Post #2





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


przeczytaj w manualu dział:
http://www.php.net/manual/pl/language.variables.variable.php


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
ghost1511
post 19.04.2011, 11:02:22
Post #3





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


no dobrze ... u mnie w apache'u działa składnia
  1. ${nazwa_zmiennej}
natomiast nie dziala
  1. {nazwa_zmiennej}
Skąd to się bierze ? Należy włączyć jakąś bibliotekę?

edit:
poza tym znacznik nie znajduje się w bloku kodu php a w bloku html:
  1. <P><U>Nazwa:</U><STRONG>{NAZWA_ART}</STRONG></P>
i to działa.

Ten post edytował ghost1511 19.04.2011, 11:09:59
Go to the top of the page
+Quote Post
ActivePlayer
post 19.04.2011, 11:06:45
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


pokaz kawałek kodu, który nie działa, bo chyba nie do konca wiesz o co pytasz;-)
Go to the top of the page
+Quote Post
ghost1511
post 19.04.2011, 11:20:22
Post #5





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


Oto fragment czystego kodu HTML, który jest w pliku php (najwidoczniej jest parsowany przy wyświetlaniu) :
  1. <P><U>Producent:</U><STRONG>{text}</STRONG></P>
  2. <P><U>j.m.:</U><STRONG>{SYMBOL_JM}&nbsp;</STRONG></P>
  3. <P><U>Waga:</U><STRONG>{MASA}</STRONG></P>


i problem objawia się tym, że
  1. {text} {MASA}
zamienione są na odpowiednie wartości. Natomiast gdzieś pojawił się błąd i
  1. {SYMBOL_JM}
nie jest zamieniony i wyświetla się w takiej postaci.
Go to the top of the page
+Quote Post
ActivePlayer
post 19.04.2011, 11:32:17
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


jest w pliku php czy jest w pliku jakiegoś systemu szablonów? (np. smarty?)
Go to the top of the page
+Quote Post
zegarek84
post 19.04.2011, 11:38:04
Post #7





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


no teraz to już trochu inaczej - tak - jest to szablon strony i jest on parsowany przez skrypt php - jednak jak ktoś ma Ci pomóc skoro nie napisałeś, z jakiego systemu szablonów korzystasz ani nie podałeś nazw plików/struktury... -> powinieneś sięgnąć do manuala danego systemu szablonów... lub przeszukaj cały projekt pod kątem np. występowania ciągów znaków {MASA} lub samego MASA jeśli korzystasz z jakiegoś IDE - wyświetli Ci się lista plików i linie kodu w których występuje ten ciąg znaków (zaznacz przy wyszukiwaniu by brało pod uwagę wielkość znaków) - mniej więcej w tym samym miejscu będziesz miał SYMBOL_JM który jakoś już zlokalizujesz ręcznie w kodzie...

Ten post edytował zegarek84 19.04.2011, 11:40:00


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
ghost1511
post 19.04.2011, 11:51:27
Post #8





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


Jest to indywidualnie napisany cms więc nie podałem jego nazwy. Z czego korzystają ciężko jest wyczuć. Ogólnie niezły bajzel jest w kodzie i ciężko się w czymkolwiek połapać. A sama firma nieźle zdziera za każdą informację (na szczęście to nie mój problem) dlatego starałem się dojść do tego sam. Wielkie dzięki za zainteresowanie.
Go to the top of the page
+Quote Post
zegarek84
post 19.04.2011, 11:56:21
Post #9





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


najprawdopodobniej będzie to oparte o wyrażenia regularne - utwórz projekt ze wszystkimi plikami np. w netbeans i wyszukaj w całym projekcie jak wspomniałem pod kontem występowania określonych fraz i wyświetli Ci jak już pisałem listę plików - po dwukliku na wyniku wyszukiwania przeniesie Cię dokładnie do lini wystepowania danej frazy...


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post

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: 19.05.2025 - 05:29