[asp/sql]inserted, uitlezen niet goed

Pagina: 1
Acties:

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 16:59
Hoi, ik heb me nu toch echt een super vaag probleem waar ik niet uitkom:

Een gebruiker kan zijn/haar naam, adres en woonplaats invoeren in een form.
Adres is opgedeeld in: Adres Letters | Adres Cijfers.
De gebruiker submit de data, wordt gecheckt, wordt in de db gestopt en op een andere pagina weer uitgelezen.

In de check pagina staat de bijv. de volgende code:
ASP:
1
2
3
4
5
6
7
8
    if not straatnummer = "select" then 
        frmStraatnummer = request.form("straatnummer")
        if not Len(frmStraatnummer) = Null then
            frmStraatNummer = replace(frmStraatNummer, "'", "''")
        end if
        if Len(frmStraatNummer) > 9 then
             frmStraatNummer = Left(frmStraatNummer, 9)
        end if


Als in het form Cijfers gewoon zo: 12 ingevuld wordt gaat het goed. Wordt die 12 bijvoorbeeld 12A, dan gebeurt er het volgende:
- geen error tijdens het inserten
- alle andere data wordt netjes erin gestopt

Het datatype van straatnummer in de MS SQL DB is een simpele varchar.

Het probleem is dus duidelijk te pinpointen lijkt me (die A) maar ik zie niet in waarom deze niet uitgelezen wordt. Of uberhaupt geinsert in de DB.

Iemand een idee?

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

't Lijkt me relevant om de code waarmee je de insert doet hier te posten, want anders wordt het gokken, vrees ik. Het lijkt me dat je wel moet kunnen checken of de insert heeft plaatsgevonden via de SQL Server client tools.

Overigens zal de Len() van een string nooit Null zijn, hoogstens 0.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Bestaat Null trouwens in VBSCript? Moet dit niet Nothing zijn? En moet je deze vergelijken niet met IS ?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Zoveel vragen, zoveel antwoorden ;)
gorgi_19 schreef op 26 november 2002 @ 12:18:
Bestaat Null trouwens in VBSCript?
Null bestaat voor niet geinitialiseerde variabelen:
http://msdn.microsoft.com...ript56/html/vskeynull.asp
Moet dit niet Nothing zijn?
Nothing is om objecten expliciet te vernielen: http://msdn.microsoft.com...t56/html/vskeynothing.asp
En moet je deze vergelijken niet met IS ?
Nee, dat is SQL:
code:
1
2
3
SELECT *
FROM tabel
WHERE kolom IS Null

Maar er is wel een IsNull() functie, om niet geinitialiseerde variabelen te testen: http://msdn.microsoft.com...pt56/html/vsfctIsNull.asp

Verwarrend is het wel eigenlijk ... 8)7

[ Voor 1% gewijzigd door Verwijderd op 26-11-2002 13:52 . Reden: URL gefixd ]


  • Morpheus_at_work
  • Registratie: December 2000
  • Laatst online: 00:01
en als je 121 invult gaat dat wel goed ?
is het geen lengte van je kolom probleem ?

Canon R6 MARK III, 35mm 1.4 VCM, 50mm 1.4 VCM , 85mm 1.4 VCM , 17-35mm 1.8, 28-70 1.8 , 24-105 1.8 70-200 f2.8


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Deze code geeft geen aanleiding om wat dan ook van af te leiden.
Behalve dan dat je er vage dingen doet die niets met jouw "probleem" te maken hebben.

Je spreekt over uitlezen, maar waaruit?
Je spreekt over alle andere data, maar welke data is dat dan? Want een insert gaat in z'n geheel goed of niet. Niet een paar velden wel en eentje niet.
Je spreekt over inserten, maar waar doe je dat dan?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Vaag allemaal.. Gelukkig dat ze dat in VB.Net er lichtelijk uit gesloopt hebben en het wat eenvoudiger hebben gemaakt.. :)

Dank je wel voor de uitleg.. :)

[ Voor 3% gewijzigd door gorgi_19 op 26-11-2002 13:48 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Verwijderd schreef op 26 November 2002 @ 12:14:
Overigens zal de Len() van een string nooit Null zijn, hoogstens 0.
Tenzij de string NULL is afaik.

Today's subliminal thought is:


Verwijderd

Annie schreef op 26 November 2002 @ 14:00:
[...]

Tenzij de string NULL is afaik.
Check! http://msdn.microsoft.com...cript56/html/vsfctlen.asp .... heel goed opgelet Annie!
offtopic:
Long time no see in /14 ... toch leuk dat je nog weleens lurkt :)

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Jongens (en meisjes?) dit gaat compleet off topic. Laat de topic starter toch eerst eens verhelderen. Die heb ik sinds het begin hier niet meer gezien.

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 09-01 11:25

D2k

Goodielover schreef op 26 November 2002 @ 16:35:
Jongens (en meisjes?) dit gaat compleet off topic. Laat de topic starter toch eerst eens verhelderen. Die heb ik sinds het begin hier niet meer gezien.

mogen degenen met de titel "(lite)mod" P&W daar over oordelen over dat offtopic?
dit soort reply's is SM/topicreports voor en hoeft niet in een thread. danku
[/offtopic]

Doet iets met Cloud (MS/IBM)


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

Wat gaat hier offtopic aan? We vallen collectief een beetje over de regels:
code:
1
2
Len(frmStraatnummer) = Null
Len(frmStraatNummer) > 9

De artikelen en vragen gaan een beetje over de problematiek als frmStraatnummer leeg is.

En daarnaast wachten we met smart op de query statement van TS. Ik gok dat deze query wel eens de oorzaak kan zijn.

[ Voor 10% gewijzigd door gorgi_19 op 26-11-2002 16:41 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 13:54

Basszje

Reisvaap!]

Probeer je niet die 12A in een cijfer veld te inserten :?

Trouwens null strings vang je in ASP gewoon af met isnull(var)

Heb je eigenlijk trouwens je 'option explicit' aanstaan :? Dat wil ook een hoop fouten er uithalen :Y)

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 14-07 14:28

thomaske

» » » » » »

[ahum]
[edit] hmm.. behalve als users het bij het verkeerde eind hebben.. oops..

[ Voor 77% gewijzigd door thomaske op 26-11-2002 16:44 ]

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 16:59
Sorry voor het late replyen, moest even een aantal mensen "helpen"

MrX:
Het lijkt me dat je wel moet kunnen checken of de insert heeft plaatsgevonden via de SQL Server client tools.
Alle andere data wordt netjes geinsert. AdresCijfer niet als het 12A is:
Morpheus_at_work
en als je 121 invult gaat dat wel goed ?
is het geen lengte van je kolom probleem ?
Dat gaat perfect, lengte staat op 10 (voor de zekerheid)

Goodielover: Lees jij uberhaupt wel? Want ik snap jou totaal niet!

Annie: Thanks, daarom gebruik ik eigenlijk ook Null

gorgi_19: de query is gewoon simpel:
SELECT * FROM dbo.Test WHERE UID = '"&UID&"'

ja, even ranzig select * :))

Even nog GoodieLover: Ik snap jou niet. Lijkt mij vrij duidelijk maar goed :)
Deze code geeft geen aanleiding om wat dan ook van af te leiden.
Behalve dan dat je er vage dingen doet die niets met jouw "probleem" te maken hebben.
Je spreekt over uitlezen, maar waaruit?
MS SQL server
Je spreekt over alle andere data, maar welke data is dat dan?
Staat in mijn post:
Een gebruiker kan zijn/haar naam, adres en woonplaats invoeren in een form.
is dus de andere data!!!
Want een insert gaat in z'n geheel goed of niet. Niet een paar velden wel en eentje niet.
Als een waarde null mag zijn in je db wel!
Je spreekt over inserten, maar waar doe je dat dan?
Op de checker pagina? Die insert het in de db, redirect naar een andere page om de data uit te lezen van de DB Server

[ Voor 9% gewijzigd door TeeDee op 26-11-2002 16:55 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Graag even mail checken D2k

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 15:58

gorgi_19

Kruimeltjes zijn weer op :9

En als je gaat debuggen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
        frmStraatnummer = request.form("straatnummer")
        Response.write "1:" & frmStraatnummer
        if not Len(frmStraatnummer) = Null then
            frmStraatNummer = replace(frmStraatNummer, "'", "''")
            Response.write "2:" & frmStraatnummer
        end if
        if Len(frmStraatNummer) > 9 then
             frmStraatNummer = Left(frmStraatNummer, 9)
             Response.write "3:" & frmStraatnummer
        end if
        Response.write "4:" & frmStraatnummer
        'Eventueel volgende regel uncommenten
        'Response.End

[ Voor 17% gewijzigd door gorgi_19 op 26-11-2002 17:00 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 16:59
gorgi_19: op die manier nog niet (dus elke keer een response.write) maar zal ik ff kijken jah...

/edit:
Owke, zodra het dus 12A is, leest ie de waarde in de eerste response.write al niet uit...

Het vreemde is dus gewoon: Als het 12 (of 121 :)) is, dan gaat het goed, is het 12A of 100A dan gaat het dus gewoon niet goed. Dan is het een "lege" waarde!

gorgi_19: nope, maakt niks uit... hij leest dat ding bij de eerste al niet uit.

[ Voor 78% gewijzigd door TeeDee op 26-11-2002 17:16 ]

Heart..pumps blood.Has nothing to do with emotion! Bored

Pagina: 1