Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^3: Perl script to decode SQL ENCODE function

by Loops (Curate)
on Jul 22, 2013 at 12:23 UTC ( #1045641=note: print w/ replies, xml ) Need Help??

in reply to Re^2: Perl script to decode SQL ENCODE function
in thread Perl script to decode MySQL ENCODE() function

Could you give an actual code example, i'm not sure what you're saying. It appears from the MySQL documentation that the ENCODE function requires 2 parameters, but you haven't mentioned that. Anyway, likely the best way is to just connect to MySQL and perform the operation, for example:

use strict; use warnings; use DBI; my $dsn = 'DBI:mysql:host=localhost'; my $dbh = DBI->connect($dsn); my $sth = $dbh->prepare("SELECT DECODE('encodedcontent', 'secretvalue' +)"); $sth->execute; my $decoded = $sth->fetchrow; print $decoded;

Replies are listed 'Best First'.
Re^4: Perl script to decode SQL ENCODE function
by Martin90 (Sexton) on Jul 22, 2013 at 20:14 UTC
    There is problem: SELECT ENCODE('test','test') returns ? but SELECT DECODE('?','test') doesn't return test but ttZ what is wrong ?

      Really can't say. Maybe a character encoding problem if you're copy-and-pasting. The following code works here:

      use strict; use warnings; use DBI; my $db = DBI->connect('DBI:mysql:host=localhost'); my ($encoded) = $db->selectrow_array("SELECT ENCODE('ToBeHidden', 'sec +retvalue')"); my ($decoded) = $db->selectrow_array("SELECT DECODE('$encoded', 'secre +tvalue')"); print $decoded; # prints --> ToBeHidden
        Yes, my mistake I copied binary string, shame ;) Thanks for help.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1045641]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (9)
As of 2016-06-30 15:18 GMT
Find Nodes?
    Voting Booth?
    My preferred method of making French fries (chips) is in a ...

    Results (396 votes). Check out past polls.