[英]Mysql query built my phpmyadmin doesn't work in PHP with WHERE clauses
[英]SELECT on MySQL doesn't work on my PHP script but with phpmyadmin
我有一个带有VARBINARY 257的MySQL表,用于存储加密的密码。 我必须定期更新记录。 在进行替换之前,我想对所有的值进行选择。 如果找到记录,则无需替换。 这是因为我有一个带有“ on update CURRENT_TIMESTAMP”属性的时间戳列来存储上次修改时间。 在没有密码的情况下,它可以很好地工作,但是即使所有值都相同,SELECT也不起作用。 如果我在phpmyadmin上使用相同的SELECT,它将起作用。 我有一个函数可以读取我尝试过mysqli函数和PDO类的记录:
mysqli:
function getMySQL($query, $pwd) {
$link = mysqli_connect("localhost", "decisionrule", $pwd, "gateways");
if (mysqli_connect_errno())
return array(array('Connection error : '.mysqli_connect_error()));
$result = mysqli_query($link, $query);
$res = array();
for ($i=0; $row = mysqli_fetch_array($result, MYSQLI_ASSOC); $i++)
$res[$i] = $row;
mysqli_free_result($result);
mysqli_close($link);
return $res;
}
PDO:
function getMySQL($query, $pwd) {
try {
$bdd = new PDO('mysql:host=localhost;dbname=gateways', "decisionrule", $pwd);
}
catch(Exception $e) {
die('Erreur : '.$e->getMessage()."\n");
}
$res = array();
$response = $bdd->query($query);
while ($donnees = $response->fetch())
$res[] = $donnees;
$response->closeCursor();
return $res;
}
为我的问题返回一个空数组。
SELECT的示例:
SELECT name FROM partenaires WHERE gateway='GTWEIR01' AND name='ACCOLADE' AND proto_ident='ACCOLADE' AND protocol='SFTP' AND comments='ACCOLADE - SA0000026603841' AND login_ident='cofidisacco' AND login_password=0x014f4593f6e4360b4c4905da27e3a912e9e8f641ca96557ef1a7e7c10f44273d56c661107d1983d47a9f822e2e419c295b791dd4aed54fe57a4bcd44130f475c4673ec14d044ce208e84bd6a447161874746567e5446388883bbe3a3b8ddb75155488e8290fc5850cfcd776edf9994819e85d1fcec8b4ba3e02c2081a440172b AND dest_address='90.83.11.173/22' AND org_address='' AND dest_address_1='41.87.153.85/22' AND org_address_1='' AND dest_address_2='' AND org_address_2='' AND dest_address_3='' AND org_address_3=''
SELECT是否有大小限制可以更改,因为它可以在phpmyadmin上使用?
版本:
RedHat 6
PHP 5.3.3
Apache 2.2.15
MySQL 5.1.73
谢谢
我搜索了很长时间,一天以上,却没有发现问题所在。 这是如此简单。 我正在使用RSA公钥对密码进行加密,即使密码没有更改,每次也都会进行加密。 所以我的选择不能成功。
我为浪费您的宝贵时间而表示歉意。
特别感谢Shadow和Leet Hudka。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.