Integer Check probleempje

Status
Niet open voor verdere reacties.

Yottz

Gebruiker
Lid geworden
28 mrt 2011
Berichten
34
Hallo,

Voor een bepaalde opdracht loop ik vast met dit stukje code:

Code:
if ((!int)$integer))
                  { if (!round($integer))
                    { print("<script language='javascript'>
                    window.alert('Fout in het invulvak.
                    Voer een getal in, dus geen letter of niks.');</script>"); }
                  }

Dit is de bedoeling:
- $integer is al ingevuld
- Een check doen of $integer 1 niet geheel getal is
- Is dat het geval, het proberen af te ronden.
- Kan dat ook niet (omdat het bijv. een letter is), geef een foutmelding.
- Als het wel een geheel getal is of het is afgerond, verder gaan met de rest van het script.

Nu is vooral (!int) mijn probleem en kreeg ik deze error:

Fatal error: Call to undefined function int() in C:\ftproot\LocalUser\##############.php on line 82

Dus heeft er iemand tips over hoe ik dit het beste aan kan pakken of welke functie ik zou moeten gebruiken om zo'n "niet-check" te doen?

Thnx,

`Yottz
 
PHP:
if ((!int)$integer))
Dit is geen controle of $integer een int is of niet. Dit stukje code probeert $integer te typecasten naar een not int. Je kan voor deze controle het beste de, door phobia genoemde, functie is_int gebruiken.
 
Ok, dus dat wordt dan "if (is_int($integer))" maar als ik wil controleren of het niet zo is, moet het dan iets als "if (!is_int($integer))" of "if (is_not_int($integer))" worden?
 
if(!is_int($int)) zo laat hij als door wat geen integer is
 
Let op!

OFF: Wel raar dat je je check zo doet, ieder zijn ding natuurlijk ;)
1/2e OFF: Integers checken op Round() haalt niets uit, maar dit is een omgekeerd statement, dus ik zwijg.
1/3e OFF: echo is sneller dan print! :thumb:
1/4e OFF: Probeer eerst de HTML pagina in een Variable te stoppen, bijvb:
Code:
$paginaCode = "";
$value = "1.56";

if(!is_int($value) && !round($value)) {
   $paginaCode .= <<< HTML  // Geen last van quotes enz. "HTML" is eigen keuze. ".=" is append to.
         <script language='javascript'>
                    window.alert('Fout in het invulvak. Voer een getal in, dus geen letter of niks.');
         </script>
    HTML;
}

echo $paginaCode;
Heb je ook minder last van dingen bewerken achteraf, omdat je rare errors krijgt in PHP zoals headers, etc, de code wordt nu steeds uitgevoerd vòòr de output.


Ik geef enkel tips, geen bezwaren!
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan