Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] ładowanie zmiennych z tekstu
Forum PHP.pl > Forum > Przedszkole
Kredka29
Witam, potrzebuję skryptu który na podstawie wklejonego tekstu o danym szablonie będzie wyciągać z niego odpowiednie dane, i przypisywać zmiennym, np.:

Po wklejeniu
Cytat
Lista otrzymanych nagród:
5 x Złoto
17 x Srebro
21 x Brąz
Warość: 158257782 $

do textarea i kliknięciu wyślij, będę mógł korzystać ze zmiennych:
  1. <?php
  2. $złoto = 5;
  3. $srebro = 17;
  4. $brąz = 21;
  5. $wartość = 158257782;
  6. ?>


Czy ktoś może mi podać taki skrypt, lub chociaż jakoś naprowadzić?
potreb
Chyba chodzi o eval" title="Zobacz w manualu PHP" target="_manual
Kredka29
Mi nie chodzi o wyświetlanie zmiennych w zmiennych (?).

Z $_POST['tresc_pola_text_area'] powinno "wyjąć" cztery zmienne - $złoto, $srebro, $brąz i $wartość

-----------------------------
Są np. generatory wsl które to potrafią
marian2299
Spróbuj tablicą, ale chyba to co jest w textarea zawsze jest traktowane jako tekst więc może link.
zeten
Spróbuj wykorzystać do tego funkcje explode().

  1. <?php
  2. $tablica = explode(' x ', $_POST['pole_txt']);
  3. print_r($tablica);
  4. ?>


Chyba już wiesz o czym myślę?
marian2299
Wyżej mu to napisałem smile.gif.
Działa ?
Kredka29
A możecie dać jakiś mały przykład, który pobierze z
Cytat
5 x Złoto
17 x Srebro
21 x Brąz
Warość: 158257782 $

chociaż jedną zmienną, np. $wartość?

Bo niestety nie połapuję się w tych tablicach sciana.gif
zeten
  1. <?php
  2. $tablica = explode(' x ', $_POST['pole_txt']);
  3.  
  4. $zloto = $tablica['0'];
  5.  
  6. $srebro = $tablica['2'];
  7.  
  8. $braz = $tablica['4'];
  9. ?>


Jak pisałem wcześniej podejrzyj sobie tablice przy pomocy funkcji print_r($tablica).
Kredka29
Tak, tylko problem jest w tym, że jak już wyświetlę dane z tablicy, a zresztą pokażę kod:
  1. <?
  2.  
  3. $tablica = explode(' x ', $_POST['sssss']);
  4.  
  5. $zloto = $tablica['0'];
  6. $srebr1o = $tablica['1'];
  7. $srebro = $tablica['2'];
  8.  
  9. $braz = $tablica['3'];
  10.  
  11. echo "$zloto || $srebr1o || $srebro || $braz"
  12. ?>

Przy wpisaniu
Kod
5 x Złoto
175 x Srebro
25 x Brązik

Daje
Kod
5 || Złoto  175 || Srebro  25 || Brązik


Wniosek z tego taki, że oprócz " x " explode musiało by być też ustawione na entery (?)

I druga sprawa, co z tym $wartosc?
marian2299
Dajesz : echo "$zloto || $srebr1o || $srebro || $braz"
a wpisujesz 3 elementy ?
Wpisz 4 i zobacz co będzie.
Fifi209
Jeżeli ilość jest stała proponuję użyć list" title="Zobacz w manualu PHP" target="_manual i do tego explode" title="Zobacz w manualu PHP" target="_manual
zeten
  1. <?php
  2. preg_match_all('#([0-9]*) x#', $_POST['pole_txt'], $tablica);
  3.  
  4. $zloto = $tablica[1][0];
  5. $srebro = $tablica[1][1];
  6. $braz = $tablica[1][2];
  7. ?>


Poczytaj o wyrażeniach regularnych.
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.