繁体   English   中英

MySQL上的SELECT在我的PHP脚本上不起作用,但是在phpmyadmin上起作用

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM