Avatar billede sevinding Juniormester
06. juli 2013 - 11:01 Der er 6 kommentarer og
1 løsning

Undlad udtræk.

Hej.
Jeg har en tabel der indeholder et felt der hedder 'hite' hvor datatypen er decimaler. Der står som standard '0.00'
Når jeg trækker ud fra tabellen, vil jeg gerne undgå de felter der indeholder '0.00'
Jeg mener selv det er noget i den her retning:

              echo "<td align='left' width='150' valign='bottom'>";
           
            if($r['hite'] != '0.00'); else echo $r['hite'] . "\n";
       
            echo "</td>";

men det virker ikke.
Skulle der være en der kan hjælpe?
Avatar billede EveryMA Mester
06. juli 2013 - 12:15 #1
Jeg ikke en PHP-haj, men det lader da til at være forkert?

if($r['hite'] != '0.00'); else echo $r['hite'] . "\n";

Hvis hite er lig med 0.00 så udskriver den hite... Men hite er lig med 0.00?
Avatar billede sevinding Juniormester
06. juli 2013 - 12:35 #2
Ja. Den udskriver 0.00 som det er nu. Jeg indtaster eksempelvis 1.80
Det er det jeg gerne vil skrive ud, og så undlade at udskrive 0.00
Avatar billede erikjacobsen Ekspert
06. juli 2013 - 14:20 #3
Skal det så ikke bare være:

  if($r['hite'] != 0.0) { echo $r['hite'] . "\n"; }
Avatar billede skelboe Nybegynder
06. juli 2013 - 14:35 #4
Hvis du ved at $r['hite'] er en float kunne du vel bare bruge

  echo "<td align='left' width='150' valign='bottom'>";
  echo floatval($r['hite']) ? $r['hite'] : "\n";
  echo "</td>";
Avatar billede sevinding Juniormester
06. juli 2013 - 17:02 #5
Så var der muligheder nok. De virker begge to, så jeg vil da bede skelboe om at smide et svar.
Blot af nysgerrighed. Hvad er fordele og bagdele ved de to muligheder?
Avatar billede sevinding Juniormester
07. juli 2013 - 09:48 #6
skelboe.
jeg ved godt det er at udnytte situationen. men er der mulighed ved dit forslag at tilføje noget.
jeg tænker på at hvis der ikke står noget i feltet 'hite' skal der selvfølgelig ikke skrives noget ud. står der derimod eks. 180 skal dette udskrives samt automatisk tilføje eks. cm
Avatar billede skelboe Nybegynder
07. juli 2013 - 10:38 #7
echo "<td align='left' width='150' valign='bottom'>";
echo floatval($r['hite']) ? "{$r['hite']} cm" : "\n";
echo "</td>";

Der er ikke den store forskel på de 2 metoder, min er blot skrevet som en "ternary operator", og bruger "floatval" til at sikre at variablen "$r['hite']" er en float
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester