mysql:7596
From: aimitsu katoh <aimitsu katoh <akimitsu@xxxxxxxxxx>>
Date: Fri, 25 Apr 2003 20:21:42 +0900
Subject: [mysql 07596] クォーテーションの扱いについて
katohです。
Perl+DBI+MySQL+HTMLでCGIプログラムを制作しているのですが、クォーテーション【"】の扱いに
ついて質問します。
今 PerlでデータベースにINSERTする時は次のように記述しています。
##### (データベースへはconnect済み、エラー処理は記述していません)
$no=150; $text='text_text';
$sql=qq{INSERT tb_A SET id_no=$no,user_name="$text"};
$sth = $dbh->prepare($sql);
$rt_value=$sth->execute();
#####
この時、$textに【"】や【\】が入るとデータが正常にINSERT出来なくなったり、UPDATEの時は
最悪全てのデータにUPDATEかけてしまうといった問題が起きてしまいます。
そこで変数内の【"】や【\】を【\"】や【\\】に置換しようと思ったのですが、とりあえずINSERTなど
データ登録は問題ないのですが、【"】や【\】を登録できてしまいますと
今度 SELECT してHTMLのフォームにデータを読み込むときにもう一度置換をしないといけないですし、
その他で問題が起きる可能性があるのではないかと懸念しています。
そこで皆さんに質問なのですが、【"】や【\】の処理はどうされていますか?
なにかよい方法がありましたら是非ご教授くださいませ。
#-----------------------------
katoh akimitsu
akimitsu@xxxxxxxxxx
-> 7596 2003-04-25 20:21 [aimitsu katoh <akimi] クォーテーションの扱いについて 7597 2003-04-25 20:45 ┣[SUGAWARA Hajime <sug] 7598 2003-04-25 23:03 ┃┣[とみたまさひろ <tomm] 7605 2003-04-28 11:17 ┃┃┗[SUGAWARA Hajime <sug] 7599 2003-04-26 17:06 ┃┗[Katoh Akimitsu <akim] 7600 2003-04-26 23:42 ┗["KAWAI,Takanori" <GC] 7602 2003-04-27 05:28 ┗[Katoh Akimitsu <akim] 7603 2003-04-27 09:16 ┗["KAWAI,Takanori" <GC] 7604 2003-04-27 16:12 ┗[Katoh Akimitsu <akim]