Vilken funktion används för heltal(integer) i input-fält? Jag har ett
formulär som används för att anmäla sig till olika aktiviteter. Ett
input-fält i formuläret är till för att bjuda antal gäster som man
tar med. Man ska inte tillåta att skriva in andra tecken än siffror i
fältet. Jag har också sökt här i forumet. De träffar som jag fått
motsvarade inte det som jag sökte. Jag använder PHP. Finns det
någon som har gjort något liknande?
Endast heltal i input-fält
8 svar · 350 visningar · startad av addeweb
Det som kommer från formuläret är en sträng, så is_int() kommer inte att godkänna det som heltal.
Det går visserligen då använda is_numeric(), men det tillåter även flyttal.
Du får nog köra ett regexp:
if (preg_match("/^\\d$/", $variabel)) {
echo 'Är ett heltal';
}
ereg() är väl också ett alternativ?
danii skrev:
du menar väl
"/^**\**d$/"
Glömmer alltid bort att man behöver skriva dubbla backslash i regexpar i detta forum, för att få det på skärmen :)
addeweb skrev:
ereg() är väl också ett alternativ?
preg-funktionerna som använder PCRE anses snabbare än ereg-funktionerna som använder POSIX.
Man kan alltså inte göra nåt i stil med detta?
$tal = (int)$_POST['fält'];
if (is_int($tal))
echo "Is int";
Jag är klar med denna funktion och den fungerar perfekt!
<?php
if(!ereg("^[0-9]+$", $_POST["antalgaster"])) {
wrong("Inga andra tecken än siffrorna 0-9 är tillåtna!");
}
?>