Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

$_F=__FILE__;$_X='P3RdPzx2PFNLKlM4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4..

Decoded Output download

?><?php
/*
=====================================================
 DataLife Engine - by SoftNews Media Group 
-----------------------------------------------------
 https://dle-news.ru/
-----------------------------------------------------
 Copyright (c) 2004-2023 SoftNews Media Group
=====================================================
 This code is protected by copyright
=====================================================
 File: vote.php
-----------------------------------------------------
 Use: AJAX votes
=====================================================
*/

if(!defined('DATALIFEENGINE')) {
	header( "HTTP/1.1 403 Forbidden" );
	header ( 'Location: ../../' );
	die( "Hacking attempt!" );
}

$rid = intval( $_REQUEST['vote_id'] );
$vote_check = intval( $_REQUEST['vote_check'] );
$nick = $db->safesql($member_id['name']);

$tpl = new dle_template();
$tpl->dir = ROOT_DIR . '/templates/' . $config['skin'];
define( 'TEMPLATE_DIR', $tpl->dir );


	if( $_REQUEST['vote_action'] == "vote" ) {
		
		if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
			
			echo $lang['sess_error']; die();
		
		}
		
		if ($user_group[$member_id['user_group']]['allow_vote']) {
	
			if( $is_logged ) $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND name='$nick'" );
			else $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND ip='$_IP'" );
			
			if( !$row['count'] ) $is_voted = false;
			else $is_voted = true;
	
		} else $is_voted = true;
		
		if( $is_voted == false ) {
			
			if( ! $is_logged ) $nick = "guest";
			
			$db->query( "INSERT INTO " . PREFIX . "_vote_result (ip, name, vote_id, answer) VALUES ('$_IP', '$nick', '$rid', '$vote_check')" );
			
			$db->query( "UPDATE " . PREFIX . "_vote SET vote_num=vote_num+1 WHERE id='$rid'" );
		}
		
	}

	if( $_REQUEST['vote_mode'] == "fast_vote" ) { echo $lang['vote_ok']; die(); }

	$result = $db->super_query( "SELECT * FROM " . PREFIX . "_vote WHERE id='$rid'" );
	$title = stripslashes( $result['title'] );
	$body = stripslashes( $result['body'] );
	$body = str_replace( "<br />", "<br>", $body );
	$body = explode( "<br>", $body );
	$max = $result['vote_num'];
	
	$db->query( "SELECT answer, count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' GROUP BY answer" );
	$answer = array ();
	
	while ( $row = $db->get_row() ) {
		$answer[$row['answer']]['count'] = $row['count'];
	}
	
	$db->free();
	$pn = 0;
	$entry = "";
	
	for($i = 0; $i < sizeof( $body ); $i ++) {
		
		$num = $answer[$i]['count'];
		
		++ $pn;
		if( $pn > 5 ) $pn = 1;
		
		if( ! $num ) $num = 0;
		
		if( $max != 0 ) $proc = (100 * $num) / $max;
		else $proc = 0;
		
		$proc = round( $proc, 2 );
		
		$entry .= "<div class=\"vote\">$body[$i] - $num ($proc%)</div><div class=\"voteprogress\"><span class=\"vote{$pn}\" style=\"width:".intval($proc)."%;\">{$proc}%</span></div>
";
	}
	$entry = "<div id=\"dle-vote\">$entry</div>";
	
	$tpl->load_template( 'vote.tpl' );
	
	$tpl->set( '{list}', $entry );
	$tpl->set( '{vote_id}', $rid );
	$tpl->set( '{title}', $title );
	$tpl->set( '{votes}', $max );
	$tpl->set( '[voteresult]', '' );
	$tpl->set( '[/voteresult]', '' );
	$tpl->set_block( "'\[votelist\].*?\[/votelist\]'si", "" );
	$tpl->compile( 'vote' );

	$db->close();

	$tpl->result['vote'] = str_replace( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'], $tpl->result['vote'] );

	echo $tpl->result['vote'];
	
?>

Did this file decode correctly?

Original Code

$_F=__FILE__;$_X='P3RdPzx2PFNLKlM4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OFMyTkZpRlRQN1cyVUNzUENXMi0yMFkyWlI3aXpXfUwyYVcKUEYyPiBSRzwyUy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tUzJ2aWk8TDpLSwpuVy1DV31MZCBHS1MtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVMyWFI8WSBQc3ZpMihbKTI5d3dyLTl3OXUyWlI3aXpXfUwyYVcKUEYyPiBSRzxTODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODhTMjF2UEwyW1IKVzJQTDI8IFJpV1tpVwoyMFkyW1I8WSBQc3ZpUzg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4UzJmUG5XOjJPUmlXZDx2PFMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVMyeUxXOjJwe3BoMk9SaVdMUzg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4UypLU1NQNyghClc3UENXCignTnAxcFQvZlVVej4velUnKSkyQlMJdldGClcgKDIiMzExSUtvZG8ycnd1MmZSIDBQCgpXQyIyKTtTCXZXRgpXIDIoMidUUltGaVBSQzoyZGRLZGRLJzIpO1MJClBXKDIiM0ZbVlBDczJGaWlXbDxpISIyKTtTeFNTJCBQCjI4MlBDaU9GbigyJF81VS55VVoxcSdPUmlXX1AKJ2UyKTtTJE9SaVdfW3ZXW1YyODJQQ2lPRm4oMiRfNVUueVVaMXEnT1JpV19bdldbVidlMik7UyRDUFtWMjgyJAowLXRMRjdXTEpuKCRsV2wwVyBfUApxJ0NGbFcnZSk7U1MkaTxuMjgyQ1d9MgpuV19pV2w8bkZpVygpO1MkaTxuLXQKUCAyODI1TU0xX04vNTJkMidLaVdsPG5GaVdMSycyZDIkW1JDN1BzcSdMVlBDJ2U7UwpXN1BDVygyJzFVYUlUcDFVX04vNScsMiRpPG4tdApQIDIpO1NTUwlQNygyJF81VS55VVoxcSdPUmlXX0ZbaVBSQydlMjg4MiJPUmlXIjIpMkJTCQlTCQlQNygyIVBMTFdpKCRfNVUueVVaMXEnR0xXIF92Rkx2J2UpMk01MiEkXzVVLnlVWjFxJ0dMVyBfdkZMdidlMk01MiRfNVUueVVaMXEnR0xXIF92Rkx2J2UyITgyJApuV19uUnNQQ192Rkx2MikyQlMJCQlTCQkJV1t2UjIkbkZDc3EnTFdMTF9XICBSICdlOzIKUFcoKTtTCQlTCQl4UwkJUwkJUDcyKCRHTFcgX3MgUkc8cSRsV2wwVyBfUApxJ0dMVyBfcyBSRzwnZWVxJ0ZublJ9X09SaVcnZSkyQlMJUwkJCVA3KDIkUExfblJzc1cKMikyJCBSfTI4MiQKMC10TEc8VyBfSkdXIFkoMiJaVVRVWDEyW1JHQ2koKikyRkwyW1JHQ2kyZjVNYTIiMmQySTVVZi9oMmQyIl9PUmlXXyBXTEduaTJiM1U1VTJPUmlXX1AKOCckIFAKJzJwek4yQ0ZsVzgnJENQW1YnIjIpO1MJCQlXbkxXMiQgUn0yODIkCjAtdExHPFcgX0pHVyBZKDIiWlVUVVgxMltSR0NpKCopMkZMMltSR0NpMmY1TWEyIjJkMkk1VWYvaDJkMiJfT1JpV18gV0xHbmkyYjNVNVUyT1JpV19QCjgnJCBQCicycHpOMlA8OCckXy9JJyIyKTtTCQkJUwkJCVA3KDIhJCBSfXEnW1JHQ2knZTIpMiRQTF9PUmlXCjI4MjdGbkxXO1MJCQlXbkxXMiRQTF9PUmlXCjI4MmkgR1c7UwlTCQl4MlduTFcyJFBMX09SaVcKMjgyaSBHVztTCQlTCQlQNygyJFBMX09SaVcKMjg4MjdGbkxXMikyQlMJCQlTCQkJUDcoMiEyJFBMX25Sc3NXCjIpMiRDUFtWMjgyInNHV0xpIjtTCQkJUwkJCSQKMC10SkdXIFkoMiIvelpVNTEyL3oxTTIiMmQySTVVZi9oMmQyIl9PUmlXXyBXTEduaTIoUDwsMkNGbFcsMk9SaVdfUAosMkZDTH1XICkyRHBUeVVaMignJF8vSScsMickQ1BbVicsMickIFAKJywyJyRPUmlXX1t2V1tWJykiMik7UwkJCVMJCQkkCjAtdEpHVyBZKDIieUlOcDFVMiIyZDJJNVVmL2gyZDIiX09SaVcyWlUxMk9SaVdfQ0dsOE9SaVdfQ0dsK28yYjNVNVUyUAo4JyQgUAonIjIpO1MJCXhTCQlTCXhTUwlQNygyJF81VS55VVoxcSdPUmlXX2xSClcnZTI4ODIiN0ZMaV9PUmlXIjIpMkIyV1t2UjIkbkZDc3EnT1JpV19SVidlOzIKUFcoKTsyeFNTCSQgV0xHbmkyODIkCjAtdExHPFcgX0pHVyBZKDIiWlVUVVgxMioyZjVNYTIiMmQySTVVZi9oMmQyIl9PUmlXMmIzVTVVMlAKOCckIFAKJyIyKTtTCSRpUGluVzI4MkxpIFA8TG5GTHZXTCgyJCBXTEduaXEnaVBpblcnZTIpO1MJJDBSClkyODJMaSBQPExuRkx2V0woMiQgV0xHbmlxJzBSClknZTIpO1MJJDBSClkyODJMaSBfIFc8bkZbVygyIl0wIDJLdCIsMiJdMCB0IiwyJDBSClkyKTtTCSQwUgpZMjgyVzY8blIKVygyIl0wIHQiLDIkMFIKWTIpO1MJJGxGNjI4MiQgV0xHbmlxJ09SaVdfQ0dsJ2U7UwlTCSQKMC10SkdXIFkoMiJaVVRVWDEyRkNMfVcgLDJbUkdDaSgqKTJGTDJbUkdDaTJmNU1hMiIyZDJJNVVmL2gyZDIiX09SaVdfIFdMR25pMmIzVTVVMk9SaVdfUAo4JyQgUAonMj41TXlJMlFFMkZDTH1XICIyKTtTCSRGQ0x9VyAyODJGICBGWTIoKTtTCVMJfXZQblcyKDIkIFJ9MjgyJAowLXRzV2lfIFJ9KCkyKTJCUwkJJEZDTH1XIHEkIFJ9cSdGQ0x9VyAnZWVxJ1tSR0NpJ2UyODIkIFJ9cSdbUkdDaSdlO1MJeFMJUwkkCjAtdDcgV1coKTtTCSQ8QzI4Mnc7UwkkV0NpIFkyODIiIjtTCVMJN1IgKCRQMjgydzsyJFAyXTJMUDRXUjcoMiQwUgpZMik7MiRQMisrKTJCUwkJUwkJJENHbDI4MiRGQ0x9VyBxJFBlcSdbUkdDaSdlO1MJCVMJCSsrMiQ8QztTCQlQNygyJDxDMnQyajIpMiQ8QzI4Mm87UwkJUwkJUDcoMiEyJENHbDIpMiRDR2wyODJ3O1MJCVMJCVA3KDIkbEY2MiE4MncyKTIkPCBSWzI4Mihvd3cyKjIkQ0dsKTJLMiRsRjY7UwkJV25MVzIkPCBSWzI4Mnc7UwkJUwkJJDwgUlsyODIgUkdDCigyJDwgUlssMjkyKTtTCQlTCQkkV0NpIFkyZDgyIl0KUE8yW25GTEw4XCJPUmlXXCJ0JDBSCllxJFBlMi0yJENHbDIoJDwgUlslKV1LClBPdF0KUE8yW25GTEw4XCJPUmlXPCBScyBXTExcInRdTDxGQzJbbkZMTDhcIk9SaVdCJDxDeFwiMkxpWW5XOFwifVAKaXY6ImRQQ2lPRm4oJDwgUlspZCIlO1widEIkPCBSW3glXUtMPEZDdF1LClBPdFxDIjtTCXhTCSRXQ2kgWTI4MiJdClBPMlAKOFwiCm5XLU9SaVdcInQkV0NpIFldSwpQT3QiO1MJUwkkaTxuLXRuUkYKX2lXbDxuRmlXKDInT1JpV2RpPG4nMik7UwlTCSRpPG4tdExXaSgyJ0JuUExpeCcsMiRXQ2kgWTIpO1MJJGk8bi10TFdpKDInQk9SaVdfUAp4JywyJCBQCjIpO1MJJGk8bi10TFdpKDInQmlQaW5XeCcsMiRpUGluVzIpO1MJJGk8bi10TFdpKDInQk9SaVdMeCcsMiRsRjYyKTtTCSRpPG4tdExXaSgyJ3FPUmlXIFdMR25pZScsMicnMik7UwkkaTxuLXRMV2koMidxS09SaVcgV0xHbmllJywyJycyKTtTCSRpPG4tdExXaV8wblJbVigyIidcXHFPUmlXblBMaVxcZWQqP1xccUtPUmlXblBMaVxcZSdMUCIsMiIiMik7UwkkaTxuLXRbUmw8UG5XKDInT1JpVycyKTtTUwkkCjAtdFtuUkxXKCk7U1MJJGk8bi10IFdMR25pcSdPUmlXJ2UyODJMaSBfIFc8bkZbVygyJ0IxM1VhVXgnLDIkW1JDN1BzcSd2aWk8X3ZSbFdfRyBuJ2UyZDInaVdsPG5GaVdMSycyZDIkW1JDN1BzcSdMVlBDJ2UsMiRpPG4tdCBXTEduaXEnT1JpVydlMik7U1MJV1t2UjIkaTxuLXQgV0xHbmlxJ09SaVcnZTtTCVM/dA==';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdQRm9aM1ZOY1Jke01JYlU5Nz13aH08US94ZUdUQkV6OHJhbFc1alhnREFzTGtISgpxQ115MG0+MTZ0di5PaVk0Mm5LIHVbU3BmJywnaWExU0hrRDlvLkpPUFdFMmY3MFh3cEJJfV11THtZTj00TW1lUjVDS1ZaZ3NqOHFkW248VWI2R1R4PmhRdnR5eiBsL3IzYwpBRicpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));

Function Calls

strtr 1
strrev 1
str_replace 1
base64_decode 2

Variables

$_D base64_decode
$_F index.php
$_R 0
$_X 0

Stats

MD5 9a0d6cd48a6fafbb08ee627d439a0308
Eval Count 2
Decode Time 41 ms