Skip to content

Instantly share code, notes, and snippets.

View anvyst's full-sized avatar
⌨️
Brewing code

Andrey Vystavkin anvyst

⌨️
Brewing code
View GitHub Profile
@anvyst
anvyst / connect.php
Created April 26, 2011 10:22
MySQL sample database
<?php
$connectionHandler = mysql_connect("localhost","username","password");
if( !$connectionHandler ) {
die("Connection Failed: " . mysql_error());
}
$dbname = 'users_db';
mysql_select_db($dbname);
//some simple select queries to test connection
@anvyst
anvyst / mysql_loop_sample.sql
Created November 9, 2012 15:22
mysql_loop_sample
DELIMITER $$
CREATE PROCEDURE DALOOP()
BEGIN
DECLARE i INT Default 1;
da_loop: LOOP
insert into tbl_stuff values(i);
SET i=i+1;
IF i=101 THEN
LEAVE da_loop;
END IF;
<?php
/* Custom API function to extract all products configoptions from tblproducts */
if( preg_match('/^\d+$/', $_POST['pid']) ) {
$resource_id = mysql_query("SELECT * FROM tblproducts WHERE id='{$_POST['pid']}'");
$rows = mysql_num_rows($resource_id);
$xml = array();
$xml[] = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
$xml[] = "<whmcsapi version=\"5.1.3\">\n";
<?php
/* Closures & Anonymous functions test */
$data = array(
array(
'name' => 'John',
'quantity' => '15',
'price' => '5.00'
),
array(
<?php
$password = 'admin';
for ($i=0; $i<=32; $i++) {
$d=rand(1,30)%2;
$salt .= $d ? chr(rand(65,90)) : chr(rand(48,57));
}
$hashed = md5($password . $salt);
#!/bin/bash
####
# Split MySQL dump SQL file into one file per table
# based on http://blog.tty.nl/2011/12/28/splitting-a-database-dump
####
if [ $# -lt 1 ] ; then
echo "USAGE $0 DUMP_FILE [TABLE]"
exit
@anvyst
anvyst / sinatra_minimal.rb
Created December 20, 2013 08:07
sinatra in less then 999B
%w.rack tilt date INT TERM..map{|l|trap(l){$r.stop}rescue require l};$u=Date;$z=($u.new.year + 145).abs;puts "== Almost Sinatra/No Version has taken the stage on #$z for development with backup from Webrick"
$n=Module.new{extend Rack;a,D,S,q=Rack::Builder.new,Object.method(:define_method),/@@ *([^\n]+)\n(((?!@@)[^\n]*\n)*)/m
%w[get post put delete].map{|m|D.(m){|u,&b|a.map(u){run->(e){[200,{"Content-Type"=>"text/html"},[a.instance_eval(&b)]]}}}}
Tilt.mappings.map{|k,v|D.(k){|n,*o|$t||=(h=$u._jisx0301("hash, please");File.read(caller[0][/^[^:]+/]).scan(S){|a,b|h[a]=b};h);v[0].new(*o){n=="#{n}"?n:$t[n.to_s]}.render(a,o[0].try(:[],:locals)||{})}}
%w[set enable disable configure helpers use register].map{|m|D.(m){|*_,&b|b.try :[]}};END{Rack::Handler.get("webrick").run(a,Port:$z){|s|$r=s}}
%w[params session].map{|m|D.(m){q.send m}};a.use Rack::Session::Cookie;a.use Rack::Lock;D.(:before){|&b|a.use Rack::Config,&b};before{|e|q=Rack::Request.new e;q.params.dup.map{|k,v|params[k.to_sym]=v}}}
@anvyst
anvyst / copypaste_row.sql
Created February 10, 2014 14:41
Copy-paste specific row in MySQL
# YOURID - source record
# yourtable - target table;
CREATE TEMPORARY TABLE tmp_table SELECT * FROM yourtable WHERE id=YOURID;
SELECT @new_id:=((SELECT id FROM yourtable ORDER BY id DESC LIMIT 1) + 1);
UPDATE tmp_table SET id=@new_id WHERE id =YOURID;
INSERT INTO yourtable SELECT * FROM tmp_table WHERE id=@new_id;
@anvyst
anvyst / punycode.rb
Last active August 29, 2015 13:57
A quick script for fast conversion of punycode from/to ascii and unicode
#!/usr/bin/env ruby -w
require 'simpleidn'
require 'getoptlong'
opts = GetoptLong.new(
[ '--help', '-h', GetoptLong::NO_ARGUMENT ],
[ '--unicode', '-u', GetoptLong::REQUIRED_ARGUMENT ],
[ '--ascii', '-a', GetoptLong::REQUIRED_ARGUMENT ]
)
@anvyst
anvyst / gzip_import.sh
Created August 19, 2014 07:21
mysql gzip import
gunzip < database.sql.gz | mysql -u user -p database