benkowik utworzono 26 marca 2009 utworzono 26 marca 2009 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 26 marca 2009 komentarz 26 marca 2009 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 26 marca 2009 Autor komentarz 26 marca 2009 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 26 marca 2009 komentarz 26 marca 2009 (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 26 marca 2009 Autor komentarz 26 marca 2009 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 26 marca 2009 komentarz 26 marca 2009 Heh, no nie wiem jak jeszcze można to załatwić Przynajmniej dzisiaj nie mam już pomysłu Zawsze możesz skorzystać z sposobu powyżej, albo najlepiej skorzystać z bazy danych Pozdro
benkowik komentarz 27 marca 2009 Autor komentarz 27 marca 2009 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 27 marca 2009 komentarz 27 marca 2009 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
benkowik komentarz 27 marca 2009 Autor komentarz 27 marca 2009 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.