Jump to content
vailson

Iniciando no PHP - primeiro passo?

Recommended Posts

Olá pessoal, tudo bem?

Tenho uma aplicação rodando no MS Access. Sinto a necessidade de mudar para a web. Gostaria de ajuda em por onde começar. Já tenho um domínio e uma hospedagem. Literalmente não sei qual o primeiro passo a dar.

A aplicação que planejo tem apenas formulários e relatórios.

Agradeço a atenção.

Share this post


Link to post
Share on other sites

Se está iniciando no PHP, inclusive a parte de server, e quer fazer uma migração, sugiro iniciar com Linux. 

 

Ambiente

A escolha do ambiente de desenvolvimento é importante, pois, a maioria das linguagens possui um ambiente de desenvolvimento específico (mesmo que possam ser desenvolvidas em qualquer tipo de ambiente). Isso não é diferente no PHP.

 

A maioria das ferramentas do PHP são nativas do Linux e portadas para outros ambiente, ou, apenas pegam carona na compatibilidade que um ambiente possui com o linux.

 

Recomendo a distro Debian, que pode ser utilizada como servidor e ajuda muito no desenvolvimento. A instalação do debian é simples. Você pode criar uma VM do zero, utilizando VirtualBox (ou algum outro programa de virtualização), ou baixar alguma imagem pronta para desenvolvimento na internet.

 

Outra jogada interessante é utilizar o Vagrant ou o Docker para gerenciar o ambiente de desenvolvimento .

 

Links úteis:

Usando o Vagrant como ambiente de desenvolvimento no Windows

Criando um ambiente de desenvolvimento PHP com Docker Compose

 

Configurando o Ambiente

Após a escolha do ambiente, e se sua escolha foi por um ambiente limpo (zerado), deve-se instalar o básico:

 

PHP

$ apt-get update
$ apt-get upgrade
$ apt-get install php

Será necessário permissão de admin, para entrar como admin, use apenas:

$ su

E insira a senha que cadastrou para o usuário root ao instalar o Debian.

 

Caso der erro na biblioteca do PHP, altere de php para php7.0:

$ apt-get install php7.0

Se utilizar apenas PHP, ele irá pegar a versão estável corrente.

 

Servidor

O PHP já possui um servidor para desenvolvimento embutido. Dessa forma, não é necessário instalar o Apache, fica a seu critério.

 

Basicamente, para iniciar o servidor PHP, basta navegar até a pasta que deseja que seja o root do seu projeto e iniciar o servidor, especificando uma porta de acesso:

$ cd /pasta/do/projeto/
$ php -S localhost:8000

Para acessar o sevidor, basta utilizar algum browser e acessar o endereço http://localhost:8000.

 

Caso desejes utilizar o apache:

$ apt-get install apache2

Será criada uma pasta no seguinte caminho:

/var/www/html/

É a partir daí que o seu projeto será executado. Algumas versões não possuem a pasta html, acredito que na versão atual possui (eu não utilizo mais apache para o desenvolvimento).

 

Links úteis:

Linux: Terminal Básico

Passo-a-passo como criar um servidor web Apache2, PHP 7.0, MariaDB, PHPMyAdmin “LAMP” no Debian 9 Stretch

 

IDE

Isso é pessoal, pode escolher a que quiser, seja VI, VIM, PHPStorm, Zend Studio, Sublime, Kate, etc... Algumas são pagas e outras gratuitas. Particularmente, eu utilizo Kate pela simplicidade, leveza e limpeza rápida de formatação (não que outras não plataformas não tenham, mas a dele é muito rápida e leve) e Zend Studio, pois, zendo ZCPE eu possuo uma licença vitalícia.

 

Banco de dados

Assim como qualquer outra instalação, o banco de dados não fica de fora. Você deve instala-lo via apt-get. Fica a sua escolha, MySQL, MariaDB, PostgreSQL, etc..

 

Particularmente, eu utilizo PostgreSQL. Mas é uma preferências apenas por um server gratuito mais robusto que MySQL.

 

Considerações

Considere tudo isso apenas como dicas que vão lhe facilitar, no futuro, a interação com o desenvolvimento em PHP além de resolver diversas questões relacionadas aos ambientes.

 

Se quiser uma ideia mais fácil, baixe apenas algum stack LAMP (Linux, Apache, MySQL e PHP), tal qual WampServer, XAMPP ou EasyPHP, e terá um ambiente completo em uma máquina Windows/Linux.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By terra
      Olá,
       
      Preciso pegar o valor desse select
       
       
       aqui nessa query
       
       
      Agradeço qualquer ajuda
    • By violin101
      Caros amigos, saudações...
       
      Gostaria de tirar uma dúvida com os amigos se tem a possibilidade de fazer e como fazer.
       
      A pasta MODELS tem como fazer separado como a pasta CONTROLLERS, por exemplo:
       
      a pasta controller consigo fazer assim: PASTA e SUBPASTAS.
       
      controller
      |__ Admin
      |_____ Estoque
      |_______ Financeiro
       
      na pasta Models, fica tudo junto as funções, como por exemplo:
      admin_model.php
      caixa_model.php
      vendas_model.php
      e etc
       
      na Models, tem como fazer como na pasta controller, assim:
      |__ Admin
           |__ admin_model.php
      |_____ Estoque
                 |__ estoque_model.php
      |_______ Financeiro
                    |__ caixa_model.php
       
      para chamar uma função no controller, faço desta forma: 
      <?php $this->load->model('categorias_model'); $this->data['categorias'] = $this->categorias_model->getActive('categorias', 'categorias.idCategorias,categorias.categoria'); ?>  
      Conforme minha dúvida acima, como seria o caminho para chamar esta função:   
      $this->load->model('categorias_model');
       
       
      Grato,
       
      Cesar
    • By Samuel Pietro
      Tenho um select em PDO e preciso que a consulta retornada vire uma variavel, mas a variavel só pega a ultima linha da tabela e eu preciso que pegue todas as linhas que existirem.
       
      $conexao = conexao::getInstance(); $sql = 'SELECT * FROM RegistroE'; $stm = $conexao->prepare($sql); $stm->execute(); $Sql = $stm->fetchAll(PDO::FETCH_OBJ); foreach ($Sql as $SqlReg): $conteudo_meio = picture_X($SqlReg->E_01,1) .picture_X($SqlReg->E_02,25) .picture_9($SqlReg->E_03,4) .picture_X($SqlReg->E_04,14) .picture_9($SqlReg->E_05,8) .picture_9($SqlReg->E_06,8) .picture_9($SqlReg->E_07,8) .picture_9($SqlReg->E_08,8) .picture_9($SqlReg->E_09,8) .complementoRegistro(96,"brancos") .picture_9($SqlReg->E_11,1) .complementoRegistro(1,"brancos") ; endforeach; Como eu poderia está fazendo isto?
    • By peterstefan
      Bom dia, estou fazendo uma cadastro via rest e estou utilizando o curl para cadastrar no webservice...
      Meu código está cadastrando tudo certinho, porem quando ele cadastra e mostra o retorno que foi cadastrado com sucesso ele fica o AGUARDE, CARREGANDO e não para.. não sei oque esta faltando pq já tentei varias coisas e não deu certo... 
       
       
       
      $Data = [ "nomeRazaoSocial" => $PostData['nomeRazaoSocial'], "identMF" => $PostData['identMF'], "email" => $PostData['email'], "telefone" => $PostData['telefone'], "senhaProvisoria" => $PostData['senhaProvisoria'] ]; $DataString = json_encode($Data); $curl = curl_init(WEBSERVICECADASTRO); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POSTFIELDS, $DataString); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($DataString)) ); $result = curl_exec($curl); if ($result) { $jSON['success'] = "<i class='icon-checkmark'></i>Pronto, cadastro foi realizado com sucesso!"; }else{ $jSON['error'] = "<i class='icon-warning'></i>Oops! Erro ao cadastrar! Por favor, tente novamente!"; }  

       

    • By RSN
      Boa Noite,
      Preciso enviar uma consulta sql no corpo do e-mail, porém não estou conseguindo concatenar o laço while.
      <?php include_once('conexao.php'); require 'PHPMailer/PHPMailerAutoload.php'; $resultado = mysql_query("SELECT * FROM cupom WHERE FlagEstorno = 1;"); $linhas = mysql_num_rows($resultado); $mensagem = '<div class="x_content"> <table id="datatable-buttons" class="table table-striped table-bordered"> <thead> <tr> <th>Loja</th> <th>Nro Cupom</th> <th>Data</th> <th>Operador</th> </tr> </thead> <tbody> while($linhas = mysql_fetch_array( $resultado)){ echo " <tr>"; echo "<td>".$linhas['nroloja']."</td>"; echo "<td>".$linhas['NroCupom']."</td>"; echo "<td>".$linhas['DataProc']."</td>"; echo "<td>".$linhas['Operador']."</td>"; echo " </tr>"; }'; $mail = new PHPMailer(); $mail->isSMTP(); $mail->Host = 'smtp.gmail.com'; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->Username = ''; $mail->Password = ''; $mail->Port = 587; $mail->setFrom(''); $mail->addReplyTo(''); $mail->addAddress('', 'Nome'); $mail->isHTML(true); $mail->Subject = 'Assunto do email'; $mail->Body = $mensagem; $mail->AltBody = 'Para visualizar essa mensagem acesse http://site.com.br/mail'; //$mail->addAttachment('/tmp/image.jpg', 'nome.jpg'); if(!$mail->send()) { echo 'Não foi possível enviar a mensagem.<br>'; echo 'Erro: ' . $mail->ErrorInfo; } else { echo 'Mensagem enviada.'; } ?>  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.