06. november 2003 - 22:41
Der er
8 kommentarer og 1 løsning
Fnc textchange
Hejsa NG Nu har jeg kæmpet i jeg ved ikke hvor lang tid med følgende script. Den vil ikke acceptere Hvis man skriver eks: 'Han gjorde' (tegnet ') eller eks: Hans' bil. (tegnet ') Nogen der kan hjælpe med en skudsikker rettelse, det dur jo ikke at mine anmeldere for fejl ved ', og så går de i panik. <%if Request.Form("forfatterb") <> "" then strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.Mappath("../../db/anmeld.mdb") Set objConn = Server.CreateObject ("ADODB.Connection") objConn.Open strConnect Function fncTextChange(strText) strTekst = Trim(strText) fncTextChange = Replace(strTekst,"''","''") fncTextChange = Replace(strTekst,"""","""") fncTextChange = Replace(fncTextChange," "," ") fncTextChange = Replace(fncTextChange,vbCrLf,"<BR>") fncTextChange = Replace(fncTextChange,"å","å") fncTextChange = Replace(fncTextChange,"æ","æ") fncTextChange = Replace(fncTextChange,"ø","ø") fncTextChange = Replace(fncTextChange,"Å","Å") fncTextChange = Replace(fncTextChange,"Æ","Æ") fncTextChange = Replace(fncTextChange,"Ø","Ø") fncTextChange = Replace(fncTextChange,"[img]","<center><img src=pics/") fncTextChange = Replace(fncTextChange,"[/img]","></center>") fncTextChange = Replace(fncTextChange,"[imgs]","<img src=pics/baggrund/") fncTextChange = Replace(fncTextChange,"[/imgs]",">") fncTextChange = Replace(fncTextChange,"","<b>") fncTextChange = Replace(fncTextChange," ","</b>") fncTextChange = Replace(fncTextChange,"","<i>") fncTextChange = Replace(fncTextChange," ","</i>") fncTextChange = Replace(fncTextChange,"","<u>") fncTextChange = Replace(fncTextChange," ","</u>") End Function indhold = fncTextChange(request.form("anmeldb")) indholda = fncTextChange(request.form("boksenb")) indholdb = fncTextChange(request.form("teaserb")) indholdc = fncTextChange(request.form("omtaleb")) strSQL = "Insert into anmeld (forfatter, titel, pic, boksen, teaser, omtale, anmeld) values('" & Request.Form("forfatterb") & "', '" & Request.Form("titelb") & "', '" & Request.Form("picb") & "', '" & indholda & "', '" & indholdb & "', '" & indholdc & "', '" & indhold & "')" objConn.Execute(strSQL) end if %>
Annonceindlæg fra SuperOffice
06. november 2003 - 22:44
#1
Du skal replace et ' med to '' før du putter det i databasen og den replace du har idag udskifter to '' med to '': fncTextChange = Replace(strTekst,"''","''") Så den prøv at lave den linje om til: fncTextChange = Replace(strTekst,"'","''")
06. november 2003 - 22:47
#2
Giver denne her fejl: Microsoft JET Database Engine error '80040e14' Syntax error (missing operator) in query expression ''Boksen'', 'Teaser'''. /crew/reviewinsert.asp, line 154 Jeg poster lige hele scriptet. <tr> <td class="font">Forfatter<br><input type="text" name="forfatterb"></td> <td class="font">Titel<br><input type="text" name="titelb"></td> </tr> <tr> <td class="font" align="left">Boksen<br><textarea name="boksenb" rows="4" cols="20">Skriv hvad du vil. Scene/citat m.m. Hvis du ikke har noget, skriv "Ingen fri tekst"</textarea></td> <td class="font" align="left">Teaser<br><textarea name="teaserb" rows="4" cols="20">"Tekst her"</textarea></td> </tr> <tr> <td colspan="2" class="font" align="left">Handling<br><textarea name="omtaleb" rows="4" cols="20"></textarea></td> </tr> <tr> <td colspan="3" class="font" align="left">Anmeldelse<br><textarea name="anmeldb" rows="20" cols="45"></textarea></td> </tr> </table> <input type="image" src="../gfx/send.gif" value="Gem"> </form> <%if Request.Form("forfatterb") <> "" then strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.Mappath("../../db/anmeld.mdb") Set objConn = Server.CreateObject ("ADODB.Connection") objConn.Open strConnect Function fncTextChange(strText) strTekst = Trim(strText) fncTextChange = Replace(strTekst,"'","''") fncTextChange = Replace(strTekst,"""","""") fncTextChange = Replace(fncTextChange," "," ") fncTextChange = Replace(fncTextChange,vbCrLf,"<BR>") fncTextChange = Replace(fncTextChange,"å","å") fncTextChange = Replace(fncTextChange,"æ","æ") fncTextChange = Replace(fncTextChange,"ø","ø") fncTextChange = Replace(fncTextChange,"Å","Å") fncTextChange = Replace(fncTextChange,"Æ","Æ") fncTextChange = Replace(fncTextChange,"Ø","Ø") fncTextChange = Replace(fncTextChange,"[img]","<center><img src=pics/") fncTextChange = Replace(fncTextChange,"[/img]","></center>") fncTextChange = Replace(fncTextChange,"[imgs]","<img src=pics/baggrund/") fncTextChange = Replace(fncTextChange,"[/imgs]",">") fncTextChange = Replace(fncTextChange,"","<b>") fncTextChange = Replace(fncTextChange," ","</b>") fncTextChange = Replace(fncTextChange,"","<i>") fncTextChange = Replace(fncTextChange," ","</i>") fncTextChange = Replace(fncTextChange,"","<u>") fncTextChange = Replace(fncTextChange," ","</u>") End Function indhold = fncTextChange(request.form("anmeldb")) indholda = fncTextChange(request.form("boksenb")) indholdb = fncTextChange(request.form("teaserb")) indholdc = fncTextChange(request.form("omtaleb")) strSQL = "Insert into anmeld (forfatter, titel, pic, boksen, teaser, omtale, anmeld) values('" & Request.Form("forfatterb") & "', '" & Request.Form("titelb") & "', '" & Request.Form("picb") & "', '" & indholda & "', '" & indholdb & "', '" & indholdc & "', '" & indhold & "')" objConn.Execute(strSQL) end if %>
06. november 2003 - 22:49
#3
Hvad prøver du at skrive? boksen eller 'boksen' i input feltet.
06. november 2003 - 22:50
#4
Jeg skriver som test: Boksen' Teaser' Handling' Anmeld'
06. november 2003 - 22:56
#5
Det ser ud som om der er to '' foran boksen det virker lidt mystisk.. Prøv udskrive strSQL i stedet for at Execute den og vis hvad der så står eller tjek antallet af ping 'er
06. november 2003 - 22:58
#6
glem det så lige noget..
06. november 2003 - 22:58
#7
Der fik du mig..hehe, jeg fatter nada af hvad du lige skrev.
06. november 2003 - 22:59
#8
Den ændre rigtigt nok en ' til to '' men det blvier ikke gemt i strengen da strTekst bruge i de to første replaces: strTekst = Trim(strText) fncTextChange = Replace(strTekst,"'","''") fncTextChange = Replace(strTekst,"""","""") Prøv at rette de 3 linjer til: strTekst = Trim(strText) fncTextChange = Replace(strTekst,"'","''") fncTextChange = Replace(fncTextChange,"""","""")
06. november 2003 - 23:02
#9
TUSIND TAK!!! Nu virker det. Både Test' 'Test' Simpelthen bare det hele. (For lige at gentage mig) :-)
Kurser inden for grundlæggende programmering