update

Status
Niet open voor verdere reacties.

HenkRog

Gebruiker
Lid geworden
9 dec 2008
Berichten
70
Hallo,

veronderstel volgende update statement:
PHP:
$update = "UPDATE TABLE SET 
		TsString = '" . $string . "', 
		TnNumber = '" . $number . "' 
		WHERE TnUN = " . $_POST["txtTableUN"];

$result = mysql_query($update);
Dit werkt, maar ik heb het probleem dat wanneer $number leeg is er in de databank 0 wordt opgeslaan. Hoe kan ik ervoor zorgen dat in dat geval in de databank niks wordt opgeslagen (anders kan men denken dat men 0 ingegeven heeft)?
 
Laatst bewerkt door een moderator:
Waarschijnlijk heb je dat veld op het type INT staan.

Hierdoor wordt bij default als leeg iets een 0 opgeslagen.
 
Wat ik zo gauw kan bedenken niet.

Heeft een gebruiker de mogelijkheid daar 0 in te vullen dan?
Als dat niet zo is dan kun je gewoon die 0 afvangen in je code
PHP:
if($row['tnNumber'] != 0) {
  echo $row['tnNumber'];
}
 
Je kunt de optie NULL aanzetten als je de structuur wijzigt.
Daarna moet je zorgen dat je in je query aan het veld ook NULL meegeeft in PHP.

EDIT: dus zo ->

PHP:
$update = "UPDATE TABLE SET 
        TsString = '" . $string . "', 
        TnNumber = NULL 
        WHERE TnUN = " . $_POST["txtTableUN"];
 
$result = mysql_query($update);
 
Dat wil dan zeggen dat ik alle integers die NULL mogen zijn altijd moet controleren, en als ze leeg zijn, hen zelf de waarde NULL geven.

Of bestaat daar toevallig een functie voor?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan