Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向mysql语句发送运算符_Mysql_Perl_Cgi - Fatal编程技术网

向mysql语句发送运算符

向mysql语句发送运算符,mysql,perl,cgi,Mysql,Perl,Cgi,我已经在这上面呆了大约三个小时,在网上搜索了一下,我所需要做的就是用一个弹出菜单向一个mysql语句发送一个操作员,这是我到目前为止所做的 $sqltest=$dbh->prepare("SELECT Time, Date, Event FROM Events WHERE Date ? ?"); $sqltest->execute(param('1'),(param('4')."-".param('3')."-".param('2'))); popup_menu({-values=

我已经在这上面呆了大约三个小时,在网上搜索了一下,我所需要做的就是用一个弹出菜单向一个mysql语句发送一个操作员,这是我到目前为止所做的

$sqltest=$dbh->prepare("SELECT Time, Date, Event FROM Events WHERE Date ? ?");
$sqltest->execute(param('1'),(param('4')."-".param('3')."-".param('2')));

popup_menu({-values=>["<",">","="], -name=>'1'})
$sqltest=$dbh->prepare(“从日期所在的事件中选择时间、日期、事件”);
$sqltest->execute(参数('1'),(参数('4')。“-”。参数('3')。“-”。参数('2'));
弹出菜单({-values=>[“”,“=”],-name=>'1'})
如果我删除第一个问号并用操作符替换它,代码就可以完美地工作,因此所有其他参数都可以正常工作,只是发送操作符时遇到了问题


干杯。您只能将值绑定到参数。运算符不是值,因此不能将其绑定到参数。

如您所见,不能绑定运算符。如果您不想动态生成查询字符串,有一种编程方法:

%sqltest = (
    '<' => $dbh->prepare("SELECT Time, Date, Event FROM Events WHERE Date < ?"),
    '=' => $dbh->prepare("SELECT Time, Date, Event FROM Events WHERE Date = ?"), 
    '>' => $dbh->prepare("SELECT Time, Date, Event FROM Events WHERE Date > ?")
);
$sqltest{param(1)}->execute( param('4')."-".param('3')."-".param('2') );
%sqltest=(
''=>$dbh->prepare(“从日期>的事件中选择时间、日期、事件”)
);
$sqltest{param(1)}->execute(param('4')。“-”.param('3')。“-”.param('2'));

不能将运算符作为参数发送。您必须将其直接注入查询中。