PHP w tekście CSS Menu

Jeśli posiadasz wiedzę, którą chcesz się podzielić z innymi, to ten dział jest dla Ciebie.

PHP w tekście CSS Menu

Postprzez boryspower » 24 wrz 2017, o 07:50

Witam,

Chciałbym by przycisk z CSS Menu miał dynamiczny tekst zawierający nazwę zalogowanego użytkownika.

Próbowałem zamiast tekstu w parametrach wpisać fragment kodu PHP, w stylu <?php echo $_SESSION['username']; ?> jednak to nie działa i strona się wysypuje... Da się to jakoś zrobić?

Pozdrawiam
Przemysław Jedynowicz
boryspower
Początkujący
Początkujący
 
Posty: 5
Dołączył(a): 16 maja 2016, o 11:28

Re: PHP w tekście CSS Menu

Postprzez Na_razie2 » 24 wrz 2017, o 10:30

Ten kod do obiektu Html ( <> HTML ).
Kod: Zaznacz cały
<?php
if (session_id() == "")
{
   session_start();
}

if (isset($_SESSION['username']))
{
   $text_name=$_SESSION['username'];
}
else
{
   $text_name='Not logged in';
}
?>

We właściwościach Html Propeties dla "Type" - Start of Page (początek strony).
W CSS Menu zamiast np. Item 1 wklej
Kod: Zaznacz cały
<?php echo$text_name;?>
dokładnie w takiej postaci (spacja po <?php,bez spacji pomiędzy echo a $tekst_name)
Strona opublikowana jako php (rozszerzenie pliku php) na serwerze z obsługą php.
Przykład (wwb ver.12) w załączniku

ps.powinno zadziałać (może zależeć od serwera), jeśli zmianna w sesji to username, jeśli zmieniałeś to podstaw swoją.
Jeśli np.chcesz wyświetlać całą nazwę użytkownika możesz zmienić na fullname.
Załączniki
przykladzik.zip
(1.94 KiB) Pobrane 93 razy
Na_razie2
Początkujący
Początkujący
 
Posty: 44
Dołączył(a): 7 sie 2016, o 21:48

Re: PHP w tekście CSS Menu

Postprzez boryspower » 24 wrz 2017, o 16:36

Dzięki za odpowiedź. Co ciekawe to sam Pablo odpisał mi, że nie da się tego zrobić :) Ale Polacy wszystko potrafią ;)

Ogólnie problem w tym, że edytor zamienia wszystkie spacje na &nbsp;

Przetestowałem Twoją propozycję i niestety nie zawsze dobrze działa - na Chrome przycisk wyświetla się jako link tekstowy, za to w IE przy pierwszym załadowaniu strony wyświetlił się jako link tekstowy, a po przeładowaniu strony był wyświetlany już jako button menu... Pozostaje chyba zrobienie własnego menu w obiekcie HTML (o ile to dobrze zadziała)

Pozdrawiam.
boryspower
Początkujący
Początkujący
 
Posty: 5
Dołączył(a): 16 maja 2016, o 11:28

Re: PHP w tekście CSS Menu

Postprzez Na_razie2 » 25 wrz 2017, o 18:10

Szukaj przyczyny.
U mnie działa, sprawdziłem na Chromie(win7/64), IE11(win7/64), FF (XP),ChromiumPortable(XP) , a nawet na IE8(XP).
Nawet podmiana odnośnika do strony działa (w zależności gdy zalogowany/niezalogowany).

Testowane na localhoście (php 5.4.10)

ps. w jakim celu to wyświetlanie nazwy użytkownika w Menu?
Na_razie2
Początkujący
Początkujący
 
Posty: 44
Dołączył(a): 7 sie 2016, o 21:48

Re: PHP w tekście CSS Menu

Postprzez boryspower » 25 wrz 2017, o 22:51

Chcę zrobić przycisk, który przy niezalogowanym userze wyświetli "logowanie|rejestracja" a przy zalogowanym wyświetli nazwę użytkownika, po kliknięciu w którą rozwinie menu z opcjami w stylu "Edytuj profil", "coś tam", "Wyloguj".
boryspower
Początkujący
Początkujący
 
Posty: 5
Dołączył(a): 16 maja 2016, o 11:28

Re: PHP w tekście CSS Menu

Postprzez Na_razie2 » 27 wrz 2017, o 08:41

Bardziej zaawansowane to chyba ręcznie-edycja w notatniku co może być szybsze jeśli pod-stronek kilka lub przerobienie/przetransferowanie całego menu w php i do <>HTML.
Przeróbka w notatnikujako kod PHP (lub bezpoś. w <>HTML) daje na pewno większe możliwości w tym ukrywanie za IF-ami niektórych przycisków, a pokazywanie innych w zależności od stanu Logowania.
tu przykład sklecony doraźnie
Sprawdź jak to idzie na Chromym
Na_razie2
Początkujący
Początkujący
 
Posty: 44
Dołączył(a): 7 sie 2016, o 21:48


Powrót do Porady, demonstracje, tutoriale, przykłady

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości