Tworzę formularz, który ma dwa pola wyboru tak i nie. Dodałem tak lub nie w polu mysql o nazwie Completed.

Problem, jaki mam, polega na tym, że pola wyboru pokazują haczyk, jeśli pole ma Tak lub Nie.

Tak więc w zależności od tego, co jest w polu Ukończono „Tak” lub „Nie”, pola wyboru powinny być zaznaczone lub nie.

Mój kod wygląda tak:

<input type="checkbox" name="Completed" Completed="Yes" value="<?php echo $stuff["Completed"]; ?>" <?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?> > Yes</td>

<input type="checkbox" name="Completed" Completed="No" value="<?php echo $stuff["Completed"]; ?>" <?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?> > No</td>

0
Matt 6 marzec 2012, 20:48

2 odpowiedzi

Najlepsza odpowiedź

Pola wyboru nie wydają mi się odpowiednią kontrolką dla tego typu informacji. Czy zamiast tego rozważałeś użycie przycisków radiowych? W każdym razie odpowiedź na Twoje pytanie zależy od tego, w jaki sposób przechowujesz dane w bazie danych. Jeśli jest to proste „Tak” lub „Nie”, wypróbuj coś takiego:

<input type="radio" name="Completed" value="Yes" <?php echo $stuff["Completed"] == 'Yes' ? 'checked="checked"' : ''; ?> />
2
Evernoob 6 marzec 2012, 20:59

<?php echo $stuff["Completed"] ? 'checked=" checked"' : ''; ?> zawsze zwróci true, ponieważ zaznaczysz „Tak” i „Nie”. Te wartości są prawdziwe dla php. Musisz ustawić wartości 0 lub 1 w db lub sprawdzić zrób coś takiego:

<?php echo $stuff["Completed"] == 'Yes' ? 'checked=" checked"' : ''; ?>

...

<?php echo $stuff["Completed"] == 'No' ? 'checked=" checked"' : ''; ?>

2
tonymarschall 6 marzec 2012, 20:53