Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]input check checked="checked"
neo1986kk
post
Post #1





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


No i wszystko proste, ale:

1. W bazie mam na przykład:

jedzenie:
jajko,
barszcz,
sałata,
kapusta

oddzielone przecinkami, a chce zrobić edycje tego poprzez wlasnie input check i domyslam sie ze exploduje przez przecinek ale co dalej?

Dokladnie chodzi o to ze jest w bazie zapisane jajko, barszcz, salata, kapusta i do tego napisać formularz do edycji, że na przyklad komuś się już nie podoba jajko i chcialby to odznaczyć to wydaje mi sie ze coś na tej zasadzie

jezeli eksplodowany przez przecinek jajko = jajko to <input type="check" name="jedzenie[]" (no i jeśli tu label jest jajko ) to cheked="checked"

problem w tym ze nie wiem jak to przełożyc na php, dokladnie to np na fotce jest cos takiego do edycji hobby,zainteresowan itd...

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
neo1986kk
post
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


no to rozumiem już dlaczego z przypisaniem mi działało - dlatego, to nie ma żadnego wpływu na mojego ifa.
Domyślam się też, że skoro nie działa na if=='' to znaczy, że gdzieś wyżej nie jest to przypisane lub nie wiem jak to wydobyć, dlatego zwracam się z prośbą o pomoc

p.s. czyli wyglada na to że zmienna $skladnik jest bez wartości, chociaż echo $skladnik wyświetla na monitorze: salata.

Dziwi mnie to, że jeśli napiszę ręczniem $skladnik='salata' to wtedy pętla if $skladnik=='salata' zwraca true.


dobra już do tego doszedłem, powinno być (if $skladnik==' salata') ze spacją, ale teraz ma jeszcze inny problem:
  1.  
  2.  
  3. $i=0;
  4. $jedzonko_e= explode(",", $jedzenie);
  5. foreach ($jedzonko as $skladniki=>$skladnik)
  6. {
  7. $skladnika[$i]=$skladnik;
  8. echo $skladnika[$i];
  9. $i=$i+1;
  10. }?>


no i jest wszystko fajnie przypisane ale na tym muszę zakończyć pętlę, a teraz chciałbym to wstawić w checkboxa:

  1. <input type="checkbox" name="jedzenie[]" value="jajko" id="id_jajko"
  2. <? if(($skladnika)=='jajko') echo 'checked="checked"';?>// wydaje mi się, że tu powinienem napisać if ($skladnika[$i] =='jajko') echo 'checked="checked"'
  3. // czyli muszę zrobić pętle for dla rosnącego i. dla jednego takiego checkboxa to jeszcze ujdzie ale dla kilkunastu to bede to pisał pół roku.
  4. /><label for="id_jajko">jajko</label><br>


Odnosząc sie do mojej adnotacji, czy jest możliwość jakiegoś przeskoczenia tego, poprostu odpowiedź powinna być na pytanie: Jeśli istnieje taka zmienna $skladnik[] w której znajduje się słowo 'jajko'... a nie Jeśli, w którymś z $składnik[$i] znajduje sie słowo jajko to checked=checked..

bo tera pzostaje utworzyc petle

  1. for (i=0; i<$liczba_elementow_tablicy; i++)
  2. {
  3. if(($skladnika[$i])=='jajko') echo 'checked="checked"';
  4. }
  5.  


No to teraz muszę napisać dla każdego checkboxa... bez sensu troche...

Ten post edytował neo1986kk 27.04.2010, 12:27:54
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 18:28