1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Site actualizavel pelo proprietário

Discussão em 'Web Development' iniciada por khaluh, 18 de Maio de 2007. (Respostas: 9; Visualizações: 1062)

  1. khaluh

    khaluh Power Member

    Viva

    Estou a estagiar e tenho de fazer um site com uma coluna onde passem noticias ,a rodar, relativas à escola onde estou.

    Só que o director da escola pediu-me para que, no site, as noticias pudessem ser facilmente actualizáveis, nao sendo necessrio recorrer a um webdeveloper cada vez que quisesse fazer isso.

    A minha dúvida é a seguinte: é possivel ? E como faze-lo?

    Coloquei a funcionalidade em javascript, só que dessa forma não é tão fácil para quando for necessário actualizar.
     
    Última edição pelo moderador: 18 de Maio de 2007
  2. shello

    shello Moderador
    Staff Member

    Sim, é perfeitamente possível fazê-lo. Usa-se para isso CMS (Content Management System), que no fundo são gestores de sites - tens um backoffice onde podes administrar o site.

    Dá um olho a esta thread, e vê a quantidade de CMS disponíveis, gratuitamente.
     
  3. dark_splinter

    dark_splinter Power Member

    Se usares por exemplo PHP e MySQL consegues fazer isso bem ...

    fazes um pequeno back-office para poderes enviar noticias para base de dados...

    E fazes um script para pagina que mostrar noticias, de maneira a ir a base de dados ver as noticias, depois é só fazer o seu output ..
     
  4. khaluh

    khaluh Power Member

    Viva.

    Obrigado pelo esclarecimento.

    Eu estou a usar PHP e MySQL, até porque tenho de guardar inscrições online.

    Há por aí um tutorial para isto? É que nas aulas ainda não chegámos a esta matéria...
     
  5. dark_splinter

    dark_splinter Power Member

    Deve haver pequenos tutoriais pela net.... mas se sabes PHP e MySQL penso que não precisas de "aprender a materia de por noticias num site"....

    Fazes um pequeno script para o administrador e metes por exemplo uma password por .htaccess para n teres muito trabalho a fazer um sistema de login para admin....

    Depois nessa pagina fazer um formulario que envia as noticias para outro script, nesse outro script a unica coisa que basta fazeres é enviar esses dados para base de dados....

    Depois na pagina principal que é suposto mostrares as noticias, fazes um script em que faça uma consulta a base de dados a pedir as ultimas noticias....

    Depois fazes por exemplo um loop para te mostrar todas as noticias que pediste na consulta....


    Se não sabes fazer ligações a base de dados ... procura no google por tutoriais de PHP ... no site do PHP podes encontrar um bom tutorial....

    http://www.php.net/manual/pt_BR/

    PS: está é maneira mais facil que vejo de implementares o que queres.
     
  6. khaluh

    khaluh Power Member

    Obrigado, de novo

    O aprender a matéria referia-se mais à criação e manutenção de um back-office.

    A nível de PHP e MySQL, tenho andado a luta com 2 livros (PHP5 e O Guia Prático do Dreamweaver 8 com PHP, Apache e MySQL)

    Nas aulas de multimédia, estamos agora a dar sessões (neste momento, até estou numa...)
     
  7. dark_splinter

    dark_splinter Power Member

    Não conheço nenhum livro ou tutorial GRANDE nesse aspecto.... mas deve haver :), normalmente encontro é pequenos exemplos na net e depois consigo me orientar apartir dai ..
     
  8. khaluh

    khaluh Power Member

    Correndo o risco de parecer (e sendo-o...) preguiçoso, podes arranjar-me o link (até porque nem sei bem o que procurar) de como fazer?

    Ou então, dizes-me o que procurar e eu procuro

    Googlar --> backoffice php ???

    Obrigado
     
    Última edição: 18 de Maio de 2007
  9. khaluh

    khaluh Power Member

    Viva

    Após a consulta aos ficheiros aconselhados, lá "desenvolvi" o sistema de noticias que precisava.

    Só que tenho um problema, que é o facto de não conseguir fazer alterações a BD (o inserir, o apagar, o consultar estão a funcionar). Pelo que me apercebi, não está a passar o id do registo que pretendo alterar, pois na barra de url's só passa isto:

    http://localhost/novotecna/noticias/alterar_db.php?id=

    (não envia a informação relativa ao id a alterar).

    No ficheiro alterar.php (o que permite a visualização dos dados), tenho o seguinte:

    /* para ligação à BD e consulta */

    Código:
    <?php
        include '../ligacao_bd.php';
    
        /*
         * monta e executa consulta em SQL
         */
        
        $id = $_GET['id'];
        $sql =     "
                    SELECT * 
                    FROM noticias 
                    WHERE id = '$id'
                ";
        $resultado = mysql_query($sql)  or  die ("Não foi possível realizar a consulta.");
    
        $linha=mysql_fetch_array($resultado);
    
    ?>
    
    /* para fazer a alteração */

    Código:
    <form action="alterar_db.php?id=<?php '$id' ?>" method="post" class="formulário">
    <table width="400" border="0">
        <tr>
              <td width="40">
                Nome:
            </td>
              <td width="110">
                <input name="nome" type="text" id="nome" value="
                <?php echo $linha['nome'] ?>" size="12" maxlength="12" />
            </td>
              <td width="60">
                Apelido:
            </td>
             <td>
                  <input name="apelido" id="apelido2" type="text" size="25" maxlength="25" value="
                <?php echo $linha['apelido'] ?>" />
            </td>
        </tr>
    </table>
      
    <table width="400" border="0">
      <tr>
        <td width="40">
            Email:
        </td>
        <td width="360">
            <input name="email" type="text" id="email" size="40" maxlength="40" value="
            <?php echo $linha['email'] ?>" /> 
        </td>
      </tr>
    </table>
    
    <table width="400" border="0">
      <tr>
        <td width="190">
            Título do Texto:
        </td>
        <td width="210">
            <input name="titulo" type="text" id="titulo2" size="40" maxlength="200" 
            value="    <?php echo $linha['titulo'] ?>"/>
        </td>
      </tr>
    </table> 
    
    <table width="400" border="0">
      <tr>
        <td width="150">
            Resumo do Texto:
        </td>
        <td width="250">
            <input name="resumo" id="resumo2" type="text" size="40" maxlength="250" value="
            <?php echo $linha['resumo'] ?>"/>
        </td>
      </tr>
    </table>
    
    <table width="400" border="0">
      <tr>
        <td width="150" align="left" valign="top">
            Texto:
        </td>
        <td width="250">
            <textarea name="texto" id="textarea" rows="10" cols="30" value ="
            <?php echo $linha['texto'] ?>"/></textarea>
        </td>
      </tr>
    </table>
    
    <table width="400" border="0">
      <tr>
        <td width="110">
            Mostrar Notícia?
        </td>
        <td>
            <input name="ver" id="ver" type="checkbox" value="1" 
            <?php if ($linha['ver'] == 1) { ?>checked="checked"<?php } ?>/>
        </td>
      </tr>
    </table>
    
    <table width="400" border="0">
        <td>
            <div align="center">
                <input type="submit" value="Alterar" />
            </div>
        </td>
    </table>
    </form>
    
    E no ficheiro alterar_db.php (o ficheiro que é chamado para fazer a alteração):

    Código:
    <?php
        include '../ligacao_bd.php';
    
        /*
        * monta e executa consulta em SQL
        */
    
        /* o echo no $id serve para ver se está a passar o id do ficheiro a alterar */
    
            echo $id;
            $ver = ($_POST['ver']) ? $_POST['ver'] : '0';
            $nome = $_POST['nome'];
            $apelido = $_POST['apelido'];
            $email = $_POST['email'];
            $titulo = $_POST['titulo'];
            $resumo= $_POST['resumo'];
            $texto = $_POST['texto'];
            $ver = $_POST['ver'] ;
            echo "<br>";
            
            $sql =     "
                    UPDATE noticias 
                    SET 
                        nome='$nome', 
                        apelido='$apelido', 
                        email='$email', 
                        data=NOW(),
                        hora=NOW(); 
                        titulo='$titulo', 
                        resumo='$resumo', 
                        texto='$texto', 
                        ver= $ver
                    WHERE id = $id
                    ";
    
            $resultado = mysql_query($sql) or die ("Erro ao alterar notícia.");
            
            /*header("location:controlar_noticias.php");*/
            /*
            
            */
            
            
    ?>
    
     
    Última edição: 30 de Maio de 2007

Partilhar esta Página