Toon posts:

[ASP + Acces97] Datum leeg laten

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een probleem. Als ik met een asp een forum wilt opslaan in een database, en enkele velden zijn ingesteld op datum/tijd, en ik vul geen datum in, en ik druk op opslaan dan krijg ik een melding dat het type niet overeenkomt!

Ik heb al van alles geprobeert, maar het lukt me niet. Ook als ik de eigenschappen opvraagt dan staad er bij "vereist" "Nee" :?

Wie kan mij hierbij helpen, of wie heeft het zelfde probleem :'(

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
En wat is je insert query.

Verwijderd

Controleer met je ASPcode of het in te voeren veld leeg is voor je het gaat invoeren, zo ja dan voer je het niet in.

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 13:40 schreef raptorix het volgende:
En wat is je insert query.
Hoe bedoel je dat? Ik wil gewoon in het veld wat op datum/tijd is ingesteld gewoon een lege waarde meegeven!

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 13:41 schreef Shivo het volgende:
Controleer met je ASPcode of het in te voeren veld leeg is voor je het gaat invoeren, zo ja dan voer je het niet in.
Handige tip, ga ik ff proberen *D

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 13:41 schreef Shivo het volgende:
Controleer met je ASPcode of het in te voeren veld leeg is voor je het gaat invoeren, zo ja dan voer je het niet in.
Het werkt wel, Maar.....

Als mensen eerst iets hebben ingevuld, en daarna willen ze er weer geen waarde (Mensen weten ook niet wat ze willen :) ) in, dan werkt die truc niet :'(

Verwijderd

Huh? Hoe submit je de data dan? Gebeurt dat dynamisch ofzo? :?

Wanneer je een form submit en die data in de db wil hebben, zou dat moeten werken.

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 13:47 schreef Shivo het volgende:
Huh? Hoe submit je de data dan? Gebeurt dat dynamisch ofzo? :?

Wanneer je een form submit en die data in de db wil hebben, zou dat moeten werken.
Dan werkt het ook, maar als mensen dan weer de ingevoerde gegevens willen wijzigen, dan werkt het niet, want dan blijft de eerder ingevoerde datum staan (Mits ze eerst een datum hadden ingevoerd). Snap je een beetje wat ik bedoel :?

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Ik neem aan dat je in ASP ergens de data insert, de vraag hoe doe je dat.

Verwijderd

Je zou kunnen controleren of de ingevoerde waarde leeg is, of gelijk aan de oude waarde. Er daar je actie op aanpassen. Alhoewel het op deze manier wel een beetje omslachtig wordt allemaal. :)

maar ik weet ook geen betere manier

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Het probleem zal ongetwijfeld zijn dat je wel iets invult bij de datum, waarschijnlijk spaties ofzo en dat access daarmee op ze bek gaat, als je datum gewoon negeert in insert query moet het gewoon goed gaan.

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 13:51 schreef raptorix het volgende:
Ik neem aan dat je in ASP ergens de data insert, de vraag hoe doe je dat.
Ik ga ff proberen duidelijk uit te leggen :)

Onderstaande is nieuw.asp:
code:
1
2
3
<form method="POST" action="nieuw2.asp" name="FormSubs">
<input type="text" name="Datum" size="1" value="<%=Datum%>">
<input type="submit" value="Gegevens opslaan" name="opslaan">

Onderstaande is nieuw2.asp
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DSN_CONN_STRING = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN_CONN_STRING = DSN_CONN_STRING & "DBQ=" & server.mappath("/dbase1/GeleKaart.mdb")

Dim RS
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open "SubEindbladen", DSN_CONN_STRING, adOpenKeyset, adLockPessimistic, adCmdTable
    
RS.CacheSize = 25
        
rs.AddNew
        
RS.Fields("Datum") = Request.Form("Datum")
RS.Update
    
Id = RS.Fields("id")
    
RS.close
set RS = nothing

Maar nu heb ik ook een script wijzigen.asp en wijzigen2.asp om bovenstaande ingevoerde gegevens te wijzigen.

Maar als mensen een datum hebben opgeslagen, en later weer GEEN datum wille opslaan, dan werkt het dus niet.

Ik hoop dat het zou duidelijer is :D

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
MMM de methode die je gebruikt is nogal omslachtig gebruik liever gewoon execute is nog makkelijker te debuggen ook

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 14:01 schreef raptorix het volgende:
MMM de methode die je gebruikt is nogal omslachtig gebruik liever gewoon execute is nog makkelijker te debuggen ook
Dat execute hadden we het gisteren toch ook al over :?
Maar wij hebben helaas nog steeds maar IIS4/ASP2.0 :'(

Dus dat gaat ook niet werken
Of heb ik het nu weer over wat onders?!?!

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Ik raad je toch sterk aan gewoon een boek er bij te pakken want je haalt nu allerlei dingen door elkaar.

Verwijderd

Topicstarter
Op vrijdag 08 februari 2002 14:05 schreef raptorix het volgende:
Ik raad je toch sterk aan gewoon een boek er bij te pakken want je haalt nu allerlei dingen door elkaar.
Dat ligt al een aantal dagen naast me, maar daar word ik ook niet echt wijs van, en google laat me ook in de steek :'(

Maar ja, het leven gaat gewoon door :D

Maar binnenkort mag ik op cursus :)

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Uhm je kan beste gewoon toevoegen via recordset.execute

Dat kan dus gewoon met asp 2 als het goed is, op die manier kan je gewoon een sql commando uitvoeren.

Verwijderd

Op vrijdag 08 februari 2002 14:35 schreef raptorix het volgende:
Uhm je kan beste gewoon toevoegen via recordset.execute

Dat kan dus gewoon met asp 2 als het goed is, op die manier kan je gewoon een sql commando uitvoeren.
Ik zie niet zo in hoe dit het gebruik van spaties in dat veld moet voorkomen of hoe je daarmee omgaat.
Ik denk dat Access dan nog steeds op zijn bek gaat wanneer er een spatie ingevuld wordt. Volgens mij blijft het dan beter een vergelijking te doen voor je iets gaat invoeren (en invoeren hoeft niet perse met een query maar kan ook met Recordset.AddNew en Recordset.Update)

  • xtra
  • Registratie: November 2001
  • Laatst online: 31-08 14:51
Zoiets?
code:
1
2
3
4
5
If Request.Form("Datum") = "" Then
  RS.Fields("Datum") = Null
Else
  RS.Fields("Datum") = Request.Form("Datum")
End If

Werkt in ieder geval prima bij SQL maar zou het hier ook moeten doen.

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 04-09 12:53
Op zaterdag 09 februari 2002 11:31 schreef xtra het volgende:
Zoiets?
code:
1
2
3
4
5
If Request.Form("Datum") = "" Then
  RS.Fields("Datum") = Null
Else
  RS.Fields("Datum") = Request.Form("Datum")
End If

Werkt in ieder geval prima bij SQL maar zou het hier ook moeten doen.
Ik zal maandag ochtend uitproberen, dan ben ik namelijk weer op de zaak!

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!

Pagina: 1