PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Checkboxen _anzeigen_ (http://www.selfphp.de/forum/showthread.php?t=4245)

Marilu 09.05.2003 15:00:26

Checkboxen _anzeigen_
 
Hi *.*

ich möchte gerne ein J/N - Feld einer DB auf einer HTML-Seite wie eine Checkbox anzeigen (also nicht im Formular).

Also die umgekehrte Reihenfolge, nicht Checkbox setzen und in DB speichern.

Gibt's da was?

Progman 09.05.2003 16:06:15

<input type="check" readonly="readonly" checked="checked" />

Das dann z.B. bei einer If-Abfrage ausgeben

sourcecode 09.05.2003 16:16:28

1) der typ heißt "checkbox"
2) readonly gibt es bei checkbox nicht, nur bei textarea und input type=text
3) es reicht, wenn "checked" einzeln steht

(zumindest bei meinem browser so)

also:

<?php
// Datenbankabfrage => Je nach Ergebnis der Datenbankabfrage wird $checked der Inhalt "checked" zugewiesen oder es bleibt leer
echo "<input type="checkbox" $checked>";
?>

Marilu 09.05.2003 17:12:22

Zitat:

Original geschrieben von sourcecode
1) der typ heißt "checkbox"
2) readonly gibt es bei checkbox nicht, nur bei textarea und input type=text
3) es reicht, wenn "checked" einzeln steht

echo "<input type="checkbox" $checked>";

Habe ich getestet:

1) - 3): Soweit OK, aber:

Der "checked"-Haken in der Checkbox läßt sich an-/ausschalten. Hier fehlt mir das "readonly". Gibt's dafür einen Workaround?

sourcecode 09.05.2003 17:19:47

Als Workaround fällt mir da jetzt Javascript ein (setzt natürlich vorraus, dass der Nutzer es aktiviert hat)

<input type=checkbox onClick='return false'>

außerdem kannst du es noch weiter verschönern, wenn du auch nicht willst, dass diese linie drumherum angezeigt wird, wenn jemand darauf klickt:

<input type=checkbox onClick='return false' onFocus='this.blur()'>

Matt 09.05.2003 17:22:35

noch leichter:
du hast das feld "activated" in der db, das ist jetzt 'j' oder 'n'
dann machst einfach:

select if(activated='n','checked=''','checked='checked'') as checksplit from tabelle

dann hast du in dem feld checksplit entweder checked='' oder checked='checked' das fügst du dann einfach ein

Marilu 09.05.2003 17:49:59

Zitat:

Original geschrieben von sourcecode
[
<input type=checkbox onClick='return false'>

außerdem kannst du es noch weiter verschönern, wenn du auch nicht willst, dass diese linie drumherum angezeigt wird, wenn jemand darauf klickt:

<input type=checkbox onClick='return false' onFocus='this.blur()'>
Danke, das hilft mir weiter.

Marilu 09.05.2003 17:52:13

Zitat:

Original geschrieben von Matt

select if(activated='n','checked=''','checked='checked'') as checksplit from tabelle

dann hast du in dem feld checksplit entweder checked='' oder checked='checked' das fügst du dann einfach ein
Habe ich probiert, aber dann kann ich den Haken immer noch "ausschalten".

Aber diese Lösung hilft mir bei einem anderen Problem weiter.

Vielen Dank für die Tips.

c4 09.05.2003 18:19:22

Es gibt doch auch disabled. Also <input type="checkbox" disabled>

sourcecode 09.05.2003 18:35:42

oh, cool. man lernt doch immer wieder dazu. funktioniert auch bei select und input type=radio


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:15:37 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.