我有下面的代码可以工作,但我需要知道如何绑定它们以确保安全.如果我只用$ new_row替换?并把它放在执行中我得到一个错误.谢谢你的帮助.
foreach my $field (@account_field_order) {
$new_row .= "'" . param($field) . "', ";
}#foreach
$new_row .= "'$status'";
my $dsn = "DBI:mysql:$database";
my $dbh = DBI->connect($dsn, $MYSQLuserid, $MYSQLpassword )
or die $DBI::errstr;
my $sth = $dbh->prepare(qq(INSERT INTO $table VALUES ($new_row) )) or die $DBI::errstr;
$sth->execute() or die $DBI::errstr;
Run Code Online (Sandbox Code Playgroud) 我需要选择30天以前的所有记录.我有下面的代码,但它不起作用.在updatestatus中,我的日期为12/26/2011.我创建了一个30天的日期
$onemonthago="01/01/2012";
$sth = $dbh->prepare(qq(
SELECT *
FROM people
WHERE STR_TO_DATE (updatestatus,'%m/%d/%y')
<= STR_TO_DATE ( "$onemonthago",'%m/%d/%Y')
) );
Run Code Online (Sandbox Code Playgroud) 新手在这里.对不起,谢谢你.我有一个未来的约会
(ie:2013-06-09 / $fields[12])
Run Code Online (Sandbox Code Playgroud)
我今天需要减去
(ie:2013-03-08)
Run Code Online (Sandbox Code Playgroud)
获得剩余的天数.
我是新手.抱歉.我正在尝试删除逗号.Perl cgi.pm
我需要知道如何编写这个参数('item_price'=> ~s/\,// g);
我可以这样做$ item_price = ~s/\,// g; 但宁愿消除转换为变量.
如果我可以包括删除$,那会更好.可以吗?谢谢
我是新手.我已经搜索了Stackoverflow几周,试图找到高级搜索的代码.
终于创造了我自己的.它工作得很好.我在这里列出了其他可能想要使用它的人.
问题是:
当没有选择item_category时我默认 * 但它不起作用.item_category是搜索所需的唯一变量?
我是否需要关注消毒或黑客注射?
完全匹配似乎不起作用.它可能正在搜索100个单词"FREE"并且找不到匹配项.有任何想法吗?
有关可靠性和速度问题的建议吗?
$ ANDOR = param('andor');#创建AND OR搜索if($ ANDOR eq""){$ ANDOR ="AND";}
if($ item_category){$ item_category ="$ item_category"; } else {$ item_category ="*"; } $ statement.="item_category LIKE'$ item_category'";
if($ item_state){$ statement.="$ ANDOR item_state LIKE'$ item_state'"; } if($ item_city){$ statement.="$ ANDOR item_city LIKE'$ item_city'"; } if($ db_id){$ statement.="$ ANDOR db_id ='$ db_id'"; }
$关键字=参数( '关键字');
if($ keywords){if(param('searchmatch')eq"exact"){$ statement.="$ ANDOR item_name = \"$ keywords \"OR item_desc = \"$ keywords \"OR item_desc2 = \"$关键字\"";#
} else {$ statement.="$ …
新手在这里.对不起,谢谢.我需要找到不等于'Ok'的记录.此代码不起作用.
是否有与Perl相同的MySql ne?
use DBI;
SELECT * FROM people WHERE status ne 'Ok'
Run Code Online (Sandbox Code Playgroud)