Toon posts:

[asp] leeg veld = niet leeg?

Pagina: 1
Acties:
  • 192 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik heb een klein probleem, ik heb deze If statement
code:
1
2
3
4
if NOT ISNULL(email) then 
Response.write("<a href=mailto:" & (email) & ">[img]../image/mail.gif[/img]</A> ")

end if


Dus als iemand zijn e-mail adres heeft ingevuld in mijn database krijgt hij een extra icoontje bij zijn info. Geen mail adres is dus geen icoon. Nou geeft hij soms het icoontje wel terwijl het veld email in de database WEL leeg is!? Iemand enig idee hoe ik dit kan opvangen?

---
sorry foutje, je hebt gelijk, dat was nog even een probeersel
----

[ Voor 17% gewijzigd door Verwijderd op 18-01-2003 14:19 ]


  • Sjnirk
  • Registratie: Maart 2001
  • Laatst online: 27-03-2025

Sjnirk

Hie vrieve

Misschien eerst checken voor een @ in het veld, dan weet je zeker of het is ingevuld of niet

Bikkelen gebeurt pas na 2:00


Verwijderd

code:
1
if NOT ISNULL(email) OR (email)="" then

Hier zeg jij dus:
als NIET NUL (email) OF (email) IS LEEG dan
resultaat...altijd true ;)

Verwijderd

Topicstarter
uh ja dat kan ook, heb je een voorbeeld hoe ik dit kan checken?

  • Sjnirk
  • Registratie: Maart 2001
  • Laatst online: 27-03-2025

Sjnirk

Hie vrieve

Verwijderd schreef op 18 januari 2003 @ 14:18:
code:
1
if NOT ISNULL(email) OR (email)="" then

Hier zeg jij dus:
als NIET NUL (email) OF (email) IS LEEG dan
resultaat...altijd true ;)
idd, had ik nog niet gezien, gewoon de not weghalen, dan zou ie moeten werken

[ Voor 10% gewijzigd door Sjnirk op 18-01-2003 14:21 ]

Bikkelen gebeurt pas na 2:00


Verwijderd

Topicstarter
Verwijderd schreef op 18 January 2003 @ 14:18:
uh ja dat kan ook, heb je een voorbeeld hoe ik dit kan checken?
-----
slindenau je had gelijk, ik heb het even veranderd, was inderdaad niet goed, was even een test van mezelf daarstraks, srry
-----

Verwijderd

je gebruikt VBscript is doe het altijd via JS en dit gaat altijd 100% goed...

if(!String(source) == "" && !String(source) == "null")
{
Hier de code als hij niet leeg is
}

Maar goed hier heb je weinig aan... Heb je al wat testjes gedaan met Response.Write(String(email)) om te kijken wat de waarde nou echt is...?!!

  • MMUilwijk
  • Registratie: Oktober 2001
  • Laatst online: 21:44
Verwijderd schreef op 18 januari 2003 @ 14:18:
code:
1
if NOT ISNULL(email) OR (email)="" then

Hier zeg jij dus:
als NIET NUL (email) OF (email) IS LEEG dan
resultaat...altijd true ;)
If NOT ISNULL (email) OR (email) <> ""

Zo check je of email een waarde heeft....(dacht ik)

[ Voor 6% gewijzigd door MMUilwijk op 18-01-2003 14:23 ]

Everytime I suffer I become a better man because of it


Verwijderd

Topicstarter
uhm ja nou als ik dus op het icoon klik, opent hij het email programma en daar staat gewoon niets in het veld email. Dus de uitkomst is echt leeg

Verwijderd

http://www.vanerve.nl/users/sebas/slindenau_test.asp
ASP:
1
2
3
4
5
6
7
<%
if email = null OR email = "" then
Response.Write "Email is nul"
else
Response.Write "Email bevat de waarde: " & email
end if
%>

http://www.vanerve.nl/users/sebas/slindenau_test2.asp
ASP:
1
2
3
4
5
6
7
8
<%
email="slindenau@home.nl"
if email = null OR email = "" then
Response.Write "Email is nul"
else
Response.Write "Email bevat de waarde: " & email
end if
%>

[ Voor 43% gewijzigd door Verwijderd op 18-01-2003 14:33 ]


Verwijderd

Topicstarter
oke ik heb de eerste test uitgevoerd, ik krijg dit

Email bevat de waarde:

Er staat dus niets achter, zoals ik dus zei, hij is leeg maar toch ook niet, hoe kan dat dan!?

Verwijderd

maak er dan eens dit van:
code:
1
if email = null OR email = " " then

Verwijderd

Topicstarter
zelfde uitkomst

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 25-08 13:24

gorgi_19

Kruimeltjes zijn weer op :9

null != vbscript. Hier heet het Nothing.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
dus nothing invullen?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 25-08 13:24

gorgi_19

Kruimeltjes zijn weer op :9

Ik geloof:
ASP:
1
If email Is Nothing then

[ Voor 5% gewijzigd door gorgi_19 op 18-01-2003 14:58 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 22-08 13:56
if instr(email,"@") = 0 OR instr(email,".") = 0 then
bla
end if

Verwijderd

Topicstarter
bij de laatste oplossing krijg ik weer dezelde uitkomst!

bij de oplossing van gorgi heb ik (email) en ("email") geprobeerd, maar dit werkt helemaal niet..

[ Voor 48% gewijzigd door Verwijderd op 18-01-2003 15:03 ]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

mabit:
if(!String(source) == "" && !String(source) == "null")
offtopic:
euh, da's niet helemaal correct, als ik de precedence van de operators goed heb.
code:
1
!a == b
betekent: "inverteer a bitwise en vergelijk het resultaat met b"
code:
1
! ( a == b )
betekent: "inverteer het resultaat van 'vergelijk a met b, true als gelijk, false wanneer ongelijk'" wat dus hetzelfde is als
code:
1
a != b
wat "vergelijk a met b, false als gelijk, true als ongelijk" betekent.
</ot>

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • MMUilwijk
  • Registratie: Oktober 2001
  • Laatst online: 21:44
misschien is het handig om zelf wat uit te gaan zoeken ipv voor elk probleem dit forum te gebruiken...Ik zie in je post dat je erg veel problemen met ASP hebt, waarvan sommige zeker basic zijn...
www.aspin.net, www.google.nl etc. zijn erg nuttig !

Everytime I suffer I become a better man because of it


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 25-08 13:24

gorgi_19

Kruimeltjes zijn weer op :9

* gorgi_19 denkt dat TS moeilijk doet..
Laat een veld in de db nooit null zijn. Geeft het een default waarde van niks (dus '')
Controleer vervolgens:
ASP:
1
If email = "" then

Hoef je ook niet te controleren op null, of wat dan ook, want dat is die per definitie toch niet.
Verwijderd schreef op 18 January 2003 @ 14:07:
code:
1
2
3
4
5
if NOT ISNULL(email) then 
Response.write("<a href=mailto:" & (email) & "> &_
[img]../image/mail.gif[/img]</A> ")

end if
Mag ik hieruit concluderen dat MyRecordset een recordset is, waar geen emailveld in staat? :?

[ Voor 54% gewijzigd door gorgi_19 op 18-01-2003 15:18 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

http://www.vanerve.nl/users/sebas/slindenau_test3.asp
code:
1
2
3
4
5
6
7
8
<%
email="ditisgeenemail"
if instr(email,"@") = 0 OR instr(email,".") = 0 then
Response.Write "De variabele email bevat geen email adres."
else
Response.Write "De variabele email bevat hetvolgende email adres: " & email
end if
%>

http://www.vanerve.nl/users/sebas/slindenau_test4.asp
code:
1
2
3
4
5
6
7
8
<%
email="slindenau@home.nl"
if instr(email,"@") = 0 OR instr(email,".") = 0 then
Response.Write "De variabele email bevat geen email adres."
else
Response.Write "De variabele email bevat hetvolgende email adres: " & email
end if
%>

met dank aan PhoneTech

Check ook http://www.w3schools.com/asp es ;)

[ Voor 44% gewijzigd door Verwijderd op 18-01-2003 15:49 ]


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
IsNull werkt alleen als de variable een null waarde bevat. dus je doet bijv Dim bla en verder niets, dan zal IsNull( bla ) true returned.
Zodra je bla = "" doet bevat bla een waarde, namelijk een string van lengte 0, en is dus niet null meer.
Je recordset returned of "NULL" als string of "" als de recordleeg is, dus een IsNull check is zinloos. :p

Len( bla ) wordt ook vaak gebruikt.

  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Volgens mij is de oplossing toch al lang gegeven?

ASP.NET Visual Basic:
1
2
3
4
5
6
7
<%
If IsNull(email) Or email = "" Then
  Response.Write "Email is niet ingevuld"
Else
  Response.Write "Email bevat de waarde: " & email
End If
%>


Maar als je in de database het veld email op NOT NULL zet, dan hoef je alleen op email ="" te controleren.

  • Mart!
  • Registratie: Februari 2000
  • Laatst online: 23-08 14:17
Snelle check die ik vaak gebruik:

ASP:
1
2
3
If trim(email & "") <> "" Then
  'doe je ding
End If
Werkt zowel voor null-values als lege string als string gevuld met spaties (bijv. bij mssql char)

[ Voor 10% gewijzigd door Mart! op 19-01-2003 12:34 ]

Pagina: 1