• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Połączenie PHP+HTML

Object Storage Arubacloud
0 głosów
3,786 wizyt
pytanie zadane 8 maja 2015 w PHP przez kamilwdg18 Obywatel (1,080 p.)

Witam wszystkich miłośników informatyki. Moje pytanie brzmi następująco: Czy można jakoś uprościć kod php tak aby tylko odwoływać się do niego w pewnych miejscach w HTMLu? Jeśli nie wiecie o co mi chodzi to już tłumaczę, a mianowicie:

Zrobiłem sobie zgodnie z poradnikiem pana Mirosława logowanie (mój 1 projekt php ever), ale zauważyłem coś co mnie zniechęciło. W tym poradniku kod HTMLa jest wywoływany w php, i przez co mało jest to czytelne:

<?php
echo "<p>Witaj ".$_SESSION['user'];?>
<-To wyświetla zmienną w znaczniku <p>.

Ja bym wolał abym mógł się tylko odnośić w pewnych miejscach w HTMlu np. do danej zmiennej i wymyśliłem to tak:

<p><?php echo$_SESSION['user']?> witaj!</p> <-To jest ładniejsze, schludniejsze i nie generuje html.

Taki zapis pozwoliłby mi tworzyć strony dalej tak jak to robiłem,czyli szablon się nie zmienia i jest jawny a tylko kontent czyli w php już zmienne są do niego dopisywane, a nie cały szablon generowany przez php.

Moje 1 pytanie to czy mój wymyślony sposób jest dobry i nie stworzy jakiejś luki, ew. możliwych błędów w działaniu strony.

A pytanie nr 2: Czy można jakoś sobie zdefiniować znacznik z php żeby go używać w htmlu np:

 

Zamiast: <p><?php echo$_SESSION['user']?> witaj!</p> zrobić tak:

Stworzyć znacznik np. <php> (przykładowa nazwa):<php>$_SESSION['user']</php>

czyli że przeglądarka wie że <php> to nic innego jak <?php echo

 

Może moje pytania mogą wydawać się banalne, i znajdę się na jakimś kwejku dla webmasterów, ale jest to dla mnie dosyć ważne, bo to przecież komfort pracy z kodem. Może podacie sposób, ewentualnie  przykład jak wy kodujecie swoje strony?

Pozdrawiam, Kamil :)

 

3 odpowiedzi

+1 głos
odpowiedź 8 maja 2015 przez Bantu Nałogowiec (34,170 p.)
W tym celu potrzebujesz jakiegoś template engine, czy nie wiem jak to nazwać, silnik szablonów? W każdym razie jeżeli piszesz w czytym PHP, to musisz sam się w takie coś zaopatrzeć, jak nie chcesz, aby Twój kod wyglądał brzydko. Gdybyś korzystam z jakiegoś frameworka miałbyś to pewnie już wbudowane, a że nie masz to musisz coś sobie poszukać, ja znazłem coś takieg: http://twig.sensiolabs.org/ wygląda całkiem sensownie. Kiedyś w zamierzchłych czasach korzystałem ze smartów, ale jak na nie trafisz to odradzam, to coś było okropne w użytkowaniu oraz okropnie wolne... Pogrzebaj w sieci i znajdziesz jakiś silnik, który najbardziej będzie Ci odpowiadał.
komentarz 8 maja 2015 przez Boshi VIP (100,240 p.)
Niech się zainteresuje MVC
komentarz 8 maja 2015 przez Bantu Nałogowiec (34,170 p.)
A co ma MVC do języka szablonów? Przecież MVC to tylko wzorzec, jeżeli w nim nie zaimplementujemy jakiegoś języka szablonów, czy tam template engine to dalej mamy to samo.
komentarz 8 maja 2015 przez Boshi VIP (100,240 p.)
Patrząc trochę szerzej mamy coś dokłądnie innego;]
0 głosów
odpowiedź 8 maja 2015 przez efiku Szeryf (75,160 p.)

Hej.

Ja bym wolał abym mógł się tylko odnośić w pewnych miejscach w HTMlu np. do danej zmiennej i wymyśliłem to tak:

<p><?php echo$_SESSION['user']?> witaj!</p> <-To jest ładniejsze, schludniejsze i nie generuje html.

 

Twój pomysł niczego nie zmienia, dalej masz HTML i PHP.  

Na ratunek przychodzi Ci template engine. 

Gorąco polecamhttp://twig.sensiolabs.org/ 

Cóż chcesz przykład, proszę:

Kontroler:

https://github.com/dsyph3r/symblog/blob/master/src/Blogger/BlogBundle/Controller/CommentController.php

Ale do kontrolera muszą trafiać jakieś dane prawda? Proszę tu link do routingu: 

https://github.com/dsyph3r/symblog/blob/master/src/Blogger/BlogBundle/Resources/config/routing.yml

Widoki:

https://github.com/dsyph3r/symblog/tree/master/src/Blogger/BlogBundle/Resources/views/Comment

 

Dobry przykład aplikacji na Symfony, tworzenia bloga ;) 

0 głosów
odpowiedź 8 maja 2015 przez HaKIM Szeryf (87,590 p.)

Również możesz zrobić tak:

<?=$_SESSION['user']?>

Z tego co wiem, to <?= słuzy do wyświetlania czegoś. Taki zamiennik tego:

<?php echo $_SESSION['user']; ?>

 

Podobne pytania

0 głosów
5 odpowiedzi 165 wizyt
pytanie zadane 31 stycznia w PHP przez Iei Obywatel (1,950 p.)
0 głosów
1 odpowiedź 717 wizyt
pytanie zadane 5 lipca 2016 w PHP przez ShadoWs Bywalec (2,800 p.)
0 głosów
2 odpowiedzi 1,093 wizyt
pytanie zadane 13 października 2015 w PHP przez lrk Początkujący (300 p.)

92,579 zapytań

141,432 odpowiedzi

319,657 komentarzy

61,963 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...