आप प्लेसहोल्डर्स का उपयोग करना चाहेंगे, और कभी नहीं स्ट्रिंग्स में इंटरपोलेट चर। आपको संभवतः टेंट मोड
का उपयोग करना चाहिए और अपने param
. को दागदार करें मूल्यों का उपयोग करने से पहले, यदि सुरक्षा आपके लिए महत्वपूर्ण है। प्लेसहोल्डर्स पर दस्तावेज़ीकरण यहां
।
कुछ इस तरह का प्रयास करें:
my @values = map param($_), @account_field_order; # add values to array
push @values, $status; # for simplicity
$new_row = join ", ", ("?") x @values; # add ? for each value
... # basically same code as before, except the execute statement:
$sth->execute(@values); # arguments given will be inserted at placeholders