Zdrojový kód mého podpisu :)

Pokec o čemkoliv ostatním
Message
Autor
Uživatelský avatar
Sejsel
Příspěvky: 4131
Registrován: 19 čer 2011, 09:43
Reputation: 0
Bydliště: /home/sejsel/
Kontaktovat uživatele:

Zdrojový kód mého podpisu :)

#1 Příspěvekod Sejsel » 23 bře 2013, 00:10

Zdravíčko, jak jsem sliboval, tak tady je zdrojový kód(PHP) mého podpisu, můžete použít pro zjištění mých zvrácených logických postupů atp. Odmazal jsem samozřejmě jméno a heslo databáze, taky jsou jenom texty, které obsahují něco co se týká PHP. IP adresy, které jsou v kódu jsem mírně zacenzuroval :)

Spoiler: zobrazit

Kód: Vybrat vše

<?php
$start_time = microtime(true);

function createpodpis($sizex, $sizey, $transparent) {
   global $sum, $rank, $count, $im;
   $im = imagecreatetruecolor($sizex, $sizey);
   imagesavealpha($im, true);
   if($transparent) {
      $trans_colour = imagecolorallocatealpha($im, 0, 0, 0, 127);
   } else {
      $trans_colour = imagecolorallocatealpha($im, 204, 204, 204, 0);
   }
   imagefill($im, 0, 0, $trans_colour);
   $input = array("Další_texty", "Tento podpis se u vás zobrazil už ".$count."×!", "Celkově byl už tento podpis načten ".$sum."×!", "Tvoje pořadí v počtu načtení podpisu: ".$rank.".");


   $rand_keys = array_rand($input);
   $font = 'arial.ttf';
   $yoffset = rand(20, 40);
   $zoffset = rand(1, 4);
   if(rand(0,100) <= 5) {
      $slope = 1;
   } else if(rand(0,200) == 0) {
      $slope = -30;
   } else {
      $slope = 0;
   }
   return imagettftext($im, 10, $slope, $zoffset, $yoffset, $black, $font, $input[$rand_keys]);
} //END OF FUNCTION
function hideip($ipadress) {
   $part = explode(".", $ipadress);
   $part[3] = "xx";
   return $part[0].".".$part[1].".".$part[2].".".$part[3];
}
//Statistiky
$ip = $_SERVER['REMOTE_ADDR'];
mysql_connect("hostname", "databasename", "password") or die("DB Connection Failed. ".mysql_error());
mysql_select_db("datapodpis") or die(mysql_error());
//NAME CHANGER
if(isset($_POST['submit'])) {
   $name = mysql_real_escape_string($_POST['name']);
   mysql_query("UPDATE data SET name='".$name."' WHERE ip = '".$ip."'");
}

//THE IP API
$proxyip = $_GET['ip'];
if(!$proxyip) {
   $sql = mysql_query("SELECT * FROM data WHERE ip='".$ip."'") or die(mysql_error());
   if (mysql_num_rows($sql) == 0) {
      mysql_query("INSERT INTO data(ip, count, name) VALUES ('".$ip."', '0', '')")  or die(mysql_error());
   }
   $sql = mysql_fetch_array($sql);
   $count = $sql['count'] + 1;
   mysql_query("UPDATE data SET count=".$count." WHERE ip = '".$ip."'") or die(mysql_error());
} else {
   $sql = mysql_query("SELECT * FROM data WHERE ip='".$proxyip."'") or die(mysql_error());
   if (mysql_num_rows($sql) == 0) {
      $sql = mysql_query("SELECT * FROM data WHERE ip='".$ip."'") or die(mysql_error());
      if (mysql_num_rows($sql) == 0) {
         mysql_query("INSERT INTO data(ip, count, name) VALUES ('".$ip."', '0', '')")  or die(mysql_error());
      }
      $sql = mysql_fetch_array($sql);
      $count = $sql['count'] + 1;
      mysql_query("UPDATE data SET count=".$count." WHERE ip = '".$ip."'") or die(mysql_error());
   } else {
   $sql = mysql_fetch_array($sql);
   $count = $sql['count'] + 1;
   mysql_query("UPDATE data SET count=".$count." WHERE ip = '".$proxyip."'") or die(mysql_error());
   }
}
//END
//Count all views
$sqlTwo = mysql_query("SELECT SUM(count) AS value_sum FROM data;") or die(mysql_error());
$sqlTwo = mysql_fetch_assoc($sqlTwo);
$sum = $sqlTwo['value_sum'];
//Count rows in table
$sqlAnother = mysql_query("SELECT COUNT(*) as row_count FROM data;") or die(mysql_error());
$sqlAnother = mysql_fetch_assoc($sqlAnother);
$rowcount = $sqlAnother['row_count'];
//Get average count
$sqlSomething = mysql_fetch_assoc(mysql_query("SELECT AVG(count) AS average_count FROM data"));
$averagecount = $sqlSomething['average_count'];
//Get median
$median_row = floor($rowcount/2);
$sqlMedian = mysql_fetch_assoc(mysql_query("SELECT count AS median FROM data ORDER BY count ASC LIMIT ".$median_row.",1;"));
$median = $sqlMedian['median'];
//GET RANK
$sqlThree = mysql_query("
SELECT ip, count, FIND_IN_SET( count, (   
SELECT GROUP_CONCAT( count
ORDER BY count DESC )
FROM data )
) AS rank
FROM data
WHERE ip =  '".$ip."'");
$sqlThree = mysql_fetch_assoc($sqlThree);
$rank = $sqlThree['rank'];


//THE SCREAMER FOR THEM, MWAHAHAHAHAHA
$ips = array("78.80.98.xx", "89.111.70.xx"); //IP FILTER, NOW USED FOR NAME EDITING BLOCK
/*
if($_SERVER['QUERY_STRING'] !== "podpis" && in_array($ip, $ips)) {
   $filename='mov0001.swf';
   header("Content-Type: application/x-shockwave-flash");
   @readfile($filename);
   die;
} */
//RANDOM
if(!preg_match('/podpis/', $_SERVER['QUERY_STRING']) && rand(0,10000) == 1 && $ip !== "90.178.52.xx") {
   $filename='mov0001.swf';
   header("Content-Type: application/x-shockwave-flash");
   @readfile($filename);
   die;
}

if(!preg_match('/podpis/', $_SERVER['QUERY_STRING'])) { //NOT ON FAKAHEDA
//PODPIS
createpodpis(900,60, false);
ob_start();
imagepng($im);
$png = ob_get_contents();
ob_end_clean();
$data = base64_encode($png);
imagedestroy($im);
//STRÁNKA
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Sejselův podpis</title>
<script language="JavaScript" type="text/javascript">
<!-- Copyright 2005, Sandeep Gangadharan -->
<!-- For more free scripts go to http://www.sivamdesign.com/scripts/ -->
<!--
if (document.getElementById) {
document.writeln('<style type="text/css"><!--')
document.writeln('.texter {display:none} @media print {.texter {display:block;}}')
document.writeln('//--></style>') }

function openClose(theID) {
if (document.getElementById(theID).style.display == "block") { document.getElementById(theID).style.display = "none" }
else { document.getElementById(theID).style.display = "block" } }
// -->
</script>
<style type="text/css">
body {
font-family: Arial, Helvetica, sans-serif;
background-color: black;
color: white;
position: absolute;
left: 50%;
}
div.centered {
position: relative;
left: -50%;
border:2px solid;
border-color: #1a1a1a;
border-radius: 25px;
-moz-border-radius: 25px;
padding: 25px;
text-align: center;
background-color: #404040;
background-image: -webkit-gradient(linear, left top, left bottom, from(#292929), to(#474747));
background-image: -webkit-linear-gradient(top, #292929, #474747);
background-image:    -moz-linear-gradient(top, #292929, #474747);
background-image:      -o-linear-gradient(top, #292929, #474747);
background-image:         linear-gradient(to bottom, #292929, #474747);
}
input[type=text] {
    border: 5px solid grey;
   border-radius: 5px;
   -moz-border-radius: 5px;
    -webkit-box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    -moz-box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    background: rgba(255,255,255,0.5);
    margin: 0 0 5px 0;
}
input[type=submit] {
    border: 5px solid grey;   
   border-radius: 5px;
   -moz-border-radius: 5px;
    -webkit-box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    -moz-box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    box-shadow:
      inset 0 0 8px  rgba(0,0,0,0.1),
            0 0 16px rgba(0,0,0,0.1);
    background: rgba(255,255,255,0.5);
    margin: 0 0 5px 0;
}
hr {
border: 0;
color: #1a1a1a;
background-color: #1a1a1a;
height: 2px;
margin-top: -1px;
}
</style>
</head>
<body>
<div class="centered">
<h2>Náhodný podpis</h2>
<?php
echo "<img src='data:image/png;base64,".$data."' width='900' height='60' alt='Moudra Sejselova' style='border: 5px outset; border-color: #B1B1B1;'>";
?>
<br /><br />
<?php
//WHO'S BEST TABLE
if($proxyip) {
echo "<div style='color: red; font-size: 18px;'>Nyní se vaše zobrazení počítají pro jinou IP. Podívejte se do adresového řádku.";
}
$sqlFour = mysql_query("SELECT * FROM data ORDER BY count DESC LIMIT 15");
$numberFour = 1;
echo "<table align='center' width='120px'><tr style='background-color: #383838;'><th>Místo</th><th>IP/Jméno</th><th>Počet zobrazení</th></tr>";
while ($resultFour = mysql_fetch_array($sqlFour))
{
   if($resultFour['name'] == "") {
   $displayname = hideip($resultFour['ip']);
   } else {
   $displayname = $resultFour['name'];
   }
   if($colortr == true) {
   $colorvalue = "#383838";
   $colortr = false;
   } else {
   $colorvalue = "#404040";
   $colortr = true;
   }
   if($resultFour['ip'] == $ip) {
   $colorvalue = "#7F7F7F";
   $isinthere = true;
   }
   echo "<tr align='left' style='background-color: ".$colorvalue.";'><td>".$numberFour."</td>";
   echo "<td>".$displayname."</td>";
   echo "<td>".$resultFour['count']."</td></tr>";
   $numberFour++;
}
if($isinthere == false) {
$anotherSql = mysql_fetch_array(mysql_query("SELECT * FROM data WHERE ip = '".$ip."'"));
if($anotherSql['name'] == "") {
$displayname = hideip($ip);
} else {
$displayname = $anotherSql['name'];
}
   echo "<tr align='left' style='background-color: #7F7F7F'><td>".$rank."</td>";
   echo "<td>".$displayname."</td>";
   echo "<td>".$count."</td></tr>";
}
?>
</table>
<?php
if($proxyip) { //STOP THE COLOR WHEN ADDING TO ANOTHER IP
echo "</div>";
}
?>
<?php if(!in_array($ip, $ips)) { ?>
<form action="" method="post">
Zde můžete zadat své jméno pro tabulku:<br /><input type="text" name="name"> <input type="submit" name="submit" value="Změnit">
</form>
<?php //TABLE END
}
?>
<div style="border: 2px solid; border-color: #1a1a1a; border-radius: 8px;">
<div onClick="openClose('a1')" style="cursor:hand; cursor:pointer"><b>Vychytávky</b></div>
<div id="a1" class="texter">
<hr>
Zobrazení jen podpisu je možné docílit pokud za adresu přidáte ?podpis<br />
Také můžete připočítávat na jinou IP pomocí ?ip=xx.xx.xx.xx. IP již musí být v databázi<br />
Můžete to i kombinovat: image.php?podpis&amp;ip=xx.xx.xx.xx
</div>
</div>

<br /><br />
<div class="reklama"><endora></div>
<div style="font-size: 11px;">Celkově <?php echo $sum; ?> zobrazení, <?php echo $rowcount; ?> unikátních IP adres. Průměr: <?php echo $averagecount; ?> zobrazení, medián: <?php echo $median; ?> zobrazení.<br />Vygenerování trvalo <?php echo(number_format(microtime(true) - $start_time, 6)); ?> sekund.</div>
</div>
</body>
</html>
<?php


} else {


//ON FAKAHEDA
header('Content-Type: image/png');
createpodpis(900, 60, true);
imagepng($im);
imagedestroy($im);
}
?>


A ano, už vím, že v strinzích v dvojtých uvozovkách mohou být proměnné vevnitř :D
Jinak, tipy jak něco udělat jinak nebo tak něco uvítám :)
01101110011101010110001001110111

Uživatelský avatar
Arcas
Příspěvky: 1406
Věk: 26
Registrován: 13 bře 2012, 19:15
Reputation: 0

Re: Zdrojový kód mého podpisu :)

#2 Příspěvekod Arcas » 09 dub 2013, 18:24

No, tak v prvé řadě by to chtělo odstranit tu ječící furii případně přidat upozornění, že jedinci se slabším srdcem a svěračem tam nemají co dělat :D
Čeština a jiné jazyky jsou Freeware, ale ne Opensource!!! To znamená, že s nimi můžete nakládat jak chcete, ale nesmíte je upravovat...

// no comment

Uranus-Portal.com
Obrázek

Uživatelský avatar
Sejsel
Příspěvky: 4131
Registrován: 19 čer 2011, 09:43
Reputation: 0
Bydliště: /home/sejsel/
Kontaktovat uživatele:

Re: Zdrojový kód mého podpisu :)

#3 Příspěvekod Sejsel » 10 dub 2013, 12:35

Je to s 0,01% šancí, na to člověk, co má štěstí nikdy nenarazí :D Možná sis mohl všimnout, že se objevuje jen když nejsi na ?podpis. A zobrazení se počítají i když jsi na ?podpis.
01101110011101010110001001110111

Uživatelský avatar
Cernokneznik
Příspěvky: 855
Věk: 27
Registrován: 17 črc 2012, 20:23
Reputation: 1
Bydliště: Praha
Kontaktovat uživatele:

Re: Zdrojový kód mého podpisu :)

#4 Příspěvekod Cernokneznik » 07 črc 2014, 23:23

Máš to ještě někde v provozu? chci se vytahovat, že jsem měl největší skóre....
Elkia.club - A gaming club with it's own vanilla survival Minecraft server!
Obrázek apply here

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: Zdrojový kód mého podpisu :)

#5 Příspěvekod Welton123 » 08 črc 2014, 00:40

Našel jsem to! http://mineforlife.g6.cz/fh/image.php Skvělé druhé místo, pak už mě to nebavilo :D
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄


Zpět na „Off topic“

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti