Ir para conteúdo
HawkB

por onde começar?

Recommended Posts

Bom dia,

 

Tenho conhecimentos em html5, javascript, css3, jquery e php com codeigniter.

 

Eu preciso aprender a criar um site institucional usando o php.

 

Aquele tipico site dividido em seções: cabeçalho com menu, slider, serviços, depoimentos, contato e rodapé.

 

Encontrei vários temas em bootstrap, mas preciso usar php.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá HawkB,

 

Você pode iniciar usando uma estrutura simples.

 

Para as pastas:

site_institucional

-- img 

-- css 

-- js

-- fonts

-- inc

-- cms

---- nome_modulo

---- inc

 

Essa é uma estrutura simples para você criar seus projetos a pasta inc será onde você irá guardar os arquivos que se repetem como a parte do topo do site, no seu comentário por exemplo seria cabecalho.php dentro da pasta inc. Inc é uma abreviação de includes.

 

A outra organização seria a dos arquivos de acordo com a necessidade do site. Vamos ver então.

 

Seu site institucional de exemplo fica assim:

index.php

servicos.php

depoimentos.php

contato.php

inc/cabecalho.php

inc/rodape.php

 

O index.php será o primeiro arquivo que o seu site irá carregar, esse nome é padrão para servidores PHP.

Seu menu fica dentro de cabecalho.php como você explicou.

O slide pode ficar direto no arquivo index.php já que não utilizara em outras paginas, se for utilizar em outras páginas você cria um arquivo separado e segue o mesmo feito para os arquivos de include colocando-os na pasta inc e fazendo a sua referencia no arquivo principal.

 

inclusão de um arquivo no PHP  -  arquivo index.php

====================================================

<?php

include 'inc/cabecalho.php';

?>

 

conteúdo da página index.php

 

<?php

include 'inc/rodape.php';

?>

====================================================

 

Os outros arquivos seguem o mesmo modelo do arquivo index.php

 

Pronto amigo acredito que será simples você iniciar os projetos usando PHP. Depois você pode criar seus projetos usando a estrutura do Framework CodeIgniter que é um padrão MVC. A ordem que você iniciou os estudos foi um pouco diferente porque CodeIgniter é mais avançado que fazer um site básico só no PHP.

 

A inclusão de um arquivo com um FrameWork é diferente, para fazer o mesmo include o CodeIgniter usa:

<?php $this->load->view('pasta/nome_arquivo'); ?>

 

Assim como também a estrutura dele é diferente como falamos.

 

Por isso é interessante aprender primeiro a linguagem que o FrameWork foi criado para depois saber quando e como utilizar o Framework.

 

Depois de você aprender a programar direto no PHP sem FrameWorks, você amplia seus conhecimentos neles.

Um abraço e bons estudos.

 

 

 

 

 

 

 

 

 

 

 

 

 

  • +1 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por freitaz
      Bom Quando tento alterar o formulário ele me trás a resposta "Atualizado com sucesso" mas não é atualizado no banco de dados se alguém poder me ajudar agradeço !
       
      código de cadastro
       
      <div class="card-body"> <?php $executivo = new Exe(); if ($_SERVER["REQUEST_METHOD"] == "GET") { //Using GET $id = $_GET['id']; $titulo = $_GET['titulo']; $categoria = $_GET['categoria']; $action = $_GET['action']; $file = $_GET['arquivo']; } if (isset($_POST["btnPublicar"])) { $id = $_POST['id']; $titulo = $_POST['titulo']; $categoria = $_POST['categoria']; $action = $_POST['action']; $file = $_POST['filetext']; if ($_SERVER["REQUEST_METHOD"] == "POST") { // Check if file was uploaded without errors $filename = $_FILES["file"]["name"]; $filetype = $_FILES["file"]["type"]; $filesize = $_FILES["file"]["size"]; // Verify file extension $ext = pathinfo($filename, PATHINFO_EXTENSION); // Verify file size - 5MB maximum $maxsize = 5 * 1024 * 1024; if ($filesize > $maxsize) { die("ERRO: Tamanho máximo de arquivo igual a 5MB."); } // Check whether file exists before uploading it if (file_exists("uploads/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " já existe na pasta."; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $_FILES["file"]["name"]); } } #fim do Arquivo print_r($fmsg); $executivo->setID($id); $executivo->setTitulo($titulo); $executivo->setCategoria($categoria); $executivo->setArquivo($filename); try { if ($action == "alterar") { if ($filename == "") { $executivo->setArquivo($file); } else { if (file_exists("uploads/" . $file)) { $path = 'uploads/' . $file; unlink($path); } } $executivo->update($executivo->getID(), $executivo->getTitulo(), $executivo->getCategoria(), $executivo->getArquivo()); $texto = "Atualizado com sucesso"; } else { $executivo->insert($executivo->getTitulo(), $executivo->getCategoria(), $executivo->getArquivo()); $texto = "Inserido com sucesso"; } } catch (PDOException $e) { echo 'ERRO: ' . $e->getMessage(); } } ?> <h4 class="header-title">Cadastro Downloads Executivos</h4> <form method="POST" enctype="multipart/form-data"> <div class="form-group"> <input type="text" id="action" name="action" hidden="true" value="<?php echo $action; ?>" > <label class="col-form-label">Título</label> <input class="form-control" type="text" name="titulo" value="<?php echo $titulo; ?>" > </div> <div class="form-group"> <label class="col-form-label">Categoria</label> <select class="form-control" name="categoria"> <option >Select</option> <option value="Executivo">Executivo</option> <option value="Legislativo">Legislativo</option> <option value="Judiciario">Judiciário</option> </select> </div> <div class="input-group mb-3"> <div class="input-group-prepend"> <span class="input-group-text">Arquivo</span> </div> <div class="custom-file"> <input type="file" name="file"/> <a href="<?php echo "uploads/" . $file; ?>"><?php echo $file; ?></a> <input type="text" id="filetext" name="filetext" hidden="true" value="<?php echo $file; ?>" > </div> </div> <button class="btnPublicar" name="btnPublicar"><span>Publicar </span></button> </form> <?php echo $texto; ?> </div>  
      Essa e a codigo da classe
       
      <?php require_once 'Crud.php'; class Exe extends Crud { protected $table = 'exe'; private $arquivo; private $categoria; private $id; private $titulo; public function setArquivo($arquivo) { $this->arquivo = $arquivo; } public function getArquivo() { return $this->arquivo; } public function setCategoria($categoria) { $this->categoria = $categoria; } public function getCategoria() { return $this->categoria; } public function setID($id) { $this->id = $id; } public function getID() { return $this->id; } public function setTitulo($titulo) { $this->titulo = $titulo; } public function getTitulo() { return $this->titulo; } public function insert($titulo, $categoria, $arquivo) { try { $sql = "INSERT INTO $this->table (titulo, categoria, arquivo) VALUES (:titulo, :categoria, :arquivo)"; $stmt = DB::prepare($sql); $stmt->execute(array('titulo' => $titulo, 'categoria' => $categoria, 'arquivo' => $arquivo)); } catch (PDOException $e) { echo 'ERROR: ' . $e->getMessage(); } } public function update($id, $categoria, $titulo, $arquivo) { try { $sql = "UPDATE $this->table SET categoria = :categoria, titulo = :titulo, arquivo= :arquivo WHERE id = :id"; $stmt = DB::prepare($sql); $stmt->execute(array('id' => $id, 'titulo' => $titulo, 'categoria' => $categoria, 'arquivo' => $arquivo)); } catch (PDOException $e) { echo 'ERROR: ' . $e->getMessage(); } } } ?>  
      Se alguem poder me orientar como ajustar agradeço!
    • Por rogarfil
      <div class="video-sec">
        <h4 class="heading-small">Mídias</h4>
        <div class="video-block">
        <ul class="nav nav-pills justify-content-center mb-4" id="pills-nav" role="tablist">      
        <?php
        // Atribui uma conexão PDO
        $conexao = Connection::getInstance();
        $controle_ativo = 2;
        //$controle_num_slide = 1;
        $sql = "SELECT * FROM db_post WHERE status=1 AND category='Mídia' ORDER BY created DESC LIMIT 3";
        $stm = $conexao->prepare($sql);
        $stm->execute();
        while($post = $stm->fetch(PDO::FETCH_OBJ)) {
          if($controle_ativo == 2) { ?>
            <li class="nav-item">
              <a class="nav-link active" id="nav-pills-01" data-toggle="pill" href="#<?=$post->post_id?>"><?=$post->title?></a>
            </li>
          <?php
            $controle_ativo = 1;
          } else {
          ?>
            <li class="nav-item">
              <a class="nav-link" id="nav-pills-02" data-toggle="pill" href="#<?=$post->post_id?>"><?=$post->title?></a>
            </li>
          <?php
            //$controle_num_slide++;
          }
        }
        ?>
      </ul>
      <div class="tab-content" id="nav-pills-content">      
        <?php
        // Atribui uma conexão PDO
        $conexao = Connection::getInstance();
        $controle_ativo = 2;
        $sql = "SELECT * FROM db_post WHERE status=1 AND category='Mídia' ORDER BY created DESC LIMIT 3";
        $stm = $conexao->prepare($sql);
        $stm->execute();
        while($post = $stm->fetch(PDO::FETCH_OBJ)) {
          if($controle_ativo == 2) { ?>
        <div class="tab-pane fade show active" id="<?=$post->post_id?>" role="tabpanel">
          <div class="row">
            <div class="col-sm-6">
              <div class="embed-responsive embed-responsive-16by9"> <!-- 21by9, 16by9, 4by3, 1by1 -->
                <iframe class="embed-responsive-item" src="<?=$post->url?>"></iframe>
              </div>
            </div>
            <div class="col-sm-6">
              <p class="display-5"><?=$post->content?></p>
              <p class="card-text">
                <small class="text-time">
                  <em>Publicado em <?=date('M,d',strtotime($post->created))?></em>
                </small>
              </p>
            </div>
          </div>
        </div>
          <?php
            $controle_ativo = 1;
          } else {
          ?>
        <div class="tab-pane fade" id="<?=$post->post_id?>a" role="tabpanel">
          <div class="row">
            <div class="col-sm-6">
              <div class="embed-responsive embed-responsive-16by9"> <!-- 21by9, 16by9, 4by3, 1by1 -->
                <iframe class="embed-responsive-item" src="<?=$post->url?>"></iframe>
              </div>
            </div>
            <div class="col-sm-6">
              <p class="display-5"><?=$post->content?></p>
              <p class="card-text">
                <small class="text-time">
                  <em>Publicado em <?=date('M,d',strtotime($post->created))?></em>
                </small>
              </p>
            </div>
          </div>
        </div>
          <?php
          }
        }
        ?>
      </div>
      Há aba ativa está perfeita quando clico na segunda ou terceira aba nada acontece (não abre), tenho que deixar dinâmico. Ainda pergunto existe uma maneira com javascript para ativar a aba e seu conteúdo.

    • Por kadu silva
      Boa Noite
       
      Estou Criando Um Site Para Um Cliente E Ele Deseja Colocar Um Sistema De Buscar.
      Já Criei Os Códigos Em Php E O Banco De Dados No Phpmyadmin. Porém, Agora Necessito De Ajuda Para Como Colocar Ele Dentro Do Site Funcionando.
      O Sistema De Pesquisa Durante A Fase De Teste, Estar Dando Tudo Certo, Faz A Pesquisa Certinho, Eu Só Não Sei Como Colocar Dentro Do Site Funcionando, Necessito De Muita Ajuda.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.