Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!

pgpshare.class.php

By: cuonic on Apr 8th, 2012  |  syntax: PHP  |  size: 5.02 KB  |  views: 41  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <?php
  2.  
  3. class PGPShare
  4. {
  5.         public $mysqli;
  6.         public $errormsg;
  7.        
  8.         function __construct()
  9.         {
  10.                 include("config.php");
  11.                
  12.                 $this->mysqli = new mysqli($db['host'], $db['user'], $db['pass'], $db['name']);
  13.         }
  14.        
  15.         function AddUser1Key($key)
  16.         {
  17.                 $id = substr(hash("SHA512", microtime()), 10, 10);
  18.                 $ip = $_SERVER['REMOTE_ADDR'];
  19.                
  20.                 if(strlen($key) == 0) { $this->errormsg = 1; return false; }
  21.                 elseif(strlen($key) < 10) { $this->errormsg = 2; return false; }
  22.                 elseif(strlen($key) > 4294967295) { $this->errormsg = 3; return false; }
  23.                 else
  24.                 {
  25.                         $user2key = "None";
  26.                
  27.                         $query = $this->mysqli->prepare("INSERT INTO `keys` (`id`, `user1key`, `user2key`, `user1ip`) VALUES (?, ?, ?, ?)");
  28.                         $query->bind_param("ssss", $id, $key, $user2key, $ip);
  29.                         $query->execute();
  30.                         $query->close();
  31.                        
  32.                         return $id;
  33.                 }
  34.         }
  35.        
  36.         function AddUser2Key($key, $id)
  37.         {
  38.                 if(strlen($id) == 0) { $this->errormsg = 1; return false; }
  39.                 elseif(strlen($id) > 10) { $this->errormsg = 2; return false; }
  40.                 elseif(strlen($id) < 10) { $this->errormsg = 3; return false; }
  41.                 elseif(strlen($key) == 0) { $this->errormsg = 4; return false; }
  42.                 elseif(strlen($key) < 10) { $this->errormsg = 5; return false; }
  43.                 elseif(strlen($key) > 4294967295) { $this->errormsg = 6; return false; }
  44.                 else
  45.                 {
  46.                         $query = $this->mysqli->prepare("SELECT `user2key` FROM `keys` WHERE `id`=?");
  47.                         $query->bind_param("s", $id);
  48.                         $query->bind_result($user2key);
  49.                         $query->execute();
  50.                         $query->store_result();
  51.                         $count = $query->num_rows;
  52.                         $query->fetch();
  53.                         $query->close();
  54.                        
  55.                         if($count == 0)
  56.                         {
  57.                                 $this->errormsg = 7;
  58.                                 return false;
  59.                         }
  60.                         else
  61.                         {
  62.                                 if($user2key !== "None")
  63.                                 {
  64.                                         $this->errormsg = 8;
  65.                                         return false;
  66.                                 }
  67.                                 else
  68.                                 {
  69.                                         $query = $this->mysqli->prepare("UPDATE `keys` SET `user2key`=? WHERE `id`=?");
  70.                                         $query->bind_param("ss", $key, $id);
  71.                                         $query->execute();
  72.                                         $query->close();
  73.                                        
  74.                                         return true;
  75.                                 }
  76.                         }
  77.                 }
  78.         }
  79.        
  80.         function VerifyId($id)
  81.         {
  82.                 if(strlen($id) == 0) { $this->errormsg = 1; return false; }
  83.                 elseif(strlen($id) > 10)  { $this->errormsg = 2; return false; }
  84.                 elseif(strlen($id) < 10) { $this->errormsg = 3; return false; }
  85.                 else
  86.                 {
  87.                         if(!$query = $this->mysqli->prepare("SELECT `user2ip` FROM `keys` WHERE `id`=?"))
  88.                         {
  89.                                 $this->errormsg = $query->mysqli->error;
  90.                         }
  91.                         $query->bind_param("s", $id);
  92.                         $query->bind_result($user2ip);
  93.                         $query->execute();
  94.                         $query->store_result();
  95.                         $count = $query->num_rows;
  96.                         $query->fetch();
  97.                        
  98.                         if($count == 0)
  99.                         {              
  100.                                 $this->errormsg = 4;
  101.                                 return false;
  102.                         }
  103.                         else
  104.                         {
  105.                                 if($user2ip !== "0.0.0.0")
  106.                                 {
  107.                                         $this->errormsg = 5;
  108.                                         return false;
  109.                                 }
  110.                                 else
  111.                                 {
  112.                                         return true;
  113.                                 }
  114.                         }
  115.                 }
  116.         }
  117.        
  118.         function VerifyIp($id)
  119.         {
  120.                 if(strlen($id) == 0) { $this->errormsg = 1; return false; }
  121.                 elseif(strlen($id) > 10)  { $this->errormsg = 2; return false; }
  122.                 elseif(strlen($id) < 10) { $this->errormsg = 3; return false; }
  123.                 else
  124.                 {
  125.                         $ip = $_SERVER['REMOTE_ADDR'];
  126.                
  127.                         $query = $this->mysqli->prepare("SELECT * FROM `keys` WHERE `id`=? AND `user1ip`=?");
  128.                         $query->bind_param("ss", $id, $ip);
  129.                         $query->execute();
  130.                         $query->store_result();
  131.                         $count = $query->num_rows;
  132.                         $query->close();
  133.                        
  134.                         if($count == 0)
  135.                         {
  136.                                 $query = $this->mysqli->prepare("UPDATE `keys` SET `user2ip`=? WHERE `id`=?");
  137.                                 $query->bind_param("ss", $ip, $id);
  138.                                 $query->execute();
  139.                                 $query->close();
  140.                                
  141.                                 return true;
  142.                         }
  143.                         else
  144.                         {
  145.                                 $this->errormsg = 4;
  146.                                 return false;
  147.                         }
  148.                 }
  149.         }
  150.        
  151.         function GetUser1Key($id)
  152.         {
  153.                 if(strlen($id) == 0) { $this->errormsg = 1; return false; }
  154.                 elseif(strlen($id) > 10)  { $this->errormsg = 2; return false; }
  155.                 elseif(strlen($id) < 10) { $this->errormsg = 3; return false; }
  156.                 else
  157.                 {
  158.                         $query = $this->mysqli->prepare("SELECT `user1key` FROM `keys` WHERE `id`=?");
  159.                         $query->bind_param("s", $id);
  160.                         $query->bind_result($user1key);
  161.                         $query->execute();
  162.                         $query->store_result();
  163.                         $count = $query->num_rows;
  164.                         $query->fetch();
  165.                         $query->close();
  166.                        
  167.                         if($count == 0)
  168.                         {
  169.                                 $this->errormsg = 4;
  170.                                 return false;
  171.                         }
  172.                         else
  173.                         {
  174.                                 return $user1key;
  175.                         }
  176.                 }
  177.         }
  178.        
  179.         function GetUser2Key($id)
  180.         {
  181.                 if(strlen($id) == 0) { $this->errormsg = 1; return false; }
  182.                 elseif(strlen($id) > 10)  { $this->errormsg = 2; return false; }
  183.                 elseif(strlen($id) < 10) { $this->errormsg = 3; return false; }
  184.                 else
  185.                 {
  186.                         $ip = $_SERVER['REMOTE_ADDR'];
  187.                
  188.                         $query = $this->mysqli->prepare("SELECT `user1ip`,`user2key` FROM `keys` WHERE `id`=?");
  189.                         $query->bind_param("s", $id);
  190.                         $query->bind_result($user1ip, $user2key);
  191.                         $query->execute();
  192.                         $query->store_result();
  193.                         $count = $query->num_rows;
  194.                         $query->fetch();
  195.                         $query->close();
  196.                        
  197.                         if($count == 0)
  198.                         {
  199.                                 $this->errormsg = 4;
  200.                                 return false;
  201.                         }
  202.                         else
  203.                         {
  204.                                 if($ip == $user1ip)
  205.                                 {
  206.                                         return $user2key;
  207.                                 }
  208.                                 else
  209.                                 {
  210.                                         $this->errormsg = 5;
  211.                                         return false;
  212.                                 }
  213.                         }
  214.                 }
  215.         }
  216. }
  217.                
  218.  
  219. ?>