Exportando tabela MySQL para formato XLS usando PHP

Esta funcionalidade geralmente é usada para exportação de relatórios ou ainda backup em formato CVS ( Excel ). É muito simples a função exporta todos os dados de uma determinada tabela para o formato CSV.

//create query to select as data from your table
$select = "SELECT * FROM table_name";

//run mysql query and then count number of fields
$export = mysql_query ( $select )
or die ( "Sql error : " . mysql_error( ) );
$fields = mysql_num_fields ( $export );

//create csv header row, to contain table headers
//with database field names
for ( $i = 0; $i < $fields; $i++ ) {
$header .= mysql_field_name( $export , $i ) . ",";
}

//this is where most of the work is done.
//Loop through the query results, and create
//a row for each
while( $row = mysql_fetch_row( $export ) ) {
$line = '';
//for each field in the row
foreach( $row as $value ) {
//if null, create blank field
if ( ( !isset( $value ) ) || ( $value == "" ) ){
$value = ",";
}
//else, assign field value to our data
else {
$value = str_replace( '"' , '""' , $value );
$value = '"' . $value . '"' . ",";
}
//add this field value to our row
$line .= $value;
}
//trim whitespace from each row
$data .= trim( $line ) . "\n";
}
//remove all carriage returns from the data
$data = str_replace( "\r" , "" , $data );

//create a file and send to browser for user to download
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header( "Content-disposition: filename=".$file_name.".csv");
print "$header\n$data";
exit;

Utilizando o Json de geolocalização do Wikimedia

Ontem estava analisando um código de um adware e encontrei algo interessante, um Json para geolocalização do Wikimedia. É bem simples de usar basta fazer um curl via php ou python apontando para a url

http://bits.wikimedia.org/geoiplookup

Depois é só fazer o parser de acordo com sua necessidade.

 

Criando um ip scanner usando Python

Neste exemplo mostrarei como criar um scanner de ip para você descobrir os hosts online em sua rede utilizando a linguagem Python.

 

import os
import time
from subprocess import Popen

devnull = open(os.devnull, ‘wb’)

print “Jaccon Ping Scan 0.1”
print “… type enter to continue ”
raw_input()
str1=raw_input(“Enter the ip range ( ex: 192.168.0 ) “)

print “scanning ip range “,str1
print “-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=”

p = [] # ip -> process
for n in range(1,255): # start ping processes
ip = str1+”.%d” % n
p.append((ip, Popen([‘ping’, ‘-c’, ‘3’, ip], stdout=devnull)))
while p:
for i, (ip, proc) in enumerate(p[:]):
if proc.poll() is not None: # ping finished
p.remove((ip, proc)) # this makes it O(n**2)
if proc.returncode == 0:
print(‘%s active’ % ip)
elif proc.returncode == 2:
print(‘%s no response’ % ip)
else:
print(‘%s error’ % ip)
time.sleep(.04)
devnull.close()

Para baixar o script clique aqui

Desabilitando o inicio de parágragos com

no TyneMCE

O editor WYSWYG TyneMCE têm por padrão adicionar inicio de parágrafos com a tag <p>. Em alguns casos você não precisará disto e para alterar isto é simples

Altere os parâmetros do arquivo tynemce.js para que fique igual ao exemplo abaixo:

force_p_newlines : false,
force_br_newlines : true,
forced_root_block : ”,