Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przekazanie zmiennej wewnątrz kodu, przekazanie zmiennej kilka linijek kodu wyżej
barat
post
Post #1





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 19.05.2007

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


Witam
Mam drobne pytanie, i nie ukrywam, że bardzo przydatna byłaby odpowiedź (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Otóż chciałbym się dowiedzieć, czy jest możliwość przekazania wartości jakiejś zmiennej (jakiegoś wyniku wykonania skryptu) kilka linijek wyżej tego samego kodu czyli schemat:

echo $zmienna;

trochę kodu który np pobiera coś z bazy czy sprawdza warunki

$zmienna = 'tu wynik tego kodu'

Z tego co na razie wyczytałem w mądrych książkach jakoś nie umiem tego zrobić ... nawet nie wiem, czy tak się da (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Bo może konieczne jest takie ustawianie funkcji/kodu by zmienna pobierana już wystąpiła wyżej ?
Go to the top of the page
+Quote Post
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Może zainteresuj się operatorem .= i podczas wykonywania tego kodu dopisuj do zmiennej kolejne wartosci czyli $zmienna .= "dopis"
Go to the top of the page
+Quote Post
barat
post
Post #3





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 19.05.2007

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


No właśnie chyba to nie bardzo zadziała ? To tylko spowoduje dodanie wartosci do poprzedniej zmiennej bez nadpisywania jej, ale dalej - dodana wartosć będzie widoczna dopiero gdy echo będzie poniżej jej:

$zmienna = 'coś';
echo $zmienna //wyświetli: coś
$zmienna .= ' jeszcze';
echo $zmienna; //wyświetli: coś jeszcze

Chodzi o to, że mam jakąś tam stronę index.php

w niej mam przywołanie najważniejszych funkcji do wygenerowania strony + na dole include strony z "szablonem czyli metadane, itp - taka pusta poprawna strona ... a w tej stronie dopiero w zależności od parametru hmm page (ondex.php?page=cośtam) wyświetlam poszczególne moduły.
Chodzi o to, że dopiero te poszczególne moduły będą wyciagać z bazy info co mają załadować + dodatkowo dan z 3 kolumn (meta_title, meta_desc i meta_keywords) ... moge wtedy te 3 wartosci przypisac do zmiennych i chciałbym je wyświetlić w odpowiednich miejscach czyli
<title></title> i <meta name="desc/keywords ...

Gdybym przyjął rozwiązanie, że cały szablon strony jest tworzony na poziomie tych include'owanych modułów sprawa by była prosta - funkcje wyciagajace ustawiłbym na semej górze i bez problemu miałbym dostęp do tych zmiennych ... ale takiego rozwiazania nie chcę, bo wtedy dla każdego nowego modułu musiałbym wklejać ten sam szablon WWW ... a to ma być automat (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował barat 19.05.2007, 20:10:23
Go to the top of the page
+Quote Post
domis86
post
Post #4





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


przekazac dane do kodu znajdujacego sie kilka linijek wyzej ,
inaczej:
przekazaz dane do kodu, ktory sie juz wykonal

nie da sie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


Cos mi sie wydaje, ze zle zaplanowales ten swoj system.
Moze poczytaj o MVC (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
barat
post
Post #5





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 19.05.2007

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


Sam doszedłem, że źle zaprojektowałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Musze przenieść dane o metatagach do osobnej tabeli i będzie dobrze (teraz każdy mod typu Strona statyczna, news itp miała 3 dodatkowe kolumny z metatagami poza treścia właściwą... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )
wystarczą kolumny |mod|link|meta_title|meta_desc|meta_key| bo zanim wyświetlę body już mam info o tym który mod odpalam i jaki link tego moda więc bez problemu wyciągnę z bazy info o metatagach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ehh wystarczyło pomyśleć (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

Ale mimo wszystko - dobrze mieć pewność, że tak się nie da (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował barat 19.05.2007, 23:39:07
Go to the top of the page
+Quote Post
D3vilroot
post
Post #6





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 5.08.2006

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


Mam identyczny problem. Musze zrobic coś identycznego, ale wątpie czy da się zrobic coś takiego.
Sytucja identyczna. Tez problem z Meta Tagami (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)


Na szczęście bardzo łatwo sobie z tym poradziełem... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował D3vilroot 20.05.2007, 13:04:51
Go to the top of the page
+Quote Post
domis86
post
Post #7





Grupa: Zarejestrowani
Postów: 255
Pomógł: 5
Dołączył: 20.03.2007
Skąd: Kraków

Ostrzeżenie: (30%)
XX---


czyli już nie masz problemu (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
emacieka
post
Post #8





Grupa: Zarejestrowani
Postów: 40
Pomógł: 1
Dołączył: 29.12.2003
Skąd: Szczecin

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


A moze byc tak?
  1. <?php
  2.  
  3. //na poczatek
  4.  
  5. // jakies operacje
  6.  
  7. ?>
  8. <html>
  9. <meta name=keywords content=%%META_KEYS%%>
  10. <meta name=description content=%%META_DESC%%>
  11. ...
  12. </html>
  13. <?php
  14.  
  15. $out = ob_get_clean();
  16.  
  17. $meta_patern = array('%%META_KEYS%%', '%%META_DESC%%');
  18. $meta_replace = array(
  19. 'keys' => 'jakies, slowa, dziwne',
  20. 'desc' => 'A tuaj opis'
  21. );
  22.  
  23. $out = str_replace($meta_patern, $meta_replace, $out);
  24. echo $out;
  25. ?>


Ten post edytował emacieka 20.05.2007, 13:15:02
Go to the top of the page
+Quote Post
barat
post
Post #9





Grupa: Zarejestrowani
Postów: 183
Pomógł: 0
Dołączył: 19.05.2007

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


Cytat(D3vilroot @ 20.05.2007, 13:52:45 ) *
Na szczęście bardzo łatwo sobie z tym poradziełem... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


Ja miałem założenie, by plik szablonu (caly wyglad strony) to był czysty kod HTML + tylko w odpowiednich miejscach
metatag(title); metatag(keys); metatag(descr); menu(); body()

Ot ... chciałem oddzielić szablon od kodu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Stąd rodził się problem, że wszystko to co tyczy się kolejno ładowanych modułow w body() było już "pod" </head> (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

U mnie wymagało to przeprojektowania bazy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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: 22.12.2025 - 01:47