2016-09-22 11 views
0

Rの光沢のあるmysqlデータベースにアポストロフィ( ')を入力するには?

ui.R 

library(shiny) 
library(shinyjs) 

shinyUI(fluidPage(
    bootstrapPage(



) 
) 
) 

Server.R 

library(shiny) 
library(shinyjs) 
mydb=dbConnect(MySQL(),user='',password='123',dbname='test1',host='localhost') 
shinyServer(function(input, output,session){ 


column(4, 
        textInput("name", label = "NAME:", 
           value ='')), 
      column(4, 
        textInput("address", label = "Address:", 
           value ='')) 

column(2, 
           actionButton("add", "ADD")) 



observeEvent(
    input$add, 
output$ui123 <- renderUI({isolate({ 

dbSendQuery(mydb,paste("INSERT INTO table1(name,address) VALUES ('",input$name,"','",input$address,"');",sep=" ")) 
})})) 


    } 



}) 

アドレスへの入力は(例:まず通りの)アポストロフィが含まれている場合、それはMySQLの文は、いくつかの誤りが含まれているというエラーが表示されます。このデータは、どのようにしてMysqlにエラーなく入力することができますか?

+1

あなたは明らかに['sql injection attacks](http://bobby-tables.com)に脆弱です。それを防ぐ方法を学ぶ必要があります。 –

+0

準備文を使用できますか? –

+0

私はRshinyでそのエラーを防ぐことができませんでした。 – Rad

答えて

-1

多分ジュスト(PHPのような)スラッシュを追加します。

gsub(pattern = "'", replacement = "\\\\'", x = "test'") 

関連する問題