x-kom hosting

[Rozwiązany][PHP]Pobieranie tylko zmiennej

benkowik
utworzono
utworzono

Hello,

Mam problem gdyż walczę z "kochanym" PHP.

<div id="belkasrodek">			   <?php				echo ("$zmienna");			   ?>			   </div>

W tym miejscu chcę samą zmienną z pliku np. linki.php

Natomiast w tym miejscu chcę cały plik:

<div id="tresc">		   <?phpif($_GET['id']=="linki"){include("linki.php");}?> </div>

Ze względu, że nie znam PHP i nie zamierzam poznawać a chcę wiedzieć jak to zrobić. Próbowałem z include także w tym pierwszym kodzie no ale jak sam wiem to on pobrał mi tekst cały + zmienną a w kodzie poniżej było już OK sam tekst bez zmiennej.

grucha
komentarz
komentarz

Hmm, nie wiem za bardzo o co Ci chodzi, ale jeśli chcesz w miejscu echo $zmienna; wyświetlić zmienną z pliku np. linki.php to musisz go najpierw 'zainkludować'.

Najlepiej jeśli w pliku linki.php umieścisz same informacje np. w tablicy i później odwołujesz się albo do konkretnej zmiennej albo przez pętle wyświetlasz wszystko. Ale prawdę mówiąc nie za bardzo przekazałeś o co Ci konkretnie chodzi.

benkowik
komentarz
komentarz

No dokładnie chodzi mi o to iż mam taki plik linki.php

<?php $zmienna = 'tekst';?>tekst teksfasdjgfasfasfasfhasgfjasfasfasfaskhfgashfhasjfagaghafaslghafgasgasgahfasjhajksfgasjkhfas

Teraz w głównym pliku czyli index.php chce w jednym miejscu wyciągnąć tylko zmienną a w drugim miejscu tylko tekst. Wyciąganie tekstu polegało na zastosowaniu takiego kodu:

<?phpif($_GET['id']=="linki"){include("linki.php");}

A teraz pytam jak wyciągnąć samą zmienną.

grucha
komentarz
komentarz (edytowane)

No na tym polega include, że 'wkleja' cały plik, dlatego jeżeli będziesz miał zmienną a pod spodem jakiś tekst w htmlu, to ten tekst zostanie wyświetlony...

Najprostsze rozwiązanie:

<?php  $zmienna='tekst';  $strona='cos tam, cos tam';?>
<?phpif($_GET['id']=="linki"){ echo $strona;}?>

Ewentualnie, jak masz jakiś długi tekst, możesz użyć trochę wygodniejszej składni heredoc:

<?php$zmienna = 'tekst';$strona = <<<ABCtekst teksfasdjgfasfasfasfhasgfjasfasfasfaskhfgashfhasjfagaghafaslghafgasgasgahfasjhajksfgasjkhfasABC;?>

Najprostsze i chyba najszybsze rozwiązanie. Mam nadzieję, że o to Ci chodziło ;]

benkowik
komentarz
komentarz

Wybacz, że marudzę ale preferowałbym aby pozostały kod był wolnym kodem, czyli po za PHP i zmienną.

Może dokładniej opiszę co chcę zrobić. Strony ładowane dynamiczne między <div></div>. Jednak chcę aby w zmiennej był zawarty tytuł strony, np. Linki, który będzie wyświetlany jako podpis także między <div></div> ale innym niż treść strony.

Mógłbym pobierać nazwę pliku ale gdy pójdę w głąb tworzenia strony nazwy będą małomówne.

grucha
komentarz
komentarz

Heh, no nie wiem jak jeszcze można to załatwić :P Przynajmniej dzisiaj nie mam już pomysłu ;] Zawsze możesz skorzystać z sposobu powyżej, albo najlepiej skorzystać z bazy danych :P

Pozdro ;]

benkowik
komentarz
komentarz

No tak ale jeśli będę miał kilkanaście podstron a nawet więcej to pełno muszę zrobić tych instrukcji sprawdzających czy jest to ten plik.

A nie da się zrobić aby przy ładowaniu treści ze zmiennej $strona załaduje treść zmiennej $zmienna ale w inne miejsce strony ?

Już za okazaną pomoc i cierpliwość zostałeś nagrodzony, lecz czekam nadal ;)

Tutaj dodatkowe tłumaczenie:

// Dokument LINKI<?php$zmienna = 'Linki';$strona = 'gsa fdg has djasd asf shfhkaf asd a';?>

Jak załadować zmienne za jednym razem czyli za jednym wywołaniem include ale w 2 różne miejsca strony. Raz między jakieś <divy> i drugi raz daleko od pierwszego miejsca ale też między divy.

Tak mam zbudowane menu dla podstrony linki:

if($show=='7') {include"linki.php"; }

W tym miejscu chciałbym załadować zmienną $strona. Jednak kilka bloków wyżej chciałbym załadować przy tym kliknięciu zmienną $zmienna.

grucha
komentarz
komentarz

Jeżeli będziesz korzystał z mojej metody, wtedy 'zainkldować' ten plik możesz na samym początku dokumentu, np. jeszcze przed tagiem html, a do zmiennych możesz odnosić się później, gdzie chcesz w tym dokumencie ;]

Możesz też np. zrobić sobie plik dajmy na to inc.php i w nim dołączasz wszystkie pliki jakie chcesz, a później w głównym dokumencie wywołujesz tylko ten inc.php i masz dołączone wszystkie pliki jakie chcesz, za pomocą jednego dołączenia :P

benkowik
komentarz
komentarz

Jak możesz podaj przykład tego ostatniego rozwiązania, że wszystkie pliki w jednym.

Na jakiej zasadzie miałbym wywoływać wyznaczoną podstronę, jak ładować zmienne.

$strona = <<<ABCtekst teksfasdjgfasfasfasfhasgfjasfasfasfaskhfgashfhasjfagaghafaslghafgasgasgahfasjhajksfgasjkhfasABC;?>

Dlaczego po załadowaniu do właściwego pliku nie mam polskich znaków ?

Powyższe wszystkie problemy rozwiązane.

Dziękuje jeszcze raz !

Pozdrawiam.

Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!

Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Strona wykorzystuje pliki cookies w celu prawidłowego świadczenia usług i wygody użytkowników. Warunki przechowywania i dostępu do plików cookies możesz zmienić w ustawieniach przeglądarki.