Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [Microsoft][ODBC Microsoft Access Driver] Undefined function 'replace' in expression. /familiepostfunktionminebeskeder.asp, line 43
min helt eksakte linje er:
sql = "select * from postfunktion where instr(1,',"&session("navn")&",',','+replace(navn,' ','')+',')>0 or navn='alle'"
Jeg har ændret Session("id") til session("navn") da dette er navnet på min session???
Session("navn") indeholder eksempelvis Peter, Johannes, Martha eller Alle
1, 3 dette er bare et eksempel som jeg har fundet her på eksperten, og deres value er "1", "2", "3", "alle" uden mellemrum. Scriptet laver selv et "," hvis der er multiple selections når jeg kører et response.write på Request.Form("test").
Du er klar over hvad det helt præcist er jeg leder efter ikke?
Ja måske, jeg har forstået det sådan her: Du har gemt alle modtagerne i et felt i posten. Det felt indeholder enten "alle" eller en komma liste med modtagere. Og nu kan jeg forstå du gemmer folk ID og ikke deres navn. Så for at hente deres bruges kan man bruge deres ID og ikke navn i SQL sætningen.
Når man har det som "3,51,54" og så logger bruger 1 ind, når man så tjekker på om "1," findes i strengen finden den post til bruger 51 som post til bruger 1. Så derfor ville jeg i SQL sætningen sætte , omkring ",3,51,54," når man så søger efter ",1," vil den kun finde det hvis 1 virkelig er i stengen. Så bliver i stil med dette dog stadig skal det være ID'et som bruges.
sql = "select * from post where instr(1,',"&session("id")&",',','+navn+',')>0 or navn='alle'"
Jeg har valgt at splitte beskederne og ligge dem i db'en flere gange ved flere modtagere, så derfor har jeg droppet den oprindelige løsning.
Men tak for hjælpen
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.