Skip to content

Instantly share code, notes, and snippets.

View vimishor's full-sized avatar

Alexandru Guzinschi vimishor

View GitHub Profile
@vimishor
vimishor / gist:5950053
Last active December 19, 2015 11:49
Take notes inside your browser, with Sublime Text flavor.
// paste in address bar
data:text/html,<title>Browser Editor</title><style type="text/css">#e{font-size: 16px; position:absolute;top:0;right:0;bottom:0;left:0;}</style><div id="e"></div><script src="http://d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js" type="text/javascript" charset="utf-8"></script><script>var e=ace.edit("e");e.setTheme("ace/theme/monokai");e.getSession().setMode("ace/mode/javascript");</script>

Există greșeli în următorul cod ?

function valid_email($email) {
    //Regular expression string to evaluate the email
    $regex = '/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/';

    //Checks for a match to the expression
    if (preg_match($regex, $email)) {
 //Check for valid domain(helps avoid eronious emails)
@vimishor
vimishor / readme.md
Created March 15, 2013 12:15
Răspunsul la problema de Luni - 11.Mar.2013
Răspunsul la problema de Luni - 11.Mar.2013

Deși variabila name primită de la utilizator prin $_GET sau $_POST este filtrată, lipsa ghilimelelor de la atributul href fac acest cod vulnerabil la un atac XSS.

Standardele susțin și obligă folosirea ghilimelelor la valoarea oricărui atribut HTML. Versiunea simplă a motivului este că ghilimelele au ca scop delimitarea valorilor și atunci când ele nu există, browser-ul nu știe unde începe și unde se termină valoarea aferentă unui anume atribut, iar drept urmare lucruri urâte se pot întâmpla.

Să luăm drept exemplu codul postat de mine anterior. Putem specifica un nume folosind $_GET sau $_POST ; de dragul ușurinței, hai să folosim $_GET:

// Accesăm: 
@vimishor
vimishor / date.php
Created December 18, 2012 22:17
The clean and fast way for changing date format in PHP
<?php
$date = new DateTime('now');
echo $date->format('d/m/Y').PHP_EOL; // format: day/month/year
echo $date->format('m-d-Y').PHP_EOL; // format: month-day-year
echo $date->format('Y-m-d').PHP_EOL; // format: year-month-day
// add 3 days to current date and output using format year-day-month
echo $date->setTimestamp( strtotime('+3 days', $date->getTimestamp()) )->format('Y-d-m');
@vimishor
vimishor / fizzbuzz.php
Created December 9, 2012 22:23
Fizzbuzz
<?php
// Version #1: contains logic to specifically print `FizzBuzz`
foreach(range(1, 100) as $i) {
echo ($i % 3 == 0) ?
($i % 5 == 0 ? $i.' FizzBuzz'.PHP_EOL : $i.' Fizz'.PHP_EOL) :
($i % 5 == 0 ? $i.' Buzz'.PHP_EOL : $i.PHP_EOL);
}
// Version #2: without specific logic to print `FizzBuzz`
@vimishor
vimishor / lamuriri-regnick.md
Created July 25, 2012 13:54
lamuriri regnick

Adauga un cont:

    INSERT INTO 
        {table_prefix}users 
            (login, password, email, register_date, active, activation_key, account_flags) 
        VALUES 
            ($login, $password, $email, time(), $active, $random_string, $account_flags);
#!/usr/bin/env bash
#
# Register a new deploy-key on Bitbucket
#
# Usage: ./bitbucket-deploy-key.sh <username> <password> key-test ~/.ssh/id_rsa.pub vimishor my-super-repo
#
USERNAME=$1
PASSWORD=$2
@vimishor
vimishor / pre-commit
Created April 14, 2015 19:31
Prevents debug traces and sensitive data to be commited.
#!/bin/sh
#
# Prevents debug traces and sensitive data to be commited.
#
# What to search for
FUNCTIONS='var_dump\(|phpinfo\(|print_r\('
# Prevent the commit if something is found.
# default: true
#!/bin/sh​
# Build Zsh from sources on Ubuntu.
# From http://zsh.sourceforge.net/Arc/git.html and sources INSTALL file.
# Some packages may be missing
sudo apt-get install -y git-core gcc make autoconf yodl libncursesw5-dev texinfo
git clone git://zsh.git.sf.net/gitroot/zsh/zsh
cd zsh