Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Dodanie całego kodu do zmiennej.
Forum PHP.pl > Forum > Przedszkole
Gruchol
Witam,
Mam taki kod :
  1. $zawartość = "tutaj kod strony";
  2. $id = $sql1["id"];
  3. file_put_contents("skin$id.php", $zawartosc);

I muszę wstawić do $zawartość cały kod strony razem z <html> wszystkimi divami, skryptami itp. jednak gdy wstawię po prostu ten kod pomiędzy "" w $zawartość wywala error a strona przestaje działać.

W jaki sposób mogę dodać taki kod do tej zmiennej ?

Z góry dziękuję i pozdrawiam.
rad11
  1. $zawartosc = file_get_contents('http://twojastrona');
Gruchol
Niestety nie mogę tak zrobić, muszę dodać cały kod ponieważ będą znajdywały się w tej zmiennej inne zmienne.
rad11
To jaki masz problem?

$zmienna .= $nastepna_zmienna;
Gruchol
Nie nie chodzi mi o coś innego np.

  1. $zmienna = <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. </head>
  5. <body>
  6.  
  7. <?php
  8.  
  9. $zmienna2 = mysqli_query(tutaj jakieś zapytanie);
  10. ?>
  11. </body>
  12. </html>

Potrzebuje ten cały kod zapakować do zmiennej.
Jednak jak tak zrobię to wywala error.
untorched
http://php.net/manual/en/book.outcontrol.php
Gruchol
Nie rozumiem jak mam tego użyć aby to wszystko wsadzić do 1 zmiennej :/
nospor
Jak masz kod np:

$blabla = "blabla";
$inneblabla = 'inneblabla';

I jak chcesz go wstawic do zmiennej jako tekst, a tekst rozpoczynasz od apostrofow', to wszystkie apostrofy w środku masz poprzedzic \, czyli:

  1. $zm = '
  2. $blabla = "blabla";
  3. $inneblabla = \'inneblabla\';
  4. ';


To są podstawy php, operacji na tekstach.
Lektura obowiązkowa dla Ciebie:
http://php.net/manual/en/language.types.string.php

A na przyszlosc jak dostajesz bledy to nam je pokazuj dokłanie. Jesteś na forum juz troche czasu, to mógłbyś już w koncu takie elementarne zachowania miec opanowane :/
Gruchol
Czyli powinno to tak wyglądać ?

  1. <?php
  2.  
  3. $zmienna = /'<!DOCTYPE HTML>
  4. <html>
  5. <head>
  6. </head>
  7. <body>
  8.  
  9. <?php
  10.  
  11. $zmienna2 = mysqli_query(tutaj jakieś zapytanie);
  12. ?>
  13. </body>
  14. </html>\';
  15.  
  16. <?

Tak ;d ?
nospor
Wyraźnie napisalem jak... czy widzisz gdzies jakies \ w moim otwierajacym i zamykajacym apostrofie? Naprawde tak ciezko przeczytac ze zrozumieniem te dwie linijki kodu?
b4rt3kk
Jeśli masz tam w tej zmiennej wprost wypisany kod html to proponuję w ten sposób:

  1. $zmienna = <<<'HTML'
  2. <html>
  3. <div>
  4. ...
  5. </div>
  6. </html>
  7. HTML
  8. ;
Gruchol
Tam jest też php i javascript więc twój sposób chyba nie za bardzo będzie działał.
Jak wrócę do domu to sprawdzę.
b4rt3kk
Cytat(Gruchol @ 4.02.2015, 13:00:15 ) *
Tam jest też php i javascript więc twój sposób chyba nie za bardzo będzie działał.
Jak wrócę do domu to sprawdzę.


Jeśli jest php i js też nie ma problemu, zawsze możesz użyć heredoc (zinterpretuje wszelkie zmienne tak jakby były pomiędzy "):

  1. $zmienna = <<<HTML
  2. ...
  3. HTML;
  4. // lub
  5. $zmienna = <<<"HTML"
  6. ...
  7. HTML;

untorched
JavaScript'u nie przemielisz przez PHP. Jeśli chcesz przemielić PHP do HTML to już pisałem o output buffering.
  1. <?php
  2.  
  3. // include('plik.php'); // poniżej ręcznie doklejona zwartość
  4. ?>
  5.  
  6. <html>
  7. <head></head>
  8. <body>
  9. <?php
  10. echo 'Zmienna!';
  11. ?>
  12. </body>
  13. </html>
  14.  
  15. <?php
  16. $zawartosc = ob_get_contents();
  17.  
  18. var_dump($zawartosc);


Demo link: http://ideone.com/rcocLG
nospor
Bartek ale on nie chce by mu się zmienne zinterpretowały. Chce wstawic kod jak ma, bez interpretacji - a przy najmniej tak wynika z jego postów. Odpowiedź już dostał. Tylko zamiast chwilke nad nią pomyslec (2 linijki) to strzela bezmyslnie
Gruchol
Chyba nie za bardzo się rozumiemy.

Potrzebuję do zmiennej dodać cały kod strony czyli np. index.php
Jest tam kod JS, PHP i JavaScript.
Tylko że jeżeli wkleję ten kod w "" lub '' to wywala błąd bo ciąg dalszy strony po ' też traktuje jako tekst.
Teraz nasunął mi się jeszcze 1 problem.

Muszę zrobić zmienną która zostanie odczytana z formularza i wpisana do zmiennej która znajduje się już w zmiennej a reszta oprócz tej zmiennej nie może zostać zinterpretowana.
Pyton_000
Zmień koncepcję po wygląda to jak dobieranie się do byka przy pomocy ołówka ew. strzelanie do komara z pancernika.

Powiedz lepiej co chcesz osiągnąć. Podaj nam swój cel, do czego Ci to będzie później potrzebne bo może Twoje rozumowanie i podejście jest błędne.
Gruchol
Piszę dla siebie mały sklepik.
I mam formularz dodawania produktu na stronę co już zrobiłem i wszystko ładnie się dodaje.
Tylko że do każdego produktu potrzebna mi jest nowa podstrona z potwierdzeniem zakupu.
Dla tego generuje plik o nazwie skin$id.php.

I dodałem do kodu tworzenie nowego pliku jednak do tego pliku muszę wsadzić jeszcze cały kod strony (tej potwierdzającej) wraz ze zmiennymi z formularza typu nazwa, cena itp.
nospor
Tego tak sie nie robi....

Robisz jedną stronę, ktora ma robic co ma robic, i ta strona na podstawie np. id przekazanego w URL, pobiera dane konkretnego rekordu, ktory cię interesuje.
Gruchol
Nie znam się na tyle na php aby napisać coś takiego jak napisałeś.
Wolał bym na początek zrobić to z tymi plikami.
nospor
W takim razie powodzenia.

ps: swojego pomyslu tez nie wiesz jak zrobic, ale pomimo, ze to porononiony pomysl, i na dodatek nie wiesz jak go zrobic, to i tak chcesz go robic... Ot wyższa logika.
Gruchol
W takim razie możesz mnie nakierować na to jak napisać to z wyszukiwaniem po id ?
Był bym bardzo wdzięczny.
nospor
$_GET['id'] - tutaj masz wartosc id przekazaną w linku, np: http://blabla.pl/plik.php?id=4
To w $_GET['id'] bedziesz mial wartosc 4.

Mając te wartosc, mozesz teraz w pliku php pobrac z bazy interesujacy cię rekord o id = 4 i go sobie wyswietlic na stronie gdzie cchesz i jak chcesz.
Gruchol
Jeżeli dobrze rozumiem, w bazie gdzie jest id np. 4 ma być cały kod strony ..?
nospor
NIe... w bazie pod ID 4 masz miec rekord produktu. Bo z tego co zrozumialem, to produkty zapisujesz w bazie, tak? A moze nie? Moze produkty zapisujesz gdzies indziej?
Pyton_000
@nospor ja się pogubiłem co gdzie On zapisuje wink.gif Najpierw mówi o produktach potem o jakimś zamówieniu itd. smile.gif
Gruchol
Okej, dzięki wielkie już rozumiem jak to zrobić
Ufff dzięki za cierpliwość.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.