[php] Probleem met wegschrijven checkboxwaarden in DB

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Daar hebben we het volgende probleem. Ik heb de volgende code die ik gebruik om een checkbox waarde uit een Db te halen.

code:
1
2
3
4
5
6
7
8
if ($row->ma == "")
{
echo "<input name=\"ma\" type=\"checkbox\" value=\"ma\" >";
}
else
{
echo "<input name=\"ma\" type=\"checkbox\" value=\"ma\" checked>";
}

Als het veld ma leeg is moet hij een lege checkbox weergeven en als dit veld wel een waarde heeft moet hij een gecheckte checkbox weergeven. Dit gaat goed. B)

Maar als ik een lege checkbox aanvink bijv. ma dan moet hij een bepaalde waarde neerzetten in de database. Na het submiten wordt de volgende code uitgevoerd:
code:
1
2
3
4
5
if ($ma)
{
$sql = "UPDATE klantwk SET ma = 'x' WHERE klant ='$klant' AND wk = '$wk'";
mysql_query ($sql) or die(mysql_error());
}


wat is er fout aan??? De waarden klant en wk worden dmv een hidden veld meegestuurd. :/

Acties:
  • 0 Henk 'm!

  • Johnny
  • Registratie: December 2001
  • Laatst online: 14:39

Johnny

ondergewaardeerde internetguru

doe eens echo $sql; en probeer die query uit te voeren in PHPMyAdmin of iets dergelijks. Werkt het dan wel?

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Acties:
  • 0 Henk 'm!

  • Roa
  • Registratie: December 2002
  • Laatst online: 03-07-2024

Roa

Mkay,

1. Wat is nu eigenlijk het probleem? Wat komt niet in de database aan?
2. gebruik liever [ php ] ipv [ code ]
3. Idd wat Johnny zegt (edit)

[ Voor 12% gewijzigd door Roa op 20-07-2004 12:54 ]

Research is what I'm doing when I don't know what I'm doing.


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Wil je die AND in je UPDATE ff vervangen door een komma, en daarna wat tijd doorbrengen op deze sites?
www.sqlcourse.com
www.sqlcourse2.com

Whoeps, fout gekeken, het is nog vroeg. B)

We hebben dus meer info nodig. :P

[ Voor 25% gewijzigd door NMe op 20-07-2004 13:01 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • Roa
  • Registratie: December 2002
  • Laatst online: 03-07-2024

Roa

NMe84 schreef op 20 juli 2004 @ 12:56:
Wil je die AND in je UPDATE ff vervangen door een komma, en daarna wat tijd doorbrengen op deze sites?
www.sqlcourse.com
www.sqlcourse2.com
Hmm...dat had ik eigenlijk wel moeten zien :|

Research is what I'm doing when I don't know what I'm doing.


Acties:
  • 0 Henk 'm!

  • nescafe
  • Registratie: Januari 2001
  • Laatst online: 03:54
NMe84 schreef op 20 juli 2004 @ 12:56:
Wil je die AND in je UPDATE ff vervangen door een komma
Sorry, dit begrijp ik niet. Kun je dit toelichten?Oops, te snel gereageerd B)

ontopic:
- Wat Johnny zegt :)
- Welk datatype heeft veld 'ma'? Kun je hier niet beter een boolean/bit van maken? In het voorbeeld lijkt het erop dat dit veld twee statussen kent: Aan/ja en Uit/nee.

* nescafe gooit een emmer water over Roa :+

[ Voor 46% gewijzigd door nescafe op 20-07-2004 13:03 ]

* Barca zweert ook bij fixedsys... althans bij mIRC de rest is comic sans


Acties:
  • 0 Henk 'm!

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 19-09 09:59
NMe84 schreef op 20 juli 2004 @ 12:56:
Wil je die AND in je UPDATE ff vervangen door een komma, en daarna wat tijd doorbrengen op deze sites?
www.sqlcourse.com
www.sqlcourse2.com
Wat is er mis met die AND?

lama ;)

[ Voor 6% gewijzigd door zeroxcool op 20-07-2004 13:00 ]

zeroxcool.net - curity.eu


Acties:
  • 0 Henk 'm!

Verwijderd

Kuch die AND mag daar idd gewoon staan want hij staat in de WHERE clause..

[flame]
Wie moet er nu naar die site toe?

Modbreak:
Laten we het maar vriendelijk houden :)

[ Voor 27% gewijzigd door gorgi_19 op 20-07-2004 13:09 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb het veld gewoon als datatype varchar staan.
Maar waarom werkt die query niet.

Als ma een waarde heeft, en dat heeft ie toch als checkbox aanstaat(?), dan moet ie een waarde 'x' in de database zetten waar klant = $klant en waar wk= $wk.

Als je dan deze waardes op haald zie het 1e deel van mijn vorige post moet ie normaal gesproken de gecheckte checkbox laten zien toch?

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 20 juli 2004 @ 13:09:
ik heb het veld gewoon als datatype varchar staan.
Maar waarom werkt die query niet.

Als ma een waarde heeft, en dat heeft ie toch als checkbox aanstaat(?), dan moet ie een waarde 'x' in de database zetten waar klant = $klant en waar wk= $wk.

Als je dan deze waardes op haald zie het 1e deel van mijn vorige post moet ie normaal gesproken de gecheckte checkbox laten zien toch?
$ma heeft alleen een waarde als je die toekent vanuit de $_POST array. Ik neem aan dat je dat doet. Verder denk ik dat je je controle beter kan doen met
PHP:
1
if (isset($_POST["ma"]))
puur omdat $ma geen boolean variabele is, en in sommige gevallen niet eens bestaat.
Verwijderd schreef op 20 juli 2004 @ 13:09:
Als je dan deze waardes op haald zie het 1e deel van mijn vorige post moet ie normaal gesproken de gecheckte checkbox laten zien toch?
Misschien een gekke vraag, maar haal je eerst de gegevens op, of doe je eerst die update? ;)

[ Voor 20% gewijzigd door NMe op 20-07-2004 13:15 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • glashio
  • Registratie: Oktober 2001
  • Laatst online: 18-09 10:13

glashio

C64 > AMIGA > PC

Inderdaad NMe84 :)

Controleer ofdat in je php.ini
  • register_globals = Off (default)
Op off staat.
Resource

> Google Certified Searcher
> Make users so committed to Google that it would be painful to leave
> C64 Gospel
> [SjoQ] = SjoQing


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik haal eerst gegevens op.
ik heb de register globals al op off staan.

Hoe werkt dat precies met een bollean waarde wegschrijven dan?
Hier ben ik nog niet echt bekend mee.

Acties:
  • 0 Henk 'm!

  • Banpei
  • Registratie: Juli 2001
  • Laatst online: 25-10-2022

Banpei

Hachiroku on this touge?

Verwijderd schreef op 20 juli 2004 @ 15:31:
ik haal eerst gegevens op.
ik heb de register globals al op off staan.
Als je register globals al op off staat zal ie dus niet automagisch $ma als variabele kennen. Dat moet je dus doen dmv $_POST of $_GET oid. Daarnaast is het idd aan te raden om iets meer controle te doen behalve alleen controleren of een variabele naam bestaat.

[ Voor 11% gewijzigd door Banpei op 20-07-2004 17:06 ]

AE86 gevonden! | So what I thought I'd do was, I'd pretend to be one of those deaf-mutes.


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 20 juli 2004 @ 15:31:
ik haal eerst gegevens op.
Als je éérst de gegevens ophaalt uit de database, en daarna pas die database update, dan update je toch zeker pas nadat de dingen al weergegeven zijn? Dan is het toch logisch dat die checkbox niet goed is? Voer gewoon eerst die update uit, en haal daarna pas de waarden op uit de database...

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1