Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

Ribamar FS http://ribafs.net

« Newer Snippets
Older Snippets »
Showing 1-3 of 3 total  RSS 

Populate PostgreSQL tables

This script in PHP populate with demo data tables Postgresql.
It insert serious registers automatically in a table.
Remove the primary key before run.

   1  
   2  <?php
   3  /** Rotina para popular tabela do PostgreSQL com massa de testes
   4    * Colaboração de Ribamar FS - http://ribafs.net - 14/03/2007
   5    * Requer remoção da chave primáia antes da execução.
   6    */ 
   7  ?>
   8  
   9  <html><head><title>Inserir Registros de Teste</title></head>
  10  <body bgcolor=''>
  11  <h2 align=center>Cadastrar Tabela do PostgreSQL com Massa de Testes</h2>
  12  <h3 align=center><font color=red>Remova chave primáia da tabela, antes de executar</font></h3>
  13  <h4 align=center>Observe que nem todos os tipos de dados foram contemplados, alguns ficarão como string</h4>
  14  
  15  <table align=center>
  16  <form method='POST' name=frmIns action='popula_table_pg.php'>
  17  
  18  <tr><td>Host</td><td><input type=text name='host' value='127.0.0.1'></td></tr>
  19  <tr><td>Banco</td><td><input type=text name='banco' value='cliente'></td></tr>
  20  <tr><td>Usuário</td><td><input type=text name='usuario' value='postgres'></td></tr>
  21  <tr><td>Senha</td><td><input type=text name='senha' value='postgres'></td></tr>
  22  <tr><td>Tabela</td><td><input type=text name='tabela' value='clientes'></td></tr>
  23  <tr><td>Registros</td><td><input type=text name='registros' value=5></td></tr>
  24  <tr><td></td><td><input type=submit name='popular' value='Popular'></td></tr>
  25  </form>
  26  </table>
  27  </body>
  28  </html>
  29  
  30  <?php
  31  if(isset($_POST['popular'])){
  32  	$host=$_POST['host'];
  33  	$banco=$_POST['banco'];
  34  	$usuario=$_POST['usuario'];
  35  	$senha=$_POST['senha'];
  36  	$tabela=$_POST['tabela'];
  37  	$registros=$_POST['registros'];
  38  
  39  	$conexao=pg_connect("host=$host user=$usuario password=$senha dbname=$banco port=5432");
  40  	if (!$conexao){
  41  		die('Erro ao conectar ao banco<br>'.pg_last_error($conexao));
  42  	}
  43  	$str="SELECT * FROM $tabela";
  44  	$consulta= pg_query($conexao,$str);
  45  	$nc=pg_num_fields($consulta);
  46  	$nr=pg_num_rows($consulta);
  47  
  48     $n='';//numericos (int, tinyint, smallint, bigint, etc)
  49     $r=''; //reais (float e double)
  50     $s="'";//strings
  51     $d=date('Y-m-d'); //datas
  52     $dt=date('Y-m-d H:i:s');//datatimes
  53     $o=''; //outros
  54  
  55     	$inscod .="INSERT INTO $tabela (";
  56     	for ($j = 0; $j < $nc; $j++) {
  57        $campo = pg_field_name($consulta, $j);
  58  		if ($j < $nc-1)	$inscod .= "$campo,";
  59       	else $inscod .= "$campo";
  60  	}
  61  	$inscod .= ")";	 
  62      $inscod .= " VALUES (";
  63  
  64     for ($j = 0; $j < $nc; $j++) {   
  65     $tam   = pg_field_size($consulta, $j);
  66     if($tam == -1) $tam=20; //Caso queira limitar os campos ao máximo de 20 posiçes
  67  		if ($j < $nc-1){ 
  68  			switch (pg_field_type($consulta, $j)){
  69  				case 'int4':
  70  					$n=str_pad($n,$tam,'12345679890');
  71  					$inscod .= "$n,";
  72  					break;
  73       			case 'float4':
  74  					$r=str_pad($r,$tam,'1234567890');
  75  					$inscod .= "$r,";
  76  					break;
  77  				case 'bpchar':
  78  				case 'varchar':
  79  					$s=str_pad($s,$tam,"abcdefghijklmnopqrstuvxyz");
  80  					$inscod .= "$s',";
  81  					break;
  82  				case 'date':
  83  		 		    $inscod .= "'$d',";
  84  					break;
  85  				case 'timestamp':
  86  					$inscod .= "'$dt',";
  87  					break;
  88  				case 'text':
  89  					$inscod .= "'$t'";
  90  					break;
  91  				default:
  92  					$o=str_pad($o,$tam,"abcdefghijklmnopqrstuvxyz");
  93  					$inscod .= "'$o',";
  94  					break;
  95  			}
  96       	}else{
  97       		switch (pg_field_type($consulta, $j)){
  98  				case 'int4':
  99  					$n=str_pad($n,$tam,'1234567890');
 100  					$inscod .= "$n";
 101  					break;
 102       			case 'float4':
 103  					$r=str_pad($r,$tam,'1234567890');
 104  					$inscod .= "$r";
 105  					break;
 106  				case 'bpchar':
 107  				case 'varchar':
 108  					$s=str_pad($s,$tam,"abcdefghijklmnopqrstuvxyz");
 109  					$inscod .= "$s'";
 110  					break;
 111  				case 'date':
 112  					$inscod .= "'$d'";
 113  					break;
 114  				case 'timestamp':
 115  					$inscod .= "'$dt'";
 116  					break;
 117  				case 'text':
 118  					$inscod .= "'$t'";
 119  					break;
 120  				default:
 121  					$o=str_pad($o,$tam,"abcdefghijklmnopqrstuvxyz");
 122  					$inscod .= "'$o'";
 123  					break;
 124       		}
 125       	}
 126       	
 127  	}
 128      $inscod .=");";	
 129  	
 130      for($r=1;$r<=$registros;$r++){	   
 131  		//echo  $inscod;
 132  	   	if(!pg_query($conexao,$inscod)) die ("Erro na inclusã<br>".pg_last_error($conexao));
 133      }	   
 134  }
 135  ?>
 136  

Populate MySQL tables

This script in PHP to populate with demo data tables MySQL.
Remove the primary key before run.

   1  
   2  <?php
   3  /** Rotina para popular tabela do MySQL com massa de testes
   4    * Colaboração de Ribamar FS - http://ribafs.net - 14/03/2007
   5    * Requer remoção da chave primária antes da execução.
   6    */ 
   7  ?>
   8  
   9  <html><head><title>Inserir Registros de Teste</title></head>
  10  <body bgcolor=''>
  11  <h2 align=center>Cadastrar Tabela do MySQL com Massa de Testes</h2>
  12  <h3 align=center><font color=red>Remova chave primáia da tabela, antes de executar</font></h3>
  13  <h4 align=center>Observe que nem todos os tipos de dados foram contemplados, alguns ficarão como string</h4>
  14  
  15  <table align=center>
  16  <form method='POST' name=frmIns action='popula_table.php'>
  17  
  18  <tr><td>Host</td><td><input type=text name='host' value='127.0.0.1'></td></tr>
  19  <tr><td>Banco</td><td><input type=text name='banco' value='cliente'></td></tr>
  20  <tr><td>Usuáio</td><td><input type=text name='usuario' value='root'></td></tr>
  21  <tr><td>Senha</td><td><input type=text name='senha'></td></tr>
  22  <tr><td>Tabela</td><td><input type=text name='tabela' value='clientes'></td></tr>
  23  <tr><td>Registros</td><td><input type=text name='registros' value=5></td></tr>
  24  <tr><td></td><td><input type=submit name='popular' value='Popular'></td></tr>
  25  </form>
  26  </table>
  27  </body>
  28  </html>
  29  
  30  <?php
  31  if(isset($_POST['popular'])){
  32  	$host=$_POST['host'];
  33  	$banco=$_POST['banco'];
  34  	$usuario=$_POST['usuario'];
  35  	$senha=$_POST['senha'];
  36  	$tabela=$_POST['tabela'];
  37  	$registros=$_POST['registros'];
  38  	$numericos=$_POST['numericos'];
  39  
  40  	$conexao=mysql_connect($host,$usuario,$senha);
  41  	if ($conexao){
  42  		$sel=mysql_select_db($banco,$conexao);
  43  		if(!$sel) die('Erro ao selecionar o banco'.mysql_error());
  44  	}else{
  45  		die ('Erro ao conectar ao banco '.mysql_error());
  46  	}
  47  	$str="SELECT * FROM $tabela";
  48  	$consulta= mysql_query($str,$conexao);
  49  	$nc=mysql_num_fields($consulta);
  50  	$nr=mysql_num_rows($consulta);
  51  
  52     $n='';//numericos (int, tinyint, smallint, bigint, etc)
  53     $r=''; //reais (float e double)
  54     $s="'";//strings
  55     $d=date('Y-m-d'); //datas
  56     $dt=date('Y-m-d H:i:s');//datatimes
  57     $o=''; //outros
  58  
  59     	$inscod .="INSERT INTO $tabela (";
  60     	for ($j = 0; $j < $nc; $j++) {
  61        $campo = mysql_field_name($consulta, $j);
  62  		if ($j < $nc-1)	$inscod .= "$campo,";
  63       	else $inscod .= "$campo";
  64  	}
  65  	$inscod .= ")";	 
  66      $inscod .= " VALUES (";
  67  
  68     for ($j = 0; $j < $nc; $j++) {   
  69     $tam   = mysql_field_len($consulta, $j);
  70     //if(($tam)>20) $tam=20; //Caso queira limitar os campos ao máximo de 20 posições
  71  		if ($j < $nc-1){ 
  72  			switch (mysql_field_type($consulta, $j)){
  73  				case 'int':
  74  					$n=str_pad($n,$tam,'12345679890');
  75  					$inscod .= "$n,";
  76  					break;
  77       			case 'real':
  78  					$r=str_pad($r,$tam,'1234567890');
  79  					$inscod .= "$r,";
  80  					break;
  81  				case 'string':
  82  					$s=str_pad($s,$tam,"abcdefghijklmnopqrstuvxyz");
  83  					$inscod .= "$s',";
  84  					break;
  85  				case 'date':
  86  		 		    $inscod .= "'$d',";
  87  					break;
  88       			case 'datetime':
  89  				case 'timestamp':
  90  					$inscod .= "'$dt',";
  91  					break;
  92  				case 'blog':
  93  					$inscod .= "'$t'";
  94  					break;
  95  				default:
  96  					$o=str_pad($o,$tam,"abcdefghijklmnopqrstuvxyz");
  97  					$inscod .= "'$o',";
  98  					break;
  99  			}
 100       	}else{
 101       		switch (mysql_field_type($consulta, $j)){
 102  				case 'int':
 103  					$n=str_pad($n,$tam,'1234567890');
 104  					$inscod .= "$n";
 105  					break;
 106       			case 'real':
 107  					$r=str_pad($r,$tam,'1234567890');
 108  					$inscod .= "$r";
 109  					break;
 110       			case 'string':
 111  					$s=str_pad($s,$tam,"abcdefghijklmnopqrstuvxyz");
 112  					$inscod .= "$s'";
 113  					break;
 114  				case 'date':
 115  					$inscod .= "'$d'";
 116  					break;
 117  	     		case 'datetime':
 118  				case 'timestamp':
 119  					$inscod .= "'$dt'";
 120  					break;
 121  				case 'blog':
 122  					$inscod .= "'$t'";
 123  					break;
 124  				default:
 125  					$o=str_pad($o,$tam,"abcdefghijklmnopqrstuvxyz");
 126  					$inscod .= "'$o'";
 127  					break;
 128       		}
 129       	}
 130       	
 131  	}
 132      $inscod .=");";	
 133  	
 134      for($r=1;$r<=$registros;$r++){	   
 135  		//echo  $inscod;
 136  	   	if(!mysql_query($inscod,$conexao)) die ("Erro na inclusão".mysql_error());
 137      }	   
 138  }
 139  ?>
 140  

Directory List with PHP

// description of your code here

This code list all files and subdirectories in a dirctory with links.

   1  
   2  
   3  <html><head><title>ribafs.net - Tutoriais</title></head>
   4  <body bgcolor='#FFFACD'>
   5  <h2 align=center><a href="http://ribafs.net">http://ribafs.net - <?php echo date('d/m/Y H:i:s'); ?></a></h2>
   6  
   7  <?php
   8  $dn = opendir (dirname(__FILE__));
   9  $exclude = array("index.php", ".", "..");
  10  
  11  // adiciona os arquivos ao array $arquivos
  12  while($fn = readdir($dn)) {
  13  	if ($fn == $exclude[0] || $fn == $exclude[1] || $fn == $exclude[2]) continue;
  14  	$arquivos[] = $fn;
  15  }
  16  // ordena o vetor
  17  sort($arquivos);
  18  // exibe os arquivos
  19  
  20  foreach ($arquivos as $arquivo)
  21  
  22  if (is_dir($arquivo)){
  23  	$dir .= "<img src='/imagens/diretorio.png'>&nbsp;<a href='$arquivo'>$arquivo</a><br>";
  24  }else{
  25  	$tamanho = filesize($arquivo);
  26  	$m = 'bytes';
  27  	if ($tamanho>1024) {
  28  		$tamanho=round($tamanho/1024,2);
  29  		$m = 'KB';
  30  	} elseif($tamanho > 1024*1024){
  31  		$tamanho = round(($tamanho/1024)/1024,2);
  32  		$m = 'MB';
  33  	}
  34  	$arq .= "<img src='/imagens/arquivo.png'>&nbsp;<a href='$arquivo'>$arquivo</a> - $tamanho $m<br>";
  35  }
  36  echo $dir . $arq;
  37  
  38  closedir($dn);
  39  ?>
  40  
  41  
« Newer Snippets
Older Snippets »
Showing 1-3 of 3 total  RSS