• Home
  • Posts RSS
Blue Orange Green Pink Purple

PHP ARTE

PHP ARTE seu curso de PHP online completamente gratuito passo a passo. Semanalmente estaremos colocando aulas para vocês seguindo o conteúdo programático para que você não se perca. Nossa intenção não é corrigir seu script ou criar um script para você, mas sim fazer com que você aprenda a criar e corrigir seus próprios scripts.

Feliz Natal e Ano Novo!!

Então galera, acho que ao longo deste ano  aprendemos um pouco sobre PHP (eu espero rsss), este ano não vou postar mais pois estou concluindo alguns freelas, estou sem tempo e fazendo grana para pagar as continhas que chegam em Janeiro heheheh, este ano não foi o ano das doações hehehe recebemos se não me engano 3 doações, mas tudo bem, cada um ajuda como pode, teve até uma doação de R$0,40 heheeh foi legal, se cada um doasse esse valor hoje teríamos um Blog com um acompanhamento maior.

Ano que vem vou concluir este nosso sistema e vou focar no Framework CI, iremos aprender um pouco sobre como trabalhar com um Framework e depois disso não faço idéia do que vou postar e se vou postar rsss.

Mas agradeço a todos que visitaram o Blog com nossos mais de 4k de acessos mensal, deram sugestões, opniões, críticas e tudo mais,  e claro pela paciência pelos posts atrasados rsss.

No mais é isso galera, abraços
Att;
Marco



Se possível deixe um cafezinho para a gente!

+Ler mais 0 comentários | Postado por Marco | edit post

Painel de Controle

Galer deu pra ver que estou sem tempo né? rsss
Então eu fiz um painelzinho e gravei uma vídeo aula meio bagunçada (igual o painel) rsss,  porém depois eu resolvi adicionar uns recursos pra gente poder conhecer mais a fundo, então a video aula como foi corrida ficou um pouco confusa e também faltou alguns recursos, mas dá pra pegar a idéia da parada!

Mas olha eu passei mais de 1 hora enviando esse vídeo com meu SUPER 3G !!! Então gravar outra e enviar de novo vai ser um sofrimento rsss.

Seguinte vou enviar os arquivos como se encontram, dai eu vou aprimorar nosso sistema criando algumas convenções para agilizar o serviço (ficaram pendentes algumas), dai eu faço uma video aula bem explicadinha de verdade prometo.

Lembrando sempre quem puder fazer uma doação será bem vinda não importa o valor!

LINK PARA DOWNLOAD DO SISTEMA:
http://uploading.com/files/93mbfbfm/painel_phparte.zip/


Sistema de Cadastro from phparte on Vimeo.


Se possível deixe um cafezinho para a gente!

+Ler mais 18 comentários | Postado por Marco | edit post

Nosso primeiro CRUD utilizando orientação a objetos

Para variar, venho pedir desculpas pela demora, mas essa vida de desempregado e vivendo de freela não é nada fácil! Bem então criei desta vez nosso "sisteminha" para cadastrar, alterar, excluir usuários.
Todas as linhas estão comentadas explicando passo a passo, quem tiver dúvida já sabe manda um comentário ou email que dentro do possível iremos auxiliar.

Então, este começo foi apenas para acostumarmos com nossas classes, pois serão rotineiras em nosso sistema futuro, o próximo post, minha intenção é já criarmos uma estrutura organizada de projeto, para que não vire uma bagunça nosso sistema cheio de arquivos largado por todos os cantos, e claro adaptar nosso sisteminha a este novo padrão, depois vou criar um sistema de login para nosso painel dentro da nova estrutura.

LINK 1: http://uploading.com/files/6af2m128/1-phparte.blogspot.com.zip/
LINK 2: http://uploaddearquivos.com.br/download/3phparte.blogspot.com.zip
LINK 3: http://www.mandamais.com.br/download/397n18102010182058


Apenas a título de desabafo... VAI TOMAR NO CENTRO DO OLHO DO tio Astrogildo o GENTE BOA que fica fazendo doação de 10 centavos e cancelando, meu querido amigo, se não quer fazer doação não faça, e diga-se de passagem que aceitamos sim doações de 10 centavos e ficaremos muito felizes em recebe-la, se as mais de 4 mil pessoas que acessam o site mensalmente fizessem uma doação de 10 centavos por mês eu soltaria foguetes!

Ufa me sinto melhor rsssss, até hoje só recebemos duas doações hehehe mas tudo bem, isso nos deixa muito feliz em saber que existem pessoas reconhecendo nosso esforço, não estamos aqui para ficar ricos (até porque senão já teriamos falido rsss), mas doações nos ajudam a pagar nossas contas!

Depois contarei a vocês a história do nosso domínio!  fuizzzzzzzzzzzzzzzzz

Se possível deixe um cafezinho para a gente!

+Ler mais 4 comentários | Postado por Marco | edit post

Nova classe Mysql Simples

Salve salve galerinha, bem na aula anterior vimos o início de nosso sistema (não falei sobre isso?) HAUEAHUEAH enfim, vamos usar essa classe como base para nosso gestor de conteudo que fazer ao longo do curso, como podem perceber infelizmente não está sobrando tempo para seguir a aula certinho, mas fiquem tranquilos, vamos concluir este sistema, e depois vamos brincar um pouco com algum framework, ainda não escolhi, pois quero algo simples e de fácil entendimento para ninguém pirar e abondonar nosso querido e amado PHP ! 

A nova classe possui alterações interessantes como citado pelo nosso amigo (momento MERCHAN) no post anterior.

Tutorial City - http://tutorial-city.net/

Que possui vários tutoriais interessantes sobre programação, por sinal eu tenho acompanhado e posso dizer que tem um bom conteudo então visitem  = ]

Voltando ao assunto lol !!! onde parei mesmo...  Lembrei.. Então galera, aproveitem para ler essas alterações e claro que tiver sugestão, dúvida, crítica (não tenho interesse aaaaaahuAEHUAEHUAE) brincadeira, só entrar em contato com a gente.

Depois vamos criar nossa classe de autenticação no próximo post falowzzzzz

Faça o download das novas classes:
LINK 1: http://uploaddearquivos.com.br/download/phparte.blogspot.com.zip
LINK 2: http://www.mandamais.com.br/download/h48n2992010181255

Se possível deixe um cafezinho para a gente!

+Ler mais 2 comentários | Postado por Marco | edit post

Aula 19 - Classe Mysql Simples

Primeiramente desculpe pela demora, mas o bicho tá pegando, quase recebemos nossa segunda doação de R$10,00 mas infelizmente foi cancelada rssss. Então continuamos com apenas 1 doação em praticamente 1 ano de BLOG rsss, mas enfim fazer o que né.

Bem galera não está dando para seguir o planejamento das aulas devido ao tempo que está curto, estou tento que pegar vários freelas baratinhos para pagar as contas, e isso acaba que toma o tempo todo.

Hoje vou postar para vocês um exemplo de como podemos abstrair tarefas simples e rotineiras como o update, delete, insert e select em um banco de dados.

Para os críticos, obsecados por designer patterns, segurança e tudo mais, antes de me fazer perder meu tempo lendo seu comentário leia com bastante atenção a linha abaixo:

"Estas classes tem como propósito apenas o estudo de como utilizar orientação a objetos para abstrair tarefas rotineiras, estas classes não são a solução do universo e o mundo inteiro vai utilizar, é apenas para as pessoas que acompanham o blog começarem a se interagir com o que aprenderam + prática"

Bem dito isto, vamos lá nossa idéia então é fazer uma classe para conectar no banco e outra para minimizar a tarefa de atualizar, deletar, inserir e selecionar, minha conexão não permite gravar vídeo então vou postar os códigos coloquei o máximo de comentários possível rsss por isso parece grande, mas creio que todos vão conseguir entender, senão é só mandar um comentário.

Como ficou tudo embolado então estou disponibilizando os arquivos para download, se tiver link quebrado ou coisas do tipo manda um comentário:

DOWNLOAD 1 - Classe Mysql
DOWNLOAD 2 - Classe Mysql

Criando nossa classe de conexão
conexao.class.php


<?php

class Conexao
{
    /**
     * Constante responsável por armazenar o servidor do banco
     *
     */
    const DB_HOST='localhost';
   
    /**
     * Constante responsável por armazenar o nome do banco
     *
     */
   
    const DB_NOME='emig';
   
    /**
     * Constante responsável por armazenar o nome do usuário do banco
     *
     */
   
    const DB_USER='root';
   
    /**
     * Constante responsável por armazenar a senha do banco
     *
     */
    const DB_PASS='';
   
    /**
     * Método construtor, executado "automaticamente" quando iniciada classe
     */
    function __construct()
    {
       
    }
   
    /**
     * Método responsável por conectar no banco
     */
    public function Conecta()
    {
       
        //lembrando que self referencia a própria classe no nosso caso
        //estamos chamando uma constante que está definida nesta classe
        //então conectar ao banco
        $con = mysql_connect(self::DB_HOST,self::DB_USER,self::DB_PASS) or die ('Erro ao conectar: ' .mysql_error());
       
        //Agora vamos selecionar o banco de dados
        $db = mysql_select_db(self::DB_NOME) or die ('Erro ao selecionar o banco: ' .mysql_error());
       
    }
  
}
?>

Bem acho que não tem praticamente nada para eu explicar ai não né? rsss

Agora vamos criar a classe que vai fazer aquela tarefa de atualizar, remover, inserir e selecionar

manipulasql.class.php

<?php
class ManipulaSql extends Conexao
{
    /**
     * Propriedade responsável por retornar os resultados das querys
     *
     */
    public $content;
  
    /**
     * Método responsável por executar um SELECT no banco de dados
     *
     * Utilização:
     *
     * $sql = "SELECT Codigo, Nome, Descricao FROM produtos";
     * $s = new ManipulaSql();
     * $s->Seleciona($sql);
     * if(!empty($s->content))
     * {
     *     foreach ($s->content as $v)
     *     {
     *         echo 'Código: ' .$v[0]. '
';
     *         echo 'Nome: ' .$v[1]. '
';
     *         echo 'Descrição: ' .$v[2]. '
';
     *         echo '
';
     *     }
     * } else {
     *         echo 'Não foram encontrados registros em sua pesquisa.';
     * }
     *
     * @param string $qry
     * @return array
     */
    public function Seleciona($qry)
    {
        //como extendemos a classe Conexao, então podemos utilizar
        //os metodos herdados pela mesma (não vou entrar em detalhes sobre visibilidade)
        //conecta no banco de dados
        $con = Conexao::Conecta();
      
        //executa a query
        $exec = mysql_query($qry) or die('Erro ao executar a query: ' .mysql_error());
        //faço um loop nos resultados e vou armazendo em nossa variável $content
        //que é responsável por nos retornar os dados da consulta
        while($row = mysql_fetch_array($exec)) {
               $this->content[] = $row;
           }

        //retorno os dados
        return $this->content;
  
    }
  
    /**
     * Método responsável executar um INSERT no banco
     *
     * Utilização:
     *
     * $sql = "INSERT INTO tabela(campo1) VALUES ('algo1')";
     * $i = new ManipulaSql();
     * $i->Insere($sql);
     * if(!empty($i->content))
     * {
     *         echo 'O registro ' .$i->content. ' foi adicionado a base de dados.';
     * } else {
     *         echo 'Nenhum registro foi adicionado.';
     * }
     *
     * @param string $qry
     * @return int
     */
    public function Insere($qry)
    {
      
        //conecta no banco de dados
        $con = Conexao::Conecta();
      
        //executa a query
        $exec = mysql_query($qry) or die('Erro ao executar a query: ' .mysql_error());
        //reonsável por armazenar o ID gerado
        //em nossa variável de retorno $this->content
        $this->content = mysql_insert_id();

        //retorna o id do cadastro
        return $this->content;
  
    }
  
    /**
     * Método responsável executar um UPDATE no banco
     *
     * Utilização:
     *
     * $sql = "UPDATE tabela SET campo1='algo1' WHERE campo='algo'";
     * $a = new ManipulaSql();
     * $a->Atualiza($sql);
     * if(!empty($a->content))
     * {
     *         echo 'Foi(ram) atualizado(s) ' .$a->content. ' registro(s)';
     * } else {
     *         echo 'Nenhum registro foi atualizado.';
     * }
     *
     * @param string $qry
     * @return int
     */
    public function Atualiza($qry)
    {
      
        //conecta no banco de dados
        $con = Conexao::Conecta();
      
        //executa a query
        $exec = mysql_query($qry) or die('Erro ao executar a query: ' .mysql_error());
        //reonsável por armazenar o número de linhas alteradas
        //em nossa variável de retorno $this->content
        $this->content = mysql_affected_rows();

        //retorna o id do cadastro
        return $this->content;
  
    }
  
    /**
     * Método responsável executar um DELETE no banco
     *
     * Utilização:
     *
     * $sql = "DELETE FROM nome_tabela WHERE campo='algo'";
     * $r = new ManipulaSql();
     * $r->Remove($sql);
     * if(!empty($r->content))
     * {
     *         echo 'Foi(ram) removido(s) ' .$r->content. ' registro(s).';
     * } else {
     *         echo 'Nenhum registro foi removido.';
     * }
     *
     * @param string $qry
     * @return int
     */
    public function Remove($qry)
    {
      
        //conecta no banco de dados
        $con = Conexao::Conecta();
      
        //executa a query
        $exec = mysql_query($qry) or die('Erro ao executar a query: ' .mysql_error());
        //reonsável por armazenar o número de linhas alteradas
        //em nossa variável de retorno $this->content
        $this->content = mysql_affected_rows();

        //retorna o id do cadastro
        return $this->content;
  
    }
  
  
}
?>

E por fim vamos mostrar como utilizar apesar que já coloquei como utilizar na propria classe, mas vou mostrar de qualquer forma para ficar bem claro!

index.php
<?php
//Primeiramente eu incluo as nossas duas classes
require_once('conexao.class.php');
require_once('manipulasql.class.php');



#Fazendo um select

//Monto minha query de consulta
$sql = "SELECT Codigo, Nome, Descricao FROM produtos";
//Instancio a classe de manipulação
$s = new ManipulaSql();
//executo o método reponsável por selecionar os dados passando como parametro
//a nossa query
$s->Seleciona($sql);
//nosso método retorna o objeto content que contém os dados da consulta
//então vamos verificar se nossa consulta retornou alguma informação
if(!empty($s->content))
{
    //caso sim, então vamos listar estes dados encontrados
    foreach ($s->content as $v)
    {
        //se você está se perguntando o que são este 0,1,2 é simples, observe nossa
        //query: SELECT Codigo, Nome, Descricao FROM produtos, olhou viu alguma
        //relação com o 0,1 e 2? Pois bem, este índices da array, nos retornam
        //exatamente na ordem que especificamos na query, como as array se iniciam
        //do 0(zero), logo $v[0] é o Codigo, e assim por diante. Moleza?
        echo 'Código: ' .$v[0]. '
';
        echo 'Nome: ' .$v[1]. '
';
        echo 'Descrição: ' .$v[2]. '
';
        echo '
';
    }
  
//Caso a nossa consulta não tenha retornado nenhum resultado, então exibe o erro
} else {
    echo 'Não foram encontrados registros em sua pesquisa.';
}

#fazendo um insert

//Monto minha query de inserir
$sql = "INSERT INTO tabela(campo1) VALUES ('algo1')";
//Instancio a classe de manipulação
$i = new ManipulaSql();
//executo o método reponsável por inserir os dados passando como parametro
//a nossa query de inserir
$i->Insere($sql);
//nosso método retorna o objeto content que contém informações sobre a ação efetuada
//no caso o INSERT
//então vamos verificar se nossa consulta retornou alguma informação
if(!empty($i->content))
{
    echo 'O registro ' .$i->content. ' foi adicionado a base de dados.';
  
//Caso a nosso insert não tenha sido efetuado, então exibe o erro
} else {
    echo 'Nenhum registro foi adicionado.';
}

#fazendo um update

//Monto minha query de Atualizar
$sql = "UPDATE tabela SET Campo='Algo' WHERE Campo='algumacosa'";
//Instancio a classe de manipulação
$a = new ManipulaSql();
//executo o método reponsável por atualizar os dados passando como parametro
//a nossa query de update
$a->Atualiza($sql);
//nosso método retorna o objeto content que contém informações sobre a
//ação efetuada no caso o UPDATE
//então vamos verificar se nosso update retornou alguma informação
if(!empty($a->content))
{
    echo 'Foi(ram) atualizado(s) ' .$a->content. ' registro(s)';
  
//Caso a nosso UPDATE não tenha sido efetuado, então exibe o erro
} else {
    echo 'Nenhum registro foi atualizado.';
}


#fazendo um delete

//Monto minha query de Remover
$sql = "DELETE FROM nome_tabela WHERE campo='algo'";
//Instancio a classe de manipulação
$r = new ManipulaSql();
//executo o método reponsável por atualizar os dados passando como parametro
//a nossa query de DELETE
$r->Remove($sql);
//nosso método retorna o objeto content que contém informações sobre a
//ação efetuada no caso o DELETE
//então vamos verificar se nosso delete retornou alguma informação
if(!empty($r->content))
{
    echo 'Foi(ram) removido(s) ' .$r->content. ' registro(s).';

//Caso a nosso DELETE não tenha sido efetuado, então exibe o erro
} else {
    echo 'Nenhum registro foi removido.';
}
?>






Se possível deixe um cafezinho para a gente!

+Ler mais 4 comentários | Postado por Marco | edit post

Aviso

Salve galeria, então gostaria de dizer que estamos sumidos sim, mas estamos vivos, não abandonamos, eu estou sem emprego como já dito em outros posts, então estou na maior correria, estou trabalhando até de pintor para vocês terem idéia, o trem tá brabo, ai o tempo que sobra quero dormir pois estou morto.

Gostaria de informar sobre a próxima aula, infelizmente minha humilde conexão 3g não me permite enviar vídeos rsss ela é muito ruim, mas eu vou postar um tópico falando sobre como vamos criar uma classe de conexão mysql utilizando pattern sigleton e vou abordar alguns tópicos interessantes sobre o assunto, posteriormente vou postar como vamos desenvolver uma classe para autenticação com nível de acesso. Depois de feito isso, não faço idéia o que virá rsss mas virá fiquem tranquilos!

Continuamos nossa campanha solicitando doações, quem puder dar uma ajuda, qualquer doação é bem vinda, se todos que acessam nos desse um presentinho de 1 real, hoje teriamos uma estrutura melhor, podendo nos dedicar mais ao blog, mas infelizmente até hoje só tivemos 1 doação rsssss e nem repassei pro Fernando porque eu estava precisando da grana, dai a próxima e dele ehehehehe.

Abraços galera e até o próximo post, creio que semana que vem sai, tenho um sistema para terminar, dai assim que eu terminar ele eu começo os posts.

Se possível deixe um cafezinho para a gente!

+Ler mais 8 comentários | Postado por Marco | edit post

Aula 18 - Extends, Parent e Self - Operador de Escopo

Como já era previsto a conexão não me permitiu enviar um vídeo rsss.

Mas de qualquer forma vamos escrever mesmo, chegamos a nossa última aula de Orientação a Objeto. Muitos vão dizer, mas falta muita coisa ainda!!!, eu sei mas se eu fosse falar tudo sobre PHP nós levariamos 10 anos para terminar o curso rsss.

Mas o importante aqui e termos noção de como as coisas funcionam no PHP, e após essa aula nós vamos começar a criar scripts, com isso vamos ver como aplicar o que aprendemos de uma forma prática! (bom né?)

Ok hoje vamos falar sobre Operador de resolução de escopo.

Mas antesss...O PHP5 agora nós permite acessar constantes e métodos estáticos através de um operador de definição de escopo (que nomezinho hein rsss) para piorar o nome dele é ainda mais feio Paamayim Nekudotayim huhuhu TENSO, sendo ele  :: (dois pontos)

Tá mas pra que serve essa coisa? Vamos exemplificar:


<?php

class Php5Operador

{
    const FRASE = "Essa é nossa frase padrão";
}
echo Php5Operador::FRASE;
?>

Ou sejaaa, nós podemos chamar sem ter que instanciar uma classe. Ok entendido nosso operador de escopo certo?

Vamos lá, para agilizar, vamos aprender tudo de uma vez rsss
Primeiramente vamos definir o que é cada coisa:

self:: - quando se trata da classe, atributos estaticos.
$this é um 'ponteiro' que 'aponta' para o proprio objeto.
parent:: - Onde podemos acessar métodos de outras classes extendidas
extends - herda métodos da classe pai

<?php
class Clientes
{
    //declarando as variáveis
    private $nome;
  
    //metodo construtor que vai receber as informações dos clientes
    function __construct($nome)
    {
        $this->nome = $nome;
    }
    //metodo reponsável por retornar o nome
    function getNome()
    {
        return $this->nome;
    }
    //metodo reponsável por atribuir o nome
    function setNome($nome)
    {
        $this->nome = $nome;
    }
}
$cli = new Clientes('Kin');
$cli2 = new Clientes('Fernando');
echo $cli->getNome();
echo '<br />';
echo $cli2->getNome();

//Ok temos nossos clientes porém existem pessoas juridca e física
//como ainda estamos trabalhando com Cliente então vamos extender
//a classe clientes ao tipo de pessoa, podendo assim acessar metodo da classe pai
//que é clientes
//Agora ao instanciar a classe Juridica podemos herdar os métodos da classe Cliente

class Juridica extends Clientes
{
    private $cnpj;
  
    function __construct($nome,$cnpj)
    {
        //vamos usar o parent para acessar os métodos da nossa classe pai CLIENTES
        parent::__construct($nome);
        $this->cnpj = $cnpj;
    }
  
    //metodo reponsável por retornar o cnpj
    function getCnpj()
    {
        return $this->cnpj;
    }
  
    //metodo reponsável por atribuir o cnpj
    function setCnpj($cnpj)
    {
        $this->cnpj = $cnpj;
    }
}

echo '<br />';
echo '--------------';
echo '<br />';
$cliJuridica = new Juridica('Kin','012401.65484.12357-11');
//método herdado da classe Clientes
echo $cliJuridica->getNome();
echo '<br />';
echo $cliJuridica->getCnpj();
?>

Entendido o Extends e o Parent, vamos entender o Self, nada melhor do que um exemplo prático que diz por sí só pra qu serve.

<?php
class Paginas
{
    private $pagina;

    function __construct($p=NULL)
    {
        switch ($p) {
            case 'contato':
                self::contato();
                break;
            default:
                self::contato();
                break;
        }
    }
  
    function home()
    {
        echo 'Bem Vindo nossa página!';  
    }
  
    function contato()
    {
        echo 'Bem Vindo a nossa página de contato!';
    }
}

//se eu não passar parametro carrega a página home
$carrega_pag = new Paginas();
//se eu passar carrega a pagina que eu solicitar
//ex:  phparte.blogspot.com/index.php?pag=contato
$carrega_pag = new Paginas($_GET['pag']);
?>

Bem galera sei que não ficou NOSSA QUE AULA DOIDA!!! mas enfim, como eu já disse anteriormente estou sem emprego pois acabei de me mudar e o fernando terminando trabalho de conclusão de curso da Faculdade, então estamos super atarefados, estou fazendo milhões de biquinhos.
Qualquer dúvida posta ai que a gente explica na medida do possível.

Iremos agora começar a criar alguns scripts aplicando tudo que vimos, algo como mural, blog, formulário de cadastro, autenticação e coisas do dia a dia.


Se possível deixe um cafezinho para a gente!

+Ler mais 3 comentários | Postado por Marco | edit post

Agradecimento

Resolvi abrir o email antes de dormir ontem na madruga e vi que recebemos uma doação a primeira e única rsss.

O responsável por essa caridade foi Francis (o resto do nome não vou colocar por questões éticas rss).

Bem como ele foi o único a fazer uma doação para nosso projeto, peço que você Francis, poste um comentário neste post com seu MSN ou EMAIL assim eu entro em contato com você para que você possa tirar dúvidas diretamente comigo via MSN.

Novamente deixo aqui meu agradecimento, e hoje, se tudo der certo irei postar mais uma aula para que possamos dar continuidade, infelizmente não vai poder ser vídeo porque minha conexão é muito ruim não vou conseguir enviar, vou gravar e tentar enviar se funcionar blz, senão eu faço a aula escrita mesmo.

Abraços a todos e continuem acompanhando.

 
Quem puder faça uma doação!

+Ler mais 0 comentários | Postado por Marco | edit post

Instalando Servidor - nova versão

Primeiramente gostaria de xorar um pouco aqui pedindo doações pelo menos para eu pagar a minha net, pois estou sem emprego na minha nova cidade(roça), consegui por R$90,00 mensal 3g (única que pega aqui na minha nova cidade), então qualquer quantia 1 real a 90 reais(hehehe) será de grande ajuda !  As doações podem ser feitas no link 



Então vamos lá galera, muita gente mandou email com problemas na instalação do sevidor.

Então vamos lá, descobri uma forma simples de se fazer isso hehehee
baixe o arquivo Zip:  DOWNLOAD

Esse arquivo já vem com o Xampp descompactado, o que você precisa fazer é colocar a pasta  /xampp na raiz ou seja irá ficar:

C:\xampp

(sim é necessário estar na raiz, senão você terá que fazer algumas modificações)

Agora na pasta c:\xampp você irá encontrar o arquivo "xampp-control.exe"  ao abri-lo uma janelinha irá se abrir basta clicar em START no Apache e no Mysql, irá aparecer um escrito verde RUNNING do lado.

Agora abra seu navegador e digite:  localhost
Uma página do xampp irá abrir.
Seu servidor web está instalado!

Porémmm eu vi alguns erros que podem acontecer, exemplo:

1 - Skype usa a porta 80 então você não irá conseguir iniciar o Apache pois ele também usa a porta 80, desta forma feche o Skype ou Altere a porta dele.  Como saber que não iniciou? o escrito verde RUNNING irá aparecer e sumir ou as vezes nem aparece.

2 - Windows 7 não inicia o apache e o mysql, bem o windows 7 já vem por padrão o servidor utilizando a porta 80 ou seja vai dar pau. Eu encontrei várias soluções na net, a que funcionou aqui legal foi:

1) Vá no menu iniciar/executar é digite:  regedit (no windows 7 acho que é só digitar no Pesquisar)
2) Vá expandindo os diretórios na seguinte ordem: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
3) Clique com botão direito na janela ao lado e vá em NOVO / Valor DWORD (32-bits) , se não tiver o 32 bits vai apenas em Valor DWORD
4) Coloque o nome de: NoRun
5) Agora clique duas vezes no NoRun
6) Coloque o valor: 1 e clique em OK
7) Reinicie o computador

Agora é só abrir o C:\xampp-control.exe   e dar START no  Apache e Mysql, se aparecer o RUNNING verde, então basta ir no navegador e digitar:   localhost
Irá abrir uma página do XAMPP indicando que está tudo OK!

Seu servidor web está instalado!


Agora continue acompanhando as aulas:  Ponta pé inicial
+Ler mais 0 comentários | Postado por Marco | edit post

Esclarecimentos

Olá pessoal!

Bem gostaria de dizer que as aulas não acabaram, eu por exemplo me mudei de cidade e estou sem emprego, cheguei de mudança a tampa do meu computador caiu o hd escorregou caiu no chão é foi-se, inacreditável não é? rsss

Então tive uns problemas na mudança, a internet aqui é muitoooo ruim não sendo possível enviar vídeo aulas, a internet 3g é muito caro uns 150 por mês e não tenho essa grana para pagar então estou procurando uma forma alternativa, mas logo em breve estaremos ai na ativa, desculpem pelo transtorno, mas qualquer dúvida mandem email.
+Ler mais 0 comentários | Postado por Marco | edit post

Aula 17 - Métodos Mágicos - Construct e Destruct

Os nomes de funções __construct, __destruct, __call, __callStatic, __get, __set, __isset, __unset, __sleep, __wakeup, __toString, __invoke, __set_state and __clone  são mágicos nas classes do PHP. Você não pode ter funções com esses nomes em nenhuma de suas classes a não ser que queria que a funcionalidade mágica associada com eles.

Fonte: http://php.net/manual/pt_BR/language.oop5.magic.php


Aula 17 - Métodos Mágicos - Construct e Destruct

Se possível deixe um cafezinho para a gente hehehehe!

+Ler mais 8 comentários | Postado por Marco | edit post

Aula 16 - Encapsulamento de Métodos

Salve salve galera, continuando o módulo de orientação à objeto hoje iremos falar sobre encapsulamento de métodos.


Aula 16 - Encapsulamento de Métodos from phparte on Vimeo.



Qualquer coisa deixem sugestões e dúvidas nos comentários.
Abraços e até a próxima!
+Ler mais 0 comentários | Postado por Fernando Macedo | edit post

Aula 15 - Encapsulamento de Atributos

Salve Salve Galera, bom depois de um tempo ausente retorno minhas atividades com o blog. Primeiramente, me desculpem pela ausência mais chegamos onde muitos de vocês estavam querendo, que é a orientação à objeto.
Hoje iremos falar sobre o Encapsulamento de Atributos.







Encapsulamento de Atributos from phparte on Vimeo.





Qualquer dúvida ou sugestão postem nos comentários.
Não se esqueçam de divulgar para seus amigos e conhecidos.


Abraços!!!
+Ler mais 2 comentários | Postado por Fernando Macedo | edit post

Aula 14 - Iniciando Orientação a Objetos

Salve salve galerinha!
Novamente desculpe pela demora mas o bicho está pegando, muito trabalho e pouco tempo sobrando.

Vamos iniciar sobre orientação a objetos,  vamos de leve sem muitos termos técnicos apenas entendendo a lógica.

Aula 14 - Iniciando Orientação a Objetos

 ERRATA

Galera na correria não deu para regravar a aula, então vou colocar aqui 2 erros:

1 -  Onde coloquei e falei sobre array_search (...... == false)  está incorreto, 
na verdade utilizaremos:
if(array_key_exists($nome, $_SESSION[$nomeSessao]) != false) {
...
array_key_existe verifica se existe determinada chave em determinada array,  ai eu verifico se retorno DIFERENTE de false,  caso sim ai eu removo.

2 - Onde estava
$u2->Remove('Kin','limitados');
$u2->Listar('limitados');

O correto seria o código abaixo, pois nem existe "Kin" na segunda instância.

$u2->Remove('Daniel','limitados');
$u2->Listar('limitados');






+Ler mais 11 comentários | Postado por Marco | edit post

Aula 13 - Cláusulas Mysql

Salve galerinha, sobrou alguns minutinhos aqui e para ninguém achar que abandonamos o blog, fiz uma aulinha rapidinho sobre cláusulas mysql  alguns comandinhos básicos.

Olha a aula eu sei que não ficou boa, mas estou finalizando projetos então vocês fazem ideia da correria.

Mas qualquer dúvida só postar que a gente resolve!

E vão se preparando que lá vem Orientação a Objeto.



Aula 13 - Cláusulas Mysq







+Ler mais 8 comentários | Postado por Marco | edit post
Postagens mais recentes Postagens mais antigas Página inicial

PHP ARTE

  • Sobre nós

      Follow-me @fmacedos Fernando:
      Trabalho com desenvolvimento web e irei passar um pouco sobre PHP, tanto para quem está iniciando ou para quem já conhece a linguagem que deseja se manter atualizado, conhecer as novas tendências desta tecnologia que vem crescendo e sendo cada vez mais utilizada no mundo WEB.
      .

      Marco:
      Sou de Lavras Novas, trabalho com desenvolvimento freelancer e auxiliar de serviços gerais em um pousada e vou tentar passar um pouco do que sei para vocês sobre PHP de uma forma que fique fácil de aprender !
      Não sou um especialista, nem formado com pós graduação e milhões de certificado, sou apenas um usuário que aprendeu a programar na raça e estou tentando passar um pouco disto que aprendi para frente!


  • Contato

      E-mail: phparte@gmail.com
  • Busca


  • Forum Código Fonte
    Forum Código Fonte




  • Tags

    • apache (1)
    • apresentação (1)
    • atributos (1)
    • aula (8)
    • basico (11)
    • classe (1)
    • comparacao (1)
    • cookies (1)
    • correcao (1)
    • CRUD (1)
    • curso (3)
    • curso php (2)
    • curso php gratis (1)
    • curso php mysql gratuito (2)
    • curso php via skype (1)
    • doacao (1)
    • encapsulamento (2)
    • escopo (1)
    • estrutura de controle (1)
    • evento (1)
    • exercicio (2)
    • fim do blog (1)
    • gratis (3)
    • IDE (1)
    • include (1)
    • instalação (1)
    • introducao (1)
    • logicos (1)
    • login (1)
    • loops (1)
    • matematicos (1)
    • métodos (1)
    • mysql (2)
    • off (1)
    • OOP (1)
    • operadores (3)
    • orientação à objeto (2)
    • painel controrle (1)
    • parametros get (1)
    • PHP (19)
    • php oop poo (1)
    • php aula function (1)
    • php aula servidor (1)
    • php clausulas mysql (1)
    • php mysql (1)
    • require (1)
    • session (1)
    • variaveis sistema (1)
    • xampp (1)

    Arquivo

    • ►  2011 (4)
      • ►  30 outubro - 6 novembro (1)
      • ►  22 maio - 29 maio (1)
      • ►  13 março - 20 março (1)
      • ►  16 janeiro - 23 janeiro (1)
    • ▼  2010 (15)
      • ▼  19 dezembro - 26 dezembro (1)
        • Feliz Natal e Ano Novo!!
      • ►  21 novembro - 28 novembro (1)
        • Painel de Controle
      • ►  17 outubro - 24 outubro (1)
        • Nosso primeiro CRUD utilizando orientação a objetos
      • ►  26 setembro - 3 outubro (1)
        • Nova classe Mysql Simples
      • ►  29 agosto - 5 setembro (1)
        • Aula 19 - Classe Mysql Simples
      • ►  1 agosto - 8 agosto (1)
        • Aviso
      • ►  27 junho - 4 julho (2)
        • Aula 18 - Extends, Parent e Self - Operador de Escopo
        • Agradecimento
      • ►  6 junho - 13 junho (1)
        • Instalando Servidor - nova versão
      • ►  2 maio - 9 maio (1)
        • Esclarecimentos
      • ►  7 março - 14 março (1)
        • Aula 17 - Métodos Mágicos - Construct e Destruct
      • ►  28 fevereiro - 7 março (1)
        • Aula 16 - Encapsulamento de Métodos
      • ►  21 fevereiro - 28 fevereiro (1)
        • Aula 15 - Encapsulamento de Atributos
      • ►  31 janeiro - 7 fevereiro (1)
        • Aula 14 - Iniciando Orientação a Objetos
      • ►  3 janeiro - 10 janeiro (1)
        • Aula 13 - Cláusulas Mysql
    • ►  2009 (20)
      • ►  20 dezembro - 27 dezembro (1)
      • ►  6 dezembro - 13 dezembro (1)
      • ►  29 novembro - 6 dezembro (1)
      • ►  15 novembro - 22 novembro (2)
      • ►  8 novembro - 15 novembro (1)
      • ►  18 outubro - 25 outubro (1)
      • ►  11 outubro - 18 outubro (1)
      • ►  4 outubro - 11 outubro (1)
      • ►  27 setembro - 4 outubro (3)
      • ►  20 setembro - 27 setembro (5)
      • ►  13 setembro - 20 setembro (3)
    • Home
    • Posts RSS

    © Copyright PHP ARTE - Vídeo aula PHP e Mysql Grátis. All rights reserved.
    Bloggerized by FalconHive.com

    Voltar ao topo