Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] PHP w zmiennej
mcfreak
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


Napisałem skrypt tworzący plik sygna.php, dla wyjaśnienia, generator sygnatur:

  1. $zawartosc = file_get_contents('dane/1.txt').$_POST["idprofilu"].file_get_contents('dane/2-1.txt').$_POST["format"].file_get_contents('dane/2-2.txt').$_POST["adresob"].file_get_contents('dane/3-1.txt').$_POST["k-linki"].file_get_contents('dane/3-2.txt').$_POST["k-posty"].file_get_contents('dane/3-3.txt').$_POST["k-pochwaly"].file_get_contents('dane/3-4.txt').$_POST["k-poziom"].file_get_contents('dane/3-5.txt').$_POST["k-diamenty"].file_get_contents('dane/3-6.txt').$_POST["k-dni"].file_get_contents('dane/4.txt').$_POST["w-linki"].','.$_POST["nachylenie-linki"].','.$_POST["lewa-linki"].','.$_POST["gora-linki"].file_get_contents('dane/5.txt').$_POST["cz-linki"].file_get_contents('dane/6.txt').$_POST["w-posty"].','.$_POST["nachylenie-posty"].','.$_POST["lewa-posty"].','.$_POST["gora-posty"].file_get_contents('dane/7.txt').$_POST["cz-posty"].file_get_contents('dane/8.txt').$_POST["w-pochwaly"].','.$_POST["nachylenie-pochwaly"].','.$_POST["lewa-pochwaly"].','.$_POST["gora-pochwaly"].file_get_contents('9.txt').$_POST["cz-pochwaly"].file_get_contents('dane/10.txt').$_POST["w-poziom"].','.$_POST["nachylenie-poziom"].','.$_POST["lewa-poziom"].','.$_POST["gora-poziom"].file_get_contents('dane/11.txt').$_POST["cz-poziom"].file_get_contents('dane/12.txt').$_POST["w-diamenty"].','.$_POST["nachylenie-diamenty"].','.$_POST["lewa-diamenty"].','.$_POST["gora-diamenty"].file_get_contents('dane/13.txt').$_POST["cz-diamenty"].file_get_contents('dane/14.txt').$_POST["w-dni"].','.$_POST["nachylenie-dni"].','.$_POST["lewa-dni"].','.$_POST["gora-dni"].file_get_contents('dane/15.txt').$_POST["cz-dni"].file_get_contents('dane/16-gif.txt');
  2.  
  3. $names = 'sigs/'.$_POST["katalog"].'/view.php';
  4. $fp = fopen($names, 'x');
  5. fwrite($fp, $zawartosc);
  6. fclose($fp);
  7.  
  8.  


chodzi o to, że muszę robić pełno plików tekstowych, bo nie potrafię inaczej tego zrobić (jak by ktoś nie wiedział) zapisuje zawartość zmiennej $zawartosc do pliku, w tej zmiennej sa tez odwolania do formularza, jak widać musze caly skrypt podzielic na teksty, zeby wstawic $_POST, a to uciazliwe...
jak zrobic i nie meczyc sie z tym w ten sposob np.:

  1. $zawartosc = '<?
  2. $zrodlo = "$_POST[idprofilu]";


..... i tak dalej i tak dalej a po wykonaniu pliku przez fwrite zawartosc /view.php bedzie miala

  1. <?
  2. $zrodlo = "ciacho(czyli_to_co_podalem_w_formularzu)";


mam nadzieję że kumacie, bo tego sie nie da wytłumaczyć.
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
kriszna
post
Post #2





Grupa: Zarejestrowani
Postów: 36
Pomógł: 2
Dołączył: 6.07.2007
Skąd: Wola Zabierzowska

Ostrzeżenie: (0%)
-----


  1. $string = "<?php \n $zrodlo = '".$zawartosc."';\n ?>";

i zapisz zmienną $string do pliku.
Go to the top of the page
+Quote Post
mcfreak
post
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


dzięki, sprawdzę. a zamiast łamania liń /n, mogę posłużyć się zwykłym enterem, np. tak:

[PHP] pobierz, plaintext
  1. $string = "<?php
  2. $zrodlo = '".$zawartosc."';
  3. ?>";
[PHP] pobierz, plaintext

bo skryptu jest trochę więcej niż tu przedstawiłem i fajnie by było jak było by to możliwe.

edit:

jak tak zrobię to jest błąd , (niestety nie powiem jaki bo civ.pl nie pokazuje błędów, sprawdzę na innym hostingu)

edit2:

Parse error: syntax error, unexpected T_STRING in /home/testsig/domains/testsig.hostil.pl/public_html/gen.php on line 161

161 linijka to początek $strinng

Ten post edytował mcfreak 12.08.2009, 20:32:33
Go to the top of the page
+Quote Post
kriszna
post
Post #4





Grupa: Zarejestrowani
Postów: 36
Pomógł: 2
Dołączył: 6.07.2007
Skąd: Wola Zabierzowska

Ostrzeżenie: (0%)
-----


  1. $string = "<?php
  2. \$zrodlo = '".$zawartosc."';
  3. ?>";
Go to the top of the page
+Quote Post
mcfreak
post
Post #5





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


zapisało , dzięki. czyli rozumiem że mam przed każdą taką linijką dawać / ?
Go to the top of the page
+Quote Post
kriszna
post
Post #6





Grupa: Zarejestrowani
Postów: 36
Pomógł: 2
Dołączył: 6.07.2007
Skąd: Wola Zabierzowska

Ostrzeżenie: (0%)
-----


\ dajesz przed $. Wtedy $ do zwykły znak, a nie początek zmiennej.
Go to the top of the page
+Quote Post
mcfreak
post
Post #7





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


ok ostatnie pytanie:
  1. $zawartosc = "<?
  2.  
  3. \$strona = "http://######.pl/forum/profile.php?mode=viewprofile&u='.$_POST[idprofilu].'"; # 229 linijka
  4. \$page = file_get_contents($strona);
  5.  
  6. ?>";

wywala błąd

Parse error: syntax error, unexpected T_STRING in /home/testsig/domains/testsig.hostil.pl/public_html/gen.php on line 229

jak mi odpowiesz, to będę już sam dalej wiedział (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Andaramuxo
post
Post #8





Grupa: Zarejestrowani
Postów: 150
Pomógł: 15
Dołączył: 18.03.2009

Ostrzeżenie: (10%)
X----


Dwa razy użyte "?
Go to the top of the page
+Quote Post
Fafu
post
Post #9





Grupa: Zarejestrowani
Postów: 243
Pomógł: 33
Dołączył: 30.01.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


TIP: backslashe
Go to the top of the page
+Quote Post
mcfreak
post
Post #10





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


to co wkońcu tu jest źle, jeden backslashe, a drugi ", btw. jak by co to jestem zielony :]
Go to the top of the page
+Quote Post
kriszna
post
Post #11





Grupa: Zarejestrowani
Postów: 36
Pomógł: 2
Dołączył: 6.07.2007
Skąd: Wola Zabierzowska

Ostrzeżenie: (0%)
-----


Zmienna $strona ma być zmienną więc poco dajesz \ przed $??
Go to the top of the page
+Quote Post
mcfreak
post
Post #12





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


bo tak mi powiedziałeś ;]?

ref
Go to the top of the page
+Quote Post
marcio
post
Post #13





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat(mcfreak @ 13.08.2009, 14:31:14 ) *
bo tak mi powiedziałeś ;]?

ref


Kolega ci napisal:


Cytat
\ dajesz przed $. Wtedy $ do zwykły znak, a nie początek zmiennej.


Go to the top of the page
+Quote Post
mcfreak
post
Post #14





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


a mógłby mi ktoś wytłumaczyć to jaśniej, jeżeli chciałbym to zrobić na przykładzie:

http://link.pl/$_POST[idprofilu]

sorry, bo tego w kursie nie było :/
Go to the top of the page
+Quote Post
Andaramuxo
post
Post #15





Grupa: Zarejestrowani
Postów: 150
Pomógł: 15
Dołączył: 18.03.2009

Ostrzeżenie: (10%)
X----


Jeżeli ma być w linku, to metoda $_GET.
Go to the top of the page
+Quote Post
mcfreak
post
Post #16





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


nie rozumiesz.. ja chcę zapisać PHP do pliku i żeby brało dane z formularza...
Go to the top of the page
+Quote Post
Fafu
post
Post #17





Grupa: Zarejestrowani
Postów: 243
Pomógł: 33
Dołączył: 30.01.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


backslashe czyli przed " dajesz \ czyli \"
przykład:
  1. $zawartosc = "<?
  2.  
  3. \$strona = \"http://######.pl/forum/profile.php?mode=viewprofile&u=$_POST[idprofilu]\"; # 229 linijka
  4. \$page = file_get_contents(\$strona);
  5.  
  6. ?>";
Go to the top of the page
+Quote Post
mcfreak
post
Post #18





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


OK czyli przed każdym $ i " \ :] Thx.
Go to the top of the page
+Quote Post
Fafu
post
Post #19





Grupa: Zarejestrowani
Postów: 243
Pomógł: 33
Dołączył: 30.01.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


lub jak ci sie nie chce to mozna tez tak:
  1. $zawartosc = '<?
  2.  
  3. $strona = "http://######.pl/forum/profile.php?mode=viewprofile&u='.$_POST[idprofilu].'";
  4. $page = file_get_contents($strona);
  5.  
  6. ?>';

To jest lepsze rozwiązanie i raczej takiego powinieneś używać tj apostrofów.
Go to the top of the page
+Quote Post
mcfreak
post
Post #20





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 30.01.2009

Ostrzeżenie: (0%)
-----


ale w powyższym sposobie będą wyskakiwać błędy, jak ma się większy kod etc. bo próbowałem wcześniej

aha, no i przed ' też mam dawać \?
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 00:04