Acabei de terminar o projeto em que estava trabalhando recentemente e estou bastante livre. Venha aqui e compartilhe algumas das habilidades que acumulei com você!
1. Em relação ao método de redirecionamento PHP um: header("Location: index.php");
Método 2: echo "<script>window.location ="$PHP_SELF";</script>";
" CONTENT="0;
função navegar_infor() {
$navegador="";$browserver="";
$Navegadores =array("Lynx","MOSAIC","AOL","Opera","JAVA","MacWeb","WebExplorer","OmniWeb");
$Agente = $GLOBALS["HTTP_USER_AGENT"];
para ($i=0; $i<=7; $i++) {
if (strpos($Agente,$Navegadores[$i])) {
$navegador = $navegadores[$i];
$browserver="";
}
}
if (ereg("Mozilla",$Agente) && !ereg("MSIE",$Agente)) {
$temp =explodir("(", $Agente); $Part=$temp[0];
$temp =explodir("/", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver=$temp[0]);
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browserver = "$browserver";
$navegador = "Netscape Navigator";
}
if (ereg("Mozilla",$Agente) && ereg("Opera",$Agente)) {
$temp =explodir("(", $Agente); $Part=$temp[1];
$temp =explodir(")", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browserver = "$browserver";
$navegador = "Ópera";
}
if (ereg("Mozilla",$Agente) && ereg("MSIE",$Agente)) {
$temp = explode("(", $Agente); $Part=$temp[1];
$temp = explodir(";",$Part); $Part=$temp[1];
$temp = explode(" ",$Part);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/"," \1",$browserver );
$browserver = "$browserver";
$navegador = "Internet Explorer";
}
if ($navegador!="") {
$browseinfo = "$navegador$browserver";
}outro {
$browseinfo = "Desconhecido";
}
return $navegarinfo;
}
//Chama o método $browser=browseinfo(); retorna diretamente o resultado
3. Obtenha o sistema operacional do visitante
função osinfo() {
$os="";
$Agente = $GLOBALS["HTTP_USER_AGENT"];
if (eregi('win',$Agente) && strpos($Agente, '95')) {
$os="Windows 95";
}
elseif (eregi('win 9x',$Agente) && strpos($Agente, '4.90')) {
$os="Windows ME";
}
elseif (eregi('win',$Agente) && ereg('98',$Agente)) {
$os="Windows 98";
}
elseif (eregi('win',$Agente) && eregi('nt 5.0',$Agente)) {
$os="Windows 2000";
}
elseif (eregi('win',$Agente) && eregi('nt',$Agente)) {
$os="Windows NT";
}
elseif (eregi('win',$Agente) && eregi('nt 5.1',$Agente)) {
$os="Windows XP";
}
elseif (eregi('win',$Agente) && ereg('32',$Agente)) {
$os="Windows 32";
}
elseif (eregi('linux',$Agente)) {
$os="Linux";
}
elseif (eregi('unix',$Agente)) {
$os="Unix";
}
elseif (eregi('sol',$Agente) && eregi('os',$Agente)) {
$os="SunOS";
}
elseif (eregi('ibm',$Agente) && eregi('os',$Agente)) {
$os="IBM OS/2";
}
elseif (eregi('Mac',$Agente) && eregi('PC',$Agente)) {
$os="Macintosh";
}
elseif (eregi('PowerPC',$Agente)) {
$os="PowerPC";
}
elseif (eregi('AIX',$Agente)) {
$os="AIX";
}
elseif (eregi('HPUX',$Agente)) {
$os="HPUX";
}
elseif (eregi('NetBSD',$Agente)) {
$os="NetBSD";
}
elseif (eregi('BSD',$Agente)) {
$os="BSD";
}
elseif (ereg('OSF1',$Agente)) {
$os="OSF1";
}
elseif (ereg('IRIX',$Agente)) {
$os="IRIX";
}
elseif (eregi('FreeBSD',$Agente)) {
$os="FreeBSD";
}
if ($os=='') $os = "Desconhecido";
retornar $os;
}
//Chama o método $os=os_infor();
4. Classe de formato de arquivo
$mime_types = array(
'gif' => 'imagem/gif',
'jpg' => 'imagem/jpeg',
'jpeg' => 'imagem/jpeg',
'jpe' => 'imagem/jpeg',
'bmp' => 'imagem/bmp',
'png' => 'imagem/png',
'tif' => 'imagem/tiff',
'tiff' => 'imagem/tiff',
'pict' => 'imagem/x-pict',
'pic' => 'imagem/x-pict',
'pct' => 'imagem/x-pict',
'tif' => 'imagem/tiff',
'tiff' => 'imagem/tiff',
'psd' => 'imagem/x-photoshop',
'swf' => 'aplicativo/x-shockwave-flash',
'js' => 'aplicativo/x-javascript',
'pdf' => 'aplicativo/pdf',
'ps' => 'aplicativo/postscript',
'eps' => 'aplicativo/postscript',
'ai' => 'aplicativo/postscript',
'wmf' => 'aplicativo/x-msmetafile',
'css' => 'texto/css',
'htm' => 'texto/html',
'html' => 'texto/html',
'txt' => 'texto/simples',
'xml' => 'texto/xml',
'wml' => 'texto/wml',
'wbmp' => 'image/vnd.wap.wbmp',
'mid' => 'áudio/midi',
'wav' => 'áudio/wav',
'mp3' => 'áudio/mpeg',
'mp2' => 'áudio/mpeg',
'avi' => 'vídeo/x-msvídeo',
'mpeg' => 'vídeo/mpeg',
'mpg' => 'vídeo/mpeg',
'qt' => 'vídeo/quicktime',
'mov' => 'vídeo/quicktime',
'lha' => 'aplicativo/x-lha',
'lzh' => 'aplicativo/x-lha',
'z' => 'aplicativo/x-compress',
'gtar' => 'aplicativo/x-gtar',
'gz' => 'aplicativo/x-gzip',
'gzip' => 'aplicativo/x-gzip',
'tgz' => 'aplicativo/x-gzip',
'tar' => 'aplicativo/x-tar',
'bz2' => 'aplicativo/bzip2',
'zip' => 'aplicativo/zip',
'arj' => 'aplicativo/x-arj',
'rar' => 'aplicativo/x-rar-comprimido',
'hqx' => 'aplicativo/mac-binhex40',
'sentar' => 'aplicativo/x-stuffit',
'bin' => 'aplicativo/x-macbinary',
'uu' => 'texto/x-uuencode',
'uue' => 'texto/x-uuencode',
'latex' => 'aplicativo/x-latex',
'ltx' => 'aplicativo/x-latex',
'tcl' => 'aplicativo/x-tcl',
'pgp' => 'aplicativo/pgp',
'asc' => 'aplicativo/pgp',
'exe' => 'aplicativo/x-msdownload',
'doc' => 'aplicativo/msword',
'rtf' => 'aplicativo/rtf',
'xls' => 'aplicativo/vnd.ms-excel',
'ppt' => 'application/vnd.ms-powerpoint',
'mdb' => 'aplicativo/x-msaccess',
'wri' => 'aplicativo/x-mswrite',
);
5. Gere documento Excel com php
<?
header("Tipo de conteúdo:application/vnd.ms-excel");
header("Disposição de conteúdo: nome do arquivo = teste.xls");
echo "teste1t";
echo "teste2tn";
echo "teste1t";
echo "teste2tn";
echo "teste1t";
echo "teste2tn";
echo "teste1t";
echo "teste2tn";
echo "teste1t";
echo "teste2tn";
echo "teste1t";
echo "teste2tn";
?>
//Altere o cabeçalho do arquivo correspondente para formatos de arquivo de saída
como .doc.
Método um:
//$db->rows[$i][date] é o valor do campo datetime no banco de dados.
$hoje=hora();
$theDay=date("Ymd H:i:s",$hoje-24*3600);
$newTag=$db->rows[$i][date]>=$theDay?"<img src='../image/newinfor.gif'>":"";
Método dois:
$newTag=$db->rows[$i][date]>=date("Ymd 00:00:00")?"<img src='../image/newinfor.gif'>":"";
7. Exemplo de encapsulamento de banco de dados
<?php
//------------------------------------------------ ------------------------------------------
// ※Construtor Database(), parâmetros iniciais do banco de dados
// ※Consulta Select()
// ※GetRows() retorna o número total de registros consultados
// ※Insert() insere registro
// ※Atualização() atualização
// ※Excluir() excluir
// ※Halt() interrompe e exibe mensagem de erro*/
//------------------------------------------------ ------------------------------------------
define("DATABASETYPE","1"); //Definir tipo de banco de dados: 1 é MySql 2 é SQL Server 3 é Oracle 4 é Odbc;
define("SERVER","localhost"); //Nome do host ou endereço IP do servidor de banco de dados
define("DATABASE","dbName"); //O nome do banco de dados a ser conectado
define("USER","tableName"); //Nome de usuário usado para conectar ao banco de dados
define("PASSWORD","paswd"); //Senha usada para conectar ao banco de dados
classe Banco de Dados{
var $dbLink; //Identificador de conexão
var $resultado; // manipulador de consulta
var $insId; //Insert() retorna com sucesso o valor da coluna AUTO_INCREMENT
var $linhas; //Retorna matriz de dados
var $numRows; //Retorna o número de dados
var $dbHost, $dbUser, $userPassword, $banco de dados;
var $dbType=DATABASETYPE;
var $msgFlag = "yes" ; //yes:mostra a mensagem do Mysql não: morre por show "Halted."
function Banco de Dados($dbHost=SERVIDOR,$dbUser=USUÁRIO,$userPassword=SENHA,$database=DATABASE){
switch($this->dbType){
caso 1:
$this->dbLink=@mysql_pconnect($dbHost,$dbUser,$userPassword);// or die("Não é possível conectar ao host remoto!");
@mysql_select_db($database,$this->dbLink);// ou die ("Não é possível conectar ao host remoto!");
quebrar;
caso 2:
quebrar;
}
retornar verdadeiro;
}
/*SQL:Select() retorna falso e não tem resultado*/
função Selecionar($tabela,$colunas,$condição=1){
$sql="selecione $colunas de $tabela onde $condição ";
//echo $sql."<br>";
$this->resultado=@mysql_query($sql,$this->dbLink);
unset($this->linhas);
if($este->resultado){
$i=0;
if(!($this->rows=array("$i"=>@mysql_fetch_array($this->result))))
retornar falso;
if(($this->numRows=@mysql_num_rows($this->resultado))==0)
retornar falso;
while( $tempRows=@mysql_fetch_array($this->result )){
array_push($this->linhas,$tempRows);
}
}outro{
$this->Halt($sql);
retornar falso;
}
retornar verdadeiro;
}
/*SQL:GetRows() retorna o número total de registros consultados*/
function GetRows($tabela,$condição=1){
$sql="selecione count(1) como contagem de $table onde $condition";
//echo $sql."<br>";
$this->resultado=@mysql_query($sql,$this->dbLink);
if($este->resultado){
$temp=@mysql_fetch_array($this->resultado );
$this->numRows=$temp[contagem];
}outro{
$this->Halt($sql);
retornar falso;
}
return $this->numRows;
}
/*SQL:Inserir()*/
function Inserir($tabela,$colunas,$valores){
$sql="inserir em $tabela ($colunas) valores($valores)";
//echo $sql;
$this->resultado=@mysql_query($sql,$this->dbLink);
if ($este->resultado)
$this->insId=@mysql_insert_id($this->dbLink);
outro{
$this->Halt($sql);
retornar falso;
}
retornar verdadeiro;
}
/*SQL:Atualização()*/
function Atualização($tabela,$configurações,$condição){
$sql="atualizar $table set $configurações onde $condição";
//echo $sql;
$this->resultado=@mysql_query($sql,$this->dbLink);
if ($este->resultado)
$this->numRows=@mysql_affected_rows($this->resultado);
outro{
$this->Halt($sql);
retornar falso;
}
retornar verdadeiro;
}
/*SQL:Excluir*/
function Excluir($tabela,$condição){
$sql="excluir da $tabela onde $condição";
$this->resultado=@mysql_query($sql,$this->dbLink);
if ($este->resultado)
$this->numRows=@mysql_affected_rows($this->resultado);
outro{
$this->Halt($sql);
retornar falso;
}
retornar verdadeiro;
}
/*Halt():mensagem de erro */
função Parar($msg){
if($this->msgFlag=="sim"){
printf("<b>Erro de consulta ao banco de dados:</b> %s<br>n", $msg);
printf("<b>Erro MySql:</b> %s<br>n",mysql_error());
}outro
echo "<META HTTP-EQUIV=REFRESH CONTENT='0;URL=../include/error.htm'>";//Personalizar um arquivo de mensagem de erro
retornar falso;
}
}
switch($db->dbType){
caso 1:
@mysql_close();
quebrar;
caso 2:
quebrar;
}
$db = novo banco de dados();
?>