Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Identyfikator zmienną?
xSlash
post
Post #1





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 19.04.2009
Skąd: Sieradz

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


No i oto pojawiam sie znowu ja z problem... Czy zmienna moze byc identyfikatorem?


  1. <?php
  2. for($i = 0; $i < count($nadL); $i++)
  3.  
  4.  {
  5.  
  6. <input type="checkbox" id=[$i]>
  7.  
  8.  }
  9. ?>


Jak zapisac, i czy w ogole sie da zapisac zmienna jako identyfikator? Chce zeby id = $i. Czekam...

Ten post edytował xSlash 20.04.2009, 21:30:07
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
maniekl2
post
Post #2





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


Nie wiem czy o to chodzi...
  1. <?php
  2. echo '<input type="checkbox" id=" '.$i.' ">';
  3. ?>
Go to the top of the page
+Quote Post
xSlash
post
Post #3





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 19.04.2009
Skąd: Sieradz

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


Wiem, ze moja wina, ale w sumie to nie potrafie odpowiedziec sobie samemu, czy wasze propozycje dzialają... Jeszcze raz.


Mam takie cos:
 
  1. <?php
  2. $a = $tresc;  //To z czego ma usunac
  3.     $b = $i;        //To co usuwa ze $a  - PRZY CZYM NIE WIEM CO MAM TU WPISAC
  4.  
  5.     $dl_b = strlen($b);             //To rozne
  6.     $dl_a = $dl_b - strlen($a);  //pierdoly
  7.     $wytnij = substr($a, $dl_a);//od usuwania
  8.  
  9.  
  10.       echo '<table><form action="" method="POST">';
  11.        for($i = 0; $i < count($nadL); $i++)
  12.         {
  13.       echo '<tr><th><input type="checkbox" id="'.$i.'"/> ', $nadL[$i], '</th>';       //W tej linijce nie wiem jakie  ID dac checkboxowi
  14.  
  15.         }
  16.       echo '<tr><td><input type="submit" name="delete" id="delete" value="Usun"></td></tr>';
  17.       echo '</table></form>';
  18.  
  19.  
  20.       if(isset($_POST['delete']))
  21.            {
  22.             echo $wytnij;
  23.            }
  24. ?>




Wiec przyjmijmy ze mam $nadL cos takiego
[CHECKBOX]nadawca1


[CHECKBOX]nadawca2

[CHECKBOX]nadawca3

Po zaznaczeniu checkboxa od nadawcy1 $wytnij (echo $wytnij;) powinna pokazac mi tylko nadawca2 i nadawca3... nie wiem jak polaczyc teksty ($nadL) z checkboxami (id=questionmark.gif?). Pomozcie...  sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif sadsmiley02.gif wstydnis.gif

Ten post edytował xSlash 20.04.2009, 21:30:28
Go to the top of the page
+Quote Post
piotrooo89
post
Post #4


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




nie id a name.

  1. <?php
  2. echo '<input type="checkbox" name="nadawca '.$i.' ">';
  3. ?>


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@xSlash zacznij wkoncu uzywac poprawnego bbcode. dla kodu php ma to byc [php]


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
maniekl2
post
Post #6





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


Może najpierw wyjaśnij co ma w ogóle robić ten kod. W pętli występuje $nadL, ale wcześniej jej nie było. Pokaż jak wygląda ta zmienna w kodzie.

Ten post edytował maniekl2 20.04.2009, 20:58:37
Go to the top of the page
+Quote Post
blooregard
post
Post #7


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Może chodzi Ci o coś takiego:
  1. <?php
  2. <input type="checkbox" name="checkboxy[1]" />
  3. <input type="checkbox" name="checkboxy[2]" />
  4. <input type="checkbox" name="checkboxy[3]" />
  5. ?>

i w rezultacie dostaniesz z posta tablię asocjacyjną (zakładając, że zanaczony jest pierwszy i trzeci):
checkboxy {
[1] => 1
[3] => 1
}

Ten post edytował blooregard 20.04.2009, 21:03:21


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
xSlash
post
Post #8





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 19.04.2009
Skąd: Sieradz

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


@maniekl2 Masz tutaj wyjasnienie:

  1. <?php
  2. //Dzielenie tekstu w tabelki bo one sa ciagiem zapisywanie do bazy np: nad1|nad2|nad3
  3.     $nad0 = ''.$nad.'';
  4.     $tresc0 = ''.$tresc.'';
  5.     $nadL = explode('|', $nad0);
  6.     $trescL = explode('|', $tresc0);
  7. ?>


Zrobilem tak jak powiedzial piotro i wyszlo:
  1. <?php
  2. ...
  3.  
  4. $b = "nadawca".$i."";
  5.  
  6. ...
  7.  
  8. <input type="checkbox" name="nadawca'.$i.'">
  9.  
  10. ...
  11. ?>


Jednakze za kazdym razem usuwa mi "nadawca1" i za kazdym razem pokazuje "nadawca2" i "nadawca3" niezaleznie od tego, ktore zaznacze (checkbox) zeby usunelo...  sadsmiley02.gif

Ten post edytował xSlash 20.04.2009, 21:30:51
Go to the top of the page
+Quote Post
nospor
post
Post #9





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@xSlash widze iz moja delikatna sugestia splynela tylko po tobie. Moze wiec jak temat zamkne, zwrocisz na nią bardziej uwage.

jak bedziesz gotowy sie dostosowac zapraszam na PW smile.gif

edit: otwieram


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
xSlash
post
Post #10





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 19.04.2009
Skąd: Sieradz

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


Jeszcze raz sorry za nieporozumienie...

No wiec, czemu za kazdym razem usuwa mi "nadawca1" i zostawia 2 i 3? Powinno usuwac zaznaczonych przez checkbox?  dry.gif

Zastosowalem sie do zalecien piotro'a (haha.gif) i wyszlo cos takiego...

  1. <?php
  2. $a = $tresc;  //To z czego ma usunac   
  3.  
  4. $b = "nadawca".$i."";//To co usuwa ze $a  - PRZY CZYM NIE WIEM CO MAM TU WPISAC
  5.  
  6.  
  7.  
  8.     $dl_b = strlen($b);             //To rozne
  9.     $dl_a = $dl_b - strlen($a);  //pierdoly
  10.     $wytnij = substr($a, $dl_a);//od usuwania
  11.  
  12.  
  13.       echo '<table><form action="" method="POST">';
  14.        for($i = 0; $i < count($nadL); $i++)
  15.         {
  16.       echo '<tr><th><input type="checkbox" name="nadawca'.$i.'"> ', $nadL[$i], '</th>';       //W tej linijce nie wiem jakie  ID dac checkboxowi
  17.  
  18.         }
  19.       echo '<tr><td><input type="submit" name="delete" id="delete" value="Usun"></td></tr>';
  20.       echo '</table></form>';
  21.  
  22.  
  23.       if(isset($_POST['delete']))
  24.            {
  25.             echo $wytnij;
  26.            }
  27. ?>



Jednakze usuwa zawsze nadawce1 bez wzgledu czy zaznacze 1 czy 2 czy 3... checkbox. O co chodzi...? Nie wiem... Kombinowalem juz na takie srakie i owakie zmienne i ni jak nie idzie... Pomozcie...  sadsmiley02.gif



P.S. @nospor Docen to ze uzyłem poprawnego bbcode haha.gifD ^^ 

Ten post edytował xSlash 21.04.2009, 13:22:38
Go to the top of the page
+Quote Post
maniekl2
post
Post #11





Grupa: Zarejestrowani
Postów: 162
Pomógł: 29
Dołączył: 6.04.2008

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


Widzę, że nie wiesz w ogóle jak działa funkcja usuwania, a wystarczyło zerknąć w manual :/
  1. <?php
  2. $dl_b = strlen($b);             //To rozne
  3.    $dl_a = $dl_b - strlen($a);  //pierdoly
  4.    $wytnij = substr($a, $dl_a);//od usuwania
  5. ?>

zerknij Tutaj i w polu search for wpisz funkcje, które są tutaj zaprezentowane(strlen, substr) i spróbuj domyślić się czemu twój skrypt nie działa poprawnie. Po drugie całe to usuwanie nie ma połaczenia z formularzem.
I radzę ci zainteresować się funkcją "preg_replace"

Ten post edytował maniekl2 21.04.2009, 15:13:31
Go to the top of the page
+Quote Post
megawebmaster
post
Post #12





Grupa: Zarejestrowani
Postów: 143
Pomógł: 17
Dołączył: 8.11.2008
Skąd: Libiąż

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


A przy okazji - do nadawania wartości polom formularza korzysta się z atrybutu value tongue.gif No i taka mała uwaga - źle zamknięte table i from - w odwrotnej kolejności. Dodatkowo skorzystałbym z tego, że nazwałbym wszystkie pola jednakowo (dokładniej to np. "usun[]") i w value dawał co ma usuwać. Potem iteracja po tablicy $_POST['usun'] i sprawa z głowy :]

EDIT: Zła tablica biggrin.gif

Ten post edytował megawebmaster 21.04.2009, 15:10:58
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 15:39