webForumDet fria alternativet

Hur kolla variabel

36 svar · 324 visningar · startad av Prästen

PrästenMedlem sedan dec. 2000537 inlägg
#1

Hej, om jag har ett formulär som ska in i en databas. Men vill fösrst kolla om personen skrivit nåt i fomruläret först.
I ASP gör man typ: IF efternamn<>"" THEN.
I PHP kan man ju inte kolla en variabel som inte finns(om han inte skrivit in nåt), vilket man kan göra i ASP. Hur gör man i PHP?.

Gislaved.netMedlem sedan juni 20001 521 inlägg
#2
<?
if (!$efternamn){
 echo "Fel!";
}

------------------
Gislaved.net
"Tänk på vad du säger så att du inte säger vad du tänker."

ChavezMedlem sedan maj 20001 953 inlägg
#3

Eller såhär:

if (!isset($efternamn)){
echo "Du skrev minsann inget efternamn";
}

------------------
<A HREF="mailto:chavez@post.netlink.se">Mvh Chavez
</A> UIN: 73975020

[Redigerat av Chavez den 17 feb 2001]

SimpaMedlem sedan aug. 20002 992 inlägg
#4

Gislaveds sätt verkar ju lättast, vad är skilnaden?

------------------
Waaaazzzzzzzzzzzzzup!?!

herqMedlem sedan aug. 2000238 inlägg
#5

Ingen skillnad förutom att Chavez använder sig av funktionen isset(); -kollar ifall en variabel är satt. Ganska (mycket) onödig funktion egentligen, (tycker jag). Rätta mig om jag har fel ;)

BatboyMedlem sedan jan. 20001 006 inlägg
#6

Du har fel..

Prova skillnaden mellan dessa.

<?
$test = "0";
if ($test) {
echo "test är lika med noll";
}
?>

Och..

<?
$test = "0";
if (isset($test)) {
echo "test är lika med noll";
}
?>

/j

------------------
R6

herqMedlem sedan aug. 2000238 inlägg
#7

tycker fortfarande isset() är ganska onödigt ;)

U2KMedlem sedan jan. 2000224 inlägg
#8

Jo, och för att få lite snyggare felmeddelanden lägger man in lite enkel Java skript..

<? if(!$efternamn)
{?>
<script language="Javascript">
{
history.go(-1);
alert('Du var inte bäst på att skriva in ett efternamn :)');
}
</script>
<? 
}
?>

OBS!.. Jag vet ej om den funkar.. kan ha skrivit fel någonstans..

------------------
//Du ska inte slänga vatten över ån.
PHP vs ASP (10 - 0)

[Redigerat av U2K den 17 feb 2001]

PrästenMedlem sedan dec. 2000537 inlägg
#9

Vad betyder ! tecknet?.

BatboyMedlem sedan jan. 20001 006 inlägg
#10
if ($str = "666") {
// Om $str är lika med 666
};

if ($str != "666") {
// Om $str INTE är lika med 666
};

/j

------------------
R6

spangoMedlem sedan juni 20008 205 inlägg
#11

Men batboy...

if($str = "666")...

= är ju förstås inte motsatsen till !=. Det ska ju vara ==, men det visste du väl? :)

------------------
Tror du på ett liv efter födseln?

PrästenMedlem sedan dec. 2000537 inlägg
#12

Jag provade med if (!$fornamn). Men den kollar ju bara
om det finns något i variabeln och så får man ett felmeddelande
när variabeln inte är satt, men variabeln blir ju inte satt om
surfaren inte skriver något i formuläret därför får man felmeddelandet..
isset($fornamn) kollar ju bara om variabeln är satt men inte om det
finns något i den, därför får man felmeddelande då också.
Alltså måste man använda båda checkningarna för att få en ordentlig
koll. koden blir följande om man ska kolla 2 variabler.

if (isset($fornamnet)&&isset($efternamnet)&&$fornamnet&&$efternamnet)

Jag menar hallo, i ASP gör man bara IF fornamnet<>"" AND efternamnet<>""
Finns verkligen inget liknande i PHP?.

BatboyMedlem sedan jan. 20001 006 inlägg
#13

Men batboy...

Ahh.. jag skriver fortare än jag tänker ibland.

/j

------------------
R6

herqMedlem sedan aug. 2000238 inlägg
#14

du kanske vill ha det så här?:

if ($förnamn == "" &#0124;&#0124; $efternamn == "") { // true ifall personen inte skrivit något i fälten förnamn och efternamn
echo "du glömde fylla i ditt namn"; 
}

[Redigerat av herq den 18 feb 2001]

PrästenMedlem sedan dec. 2000537 inlägg
#15

nä du kompis.
Det funkade inte.
Det blir "undefined variable".
den checkar inte om en variabel existerar, bara
om det finns något i den, därför får man felmeddelande om variabeln inte existerar pga surfaren inte skrivit in något. Det går ju inte att
kolla en variabel som inte finns.

nicclasMedlem sedan feb. 20001 050 inlägg
#16

Que, herqs kod fungerar fint. Hur har du konfigurerat ditt PHP :q (Sen kan man ju undra hur PHP tolkar åäö i koden, men det är ju en annan fråga ;) )

/nicclas - www.nyhetsrubriker.com

PrästenMedlem sedan dec. 2000537 inlägg
#17

Konfigurera?

AlMedlem sedan jan. 200122 inlägg
#18

Herq, du slarvade lite, och för att inte förvirra Prästen mer:

// true ifall personen inte skrivit något i fälten förnamn och efternamn

...i fältet förnamn ELLER efternamn skall det vara

[Redigerat av Al den 19 feb 2001]

spangoMedlem sedan juni 20008 205 inlägg
#19

Sen kan man ju undra hur PHP tolkar åäö i koden, men det är ju en annan fråga

Alldeles utmärkt, enligt manualen...

------------------
Tror du på ett liv efter födseln?

herqMedlem sedan aug. 2000238 inlägg
#20

ooops, självklart ;) vilken tur att du såg det

129 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)