Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak zliczyc niektore dane z POSTa?
Forum PHP.pl > Forum > Przedszkole
InosU31
Witam

Mam taki maly problem i nie moge sobie za bardzo z tym poradzic...

Otoz mam formularz w ktorym wysylam kilka danych i chcialbym zliczyc tylko niektore z nich.

Przyklad:
  1. <INPUT type="text" name="user" value="costam">
  2. <INPUT type="text" name="strona" value="prawa">
  3. <INPUT type="text" name="link1" value="link1">
  4. <INPUT type="text" name="link2" value="link1">
  5. <INPUT type="text" name="link3" value="link1">
  6. <INPUT type="text" name="link4" value="link1">
  7.  


chodzi mi zeby zliczyc tylko te dane z posta w ktorych name = link1, link2 itd.
probowalem to zrobic za pomoca funkcji preg_match - porownac tylko te dane ktore chce i pozniej je zliczyc- ale cos mi nie wychodzi:/

A potrzebuje to do tego:

mam petle for ($i=0; $i < $zmienna_zliczona; $i++)

zeby nie pisac warunku jakiegos wymyslonego bo chce zeby petla wykonala sie tyle razy ile jest tych danych z posta - ale tylko tych z link... .

z gory dzieki za odp.

Pozdrawiam
wNogachSpisz
  1. <?php
  2. $link_key_list = array();
  3. foreach ( $_POST as $key => $val ) {
  4.     if ( preg_match('#^link#', $key) ) {
  5.         $link_key_list[$key] = $val;
  6.     }
  7. }
  8.  ?>
MateuszS
  1. $ilosc=5;
  2. for($i=1; $i<=$ilosc; $i++) {
  3. echo '<INPUT type="text" name="link'.$i.'" value="link1">';
  4. }
  5.  
  6. //zmienna $ilosc okresla ci ilosc linkow
InosU31
wNogachSpisz:

To dzialanie zliczy mi wszystko co wysle z formularza a ja chce tylko zliczyc niektore elementy


MateuszScirka:

ja juz mam zrobione to ile linkow ma mi wyswietlic a teraz chodzi o to by to co ja wysle formularzem zliczyc ale tylko niektore rzeczy

dzieki za zainteresowanie i wypowiedzi

moze ktos ma jeszce jakis pomysl?

Moze bardziej sprobuje wyjasnic na czym to ma polegac...

Robie sobie linki: poprzez liste rozwijana wybieram sobie ile linkow ma sie znajdowac w jednym dziale. max mozna wybrac 20. No dobra by nie bylo juz problemu ale mam jeszcze zrobione cos takiego ze podczas edycji mozna sobie usunac jakies linki lub dodac kolejne - bo czasem sie zapomni a pozniej nie trzeba wszystkiego odnowa wpisywac. i wlasnie nie wiem jak mam ustawic petle zeby mi tyle razy sie wykonala ile jest linkow - ta petla sluzy mi do dodania linkow do bazy wiec nie mam mozliwosci odczytania ich z bazy przed umieszceniem tam ich. a z drugiej strony nie walne warunku np. 1000 bo ta petla bedzie sie wykonywac troszke za dlugo;-) Probowalem kiedys to zrobic z a pomoca foreach ale cos mi tez to nie szlo:/

moze teraz ktos cos by podpowiedzial?

Pozdrawiam
MateuszS
Hmm zrozumialem ze chcesz wyciagnac ilosc wypelnionych pol, np masz wypelnionych 6/20 linkow i zwraca ci liczbe 6 z ktora cos tam robisz. Mozesz zrobic tak

  1. $c=0;
  2. for($i=1; $i<=20; $i++) {
  3. $a=array();
  4. $a[$i]=$_POST['link'.$i];
  5. if(!empty($a[$i])) {
  6. $c++;
  7. }
  8. }
  9. echo 'wypelniles '.$c.' linkow';


dostosowac ten kod wystarczylo by do wlasnych potrzeb
piotrooo89
no więc tak załóżmy że użytkownik w select'ie wybrał 5.

  1. $ile = $_POST['dane_ilosc_z_selecta'];
  2.  
  3. for ($i=1 ; $i<=$ile ; $i++)
  4. {
  5. echo '<INPUT type="text" name="link'.$i.'" value="link'.$i.'">';
  6. }


i teraz masz już utworzoną ilość inputów do wpisania linków.
maciek_nh
Jeśli dodajesz linki dynamicznie, chodzi mi że np klikasz "dodaj link" i pod spodem wskakuje ci nowe pole do dodania linka, to można ilość danych zliczyć za pomocą JS a potem wrzucić do pętli i zapisać tyle linków ile wybrałeś do bazy. Nie wiem czy Cię dobrze zrozumiałem :]
InosU31
dzieki wam za pomoc. wstyd sie przyznac ale ja przeciez mam ustalone z gory ze max moge miec 20 linkow podczas tworzenia jednego dzialu a pozniej jak dodaje nastepne linki (jest to juz osobny plik - osobny formularz itd.) to przeciez odczytuje je normalnie z bazy - nie wiem dlaczego wczesniej o tym nie pomyslalem :/ Wiec mieliscie racje - dzieki wam za to i przepraszam za zawracanie wam glowy

Pozdrawiam
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.