Mostrando postagens com marcador PHP. Mostrar todas as postagens
Mostrando postagens com marcador PHP. Mostrar todas as postagens

segunda-feira, 10 de dezembro de 2012

Sistema de busca em PHP e MySQL





Olá pessoal!
Vamos falar de um assunto que muita gente pensa que é dificil de programar mas na verdade é bem fácil, estou falando de um sistema de busca.

Neste post estarei utilizando três páginas, uma para o formulário, outra para os resultados, e uma página de conexão com o banco de dados. É possível fazer também com duas páginas e até com uma pagina, mas dessa forma fica mais organizado. :)

Vamos lá...

Primeiro devemos criar uma conexão com o banco de dados. Caso tenha dúvidas de como fazer para criar um banco de dados e conectar a ele, acesse os links:

Iniciando no PHP (tópico Criando um banco de dados)
Conexão MySQL com PHP

Com o banco de dados  e conexão criadas, vamos ao que interessa.

Criarei uma página chamada index.html que conterá nosso formulário de busca.

index.html
<form action="busca.php" method="get">
<input type="text" name="palavra" />&nbsp;<input type="submit" value="Buscar" />
</form>
Esse é o formulário que enviará a palavra a ser buscada para a nossa página de resultados.

Vamos criar agora a nossa página de resultados, nomearei como busca.php.

busca.php
 
<?php
include "conexao.php";

$palavra = $_GET["palavra"];

$sql = mysql_query("SELECT * from pessoas WHERE nome LIKE '%".$palavra."%'");
$result = mysql_num_rows($sql);
if($result>=1) {
    echo "Exibindo ".$result." resultados para <strong>".$palavra."</strong><br><br>";
    while($linha = mysql_fetch_array($sql)) {
        $nome = $linha["nome"];
        echo $nome."<br>";
    }
  
} else {
    echo "Não foi encontrado nenhum resultado para <strong>".$palavra."</strong>";
}
?>
Vamos entender nossa página de resultados...
  • Na primeira linha eu chamo a conexão com o banco de dados que foi feita anteriormente.
  • Logo abaixo, eu uso o comando $_GET["palavra"], para obter os dados do formulário(repare que no código do formulário, o campo text tem a propriedade name com o valor palavra).
  • Abaixo foi criado a query para retornar os dados do banco de dados com os parâmetros da busca.
  • A varíavel $result, identifica quantos resultados foram encontrados nessa consulta.
  • A estrutura if e else verifica se possui ou não resultados.
  • Caso possua resultados é utilizado o comando While(Traduzindo fica: Enquanto), ou seja, enquanto tiver dados que condiz com os parametros da pesquisa, será exibido.
  • A variável $linha, é quem traz os resultados do banco de dados.
  • Depois é só a continuação do if e else.
Esse foi nosso post sobre sistema de busca com php, caso tenham qualquer dúvida ou precisem de um código mais avançado para implementar em seu site, só entrar em contato pelo e-mail scriptmais@gmail.com.

Até o próximo post!

Artigos relacionados:
Inserir dados no banco de dados com PHP
Atualizar dados no banco de dados com PHP
Deletar dados no banco de dados com PHP


terça-feira, 28 de agosto de 2012

Caractere de Escape do PHP








A linguagem PHP, utiliza as aspas para guardar ou exibir valores de uma string. Como por exemplo
$texto = "Guardando uma string dentro de uma variável";
ou
echo "Exibindo string";
Se você tentar exibir uma string que contenha aspas desse geito:
echo "String "com" aspas";
O PHP retornará um erro, pois as aspas do meio indicará o fim da string, quando na verdade não é.

No PHP existe um caractere de escape que é a contra-barra ' \ '. Ela permite exibir essas strings com aspas.

Para exibir esse mesmo texto da forma certa é só acrescentar  a contra-barra antes das aspas a serem exibidas. Dessa forma:
echo "String \"com\" aspas";


Ver também:
addslashes()
stripslashes()

Cadastrar texto com aspas no banco de dados - PHP & MySQL

Uma coisa que é muito chata, e acaba sendo um transtorno pra quem está iniciando, é cadastrar no banco de dados um texto que contenha aspas...
Quem nunca se deparou com o erro: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''texto'')' at line 1

O erro ocorre porque a aspa causa uma confusão no comando SQL, veja porque:



Imagine a seguinte linha:
mysql_query("INSERT INTO tabela(texto) VALUES('texto 'com' aspas')");
A palavra com está entre aspas simples, o que causa uma confusão no comando..
Repare as aspas antes de texto e depois de aspas, elas delimitam o texto que será inserido no banco de dados, e essas aspas que estão no meio do texto fazem com que o SQL se confunda.

A solução para isso seria colocar as aspas com Caractere de Escape, dessa forma:
mysql_query("INSERT INTO tabela(texto) VALUES('texto \'com\' aspas')");
As contra-barras informam ao SQL que aquelas aspas devem ser inseridas também no banco de dados.

Mas como adicionar contra-barras em todo o meu texto???

É aqui que vem o segredo... Basta usar a função addslashes() que ela faz todo o trabalho pra você.
Dessa forma:


$texto = "Texto que 'contem' aspas'''''";
$texto = addslashes($texto);
echo $texto;


A saída será: Texto que \'contem\' aspas\'\'\'\'\'

Com isso você conseguirá cadastrar textos em seu banco de dados normalmente..

Ver também:
addslashes()
stripslashes()
Caractere de Escape

Até o proximo post!! ;)

sexta-feira, 23 de setembro de 2011

Utilizando comando If e Else PHP

Olá!
Iniciaremos uma etapa no blog destinada a comandos básicos do PHP, e nada melhor para começar do que o comando mais simples: a estrutura de decisão If e Else.
Como o próprio nome já diz: if(se) else(senão); eles servirão para ajudar ao script a tomar uma decisão de acordo com o necessário. Vamos ver como:

A estrutura do If e Else se dá da seguinte maneira:




<?php
if (parametros) {
comandos
} else {
comandos
}
?>

Suponhamos que eu queira comparar duas variáveis, $a e $b. Se elas forem diferentes, vou exibir a mensagem "Certo", senão, vou exibir a mensagem "Errado".

Desse geito:
<?php
$a = 5;
$b = 10;
if ($a == $b) { // Traduzindo: Se $a for igual a $b, ele exibe "errado"
echo "Errado";
} else { // se $a não for igual a $b, ele exibe "certo"
echo "Certo";
}
?>

Dessa forma eu consigo comparar variáveis, validar formulários, verificar login... Tudo com esse simples comando: If e Else.

Essa foi a primeira etapa de comandos básicos do blog. Qualquer dúvida só postar.

Até a poxima!!

terça-feira, 18 de janeiro de 2011

Deletar dados do banco de dados com PHP

Olá pessoal!

Veremos neste post como deletar as informações inseridas no banco de dados com php.

Vamos lá.

Crie uma página chamada deletar.php, e insira o código abaixo:




deletar.php
<?php
include "conexao.php"; // Chama a conexao com o banco de dados
$tabela_bd = "pessoas";

$id = 1; // linha da tabela que será deletada

$sql = mysql_query("DELETE FROM $tabela_bd WHERE id='$id'"); /*linha para cadastrar no banco de dados.*/
if ($sql) { // verificação para saber se foi cadastrado
echo "Deletado com sucesso!!";
} else { // Caso dê erro
echo "Falha ao deletar.
".mysql_error();
}
?>


Para deletar outras informações, você deverá consultar no banco de dados o id da linha que você quer deletar e alterar a variável $id ali no script.

Este é o nosso script de deletar com php.

Até o próximo post

Abraços
Diego Machado

Atualizar dados no banco de dados com PHP

Olá pessoal!!

Neste post, veremos como atualizar nossos dados inseridos no banco de dados com o php.

Em alguns posts anteriores vimos como criar um banco de dados e cadastrar informações nele. Se você tiver alguma dificuldade nessa parte, recomendo ver esses posts. Segue o link:
Cadastro com PHP
Conexão MySQL com PHP

Por enquanto, nossa atualização não vai ser tão dinâmica, pois esse post é só para você entender como funciona a atualização em php, mais pra frente estarei abordando essa atualização dinâmica.

Vamos lá!


Mesmo sendo na linguagem php, para manipular um banco de dados através dela, usaremos também a linguagem SQL, que é a linguagem para banco de dados MySQL, e o comando do php que vai permitir essa interação entre as duas linguagens, é mysql_query().

Comece criando uma página chamada atualizar.php.

Coloque o código abaixo:

atualizar.php

<?php
include "conexao.php"; // Chama a conexao com o banco de dados
$tabela_bd = "nome_da_tabela";
$id = 1; // id para identificar qual linha da tabela vai ser atualiza

// valores a serem cadastrados:
$nome = "Novo nome a ser atualizado";
$sobrenome = "Novo sobrenome a ser atualizado";
//////////////////////////////////////////////
$sql = mysql_query("UPDATE $tabela_bd SET nome='$nome, sobrenome='$sobrenome"); /*linha para cadastrar no banco de dados.*/
if ($sql) { // verificação para saber se foi cadastrado
echo "Falha ao cadastrar.
".mysql_error();
} else { // caso dê erro
echo "Falha ao atualizar.
".mysql_error();
}
?>



Essa é a nossa atualização. Veja que temos ali no comando mysql_query() o comando UPDATE, esse é da linguagem SQL, e é dessa forma que fazemos a interação com o PHP.

Observe que tem uma linha com $id = 1;
Essa linha indica que será atualizado o conteúdo que tiver com o id igual a 1.
Mais pra frente veremos como fazer um painel administrativo.
php - script php - php - scripts - php - php - desenvolvimento web - php
Até o próximo post.

Abraços
Diego Machado

sábado, 15 de janeiro de 2011

Inserir dados no banco de dados com PHP

Olá pessoal!

Veremos neste post como inserir dados em um banco de dados MySQL utilizando a linguagem PHP.

Vimos em alguns tópicos anteriores, como criar um banco de dados e como conectar com ele, agora veremos como criar uma tabela neste banco e como cadastrar dados nela.




Abra o phpMyAdmin e selecione o banco de dados. Depois click em SQL, na segunda aba superior, e cole o código abaixo:
CREATE TABLE IF NOT EXISTS `pessoas` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nome` varchar(100) NOT NULL,
  `sobrenome` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


Pronto!! Nossa tabela 'pessoas' está criada e pronta para receber os dados inseridos.
php - script php - php - scripts - php - php - desenvolvimento web - php
Com o banco de dados preparado, falta criar a página que vai inserir os dados. Para isso, crie uma página chamada cadastro.php e nela coloque o seguinte código:

cadastro.php

<?php
include "conexao.php"; // Chama a conexao com o banco de dados

$tabela_bd = "pessoas"; // altere de acordo com sua tabela

// valores a serem cadastrados:
$nome = "nome da pessoa";
$sobrenome = "Sobrenome da pessoa";
//////////////////////////////////////////////

$sql = mysql_query("INSERT INTO $tabela_bd(nome,sobrenome) VALUES('$nome','$sobrenome')"); /*linha para cadastrar no banco de dados.*/
if ($sql) { // verificação para saber se foi cadastrado
echo "Cadastrado com sucesso!!";
} else { // Caso dê erro
echo "Falha ao cadastrar.".mysql_error();
}
?>



Com o código copiado, salve a página e execute-a, depois é só conferir no phpMyAdmin se tudo ocorreu certo. Para isso, abra o phpMyAdmin, selecione o banco de dados, click na tabela e depois na aba visualizar. Se tiver algum dado cadastrado na tabela, significa que funcionou perfeitamente. Os valores podem ser alterados através das variáveis '$nome' e '$sobrenome'.

Bom galera, esse foi o tutorial de cadastro de dados com PHP
php - script php - php - scripts - php - php - desenvolvimento web - php
Abraços e até o próximo post

Diego Machado

Conexão MySQL com PHP

Olá pessoal!

Agora nós vamos ver como conectar com um banco de dados utilizando a linguagem PHP.
Se você tem alguma dúvida sobre como criar um banco de dados, veja o post anterior, que explica passo a passo como criar nosso banco de dados.
Link para tópico anterior

Para começar, crie uma página chamada 'conexao.php', e adicione o seguinte código na página:


conexao.php

<?php
$host = "localhost"; // Host onde seu site está hospedado. Caso seja servidor local o host é "localhost"
$usuario = "root"; // Usuário para conectar ao host. Para servidor local o padrão é "root"
$senha = ""; // Senha para conexao com o banco de dados. Para servidor local o padrão é sem senha
$banco = "teste"; // Nome do banco de dados para a conexao
$con = mysql_connect($host, $usuario, $senha); // Esta linha conecta com o servidor
$condb = mysql_select_db($banco, $con); // Esta linha seleciona o banco de dados a ser conectado

if ($con) {
    echo "Conectado com sucesso!!!<br />";
} else {
    echo "Falha ao conectar.<br />";
}
if ($condb) {
    echo "Banco selecionado!!!<br />";
} else {
    echo "Falha ao selecionar banco.<br />";
}
?>


Neste código, também tem uma verificação utilizando os comandos de decisão 'if e else', se conectar normalmente, essa verificação pode ser removida ou colocada como comentário, para não atrapalhar quando a conexão for chamada em outras páginas.


Bom galera, por enquanto é isso.

Até o proximo post.

Abraços!!
Diego Machado

Iniciando no PHP

Olá pessoal!

Como este é o primeiro post do blog Script Mais, estarei dando um inicio a linguagem PHP.
  • Instalando PHP e MySQL
  • Criando a primeira página em php
  • Criando um banco de dados

Vamos lá!!

Instalando PHP e MySQL

O PHP é uma linguagem dinâmica e não é interpretado pelo navegador, pois o mesmo só interpreta códigos HTML. Por esse motivo existem servidores locais, que interpretam o código PHP e os transformam em códigos HTML para ser interpretado pelo navegador.
php - script php - php - scripts - php - php - desenvolvimento web - php
O servidor local que eu estarei usando nesses exemplos, é o XAMPP.
Link para download

     - Instalando o XAMPP:

Após baixar, instale-o normalmente, é só ir avançando. Quando acabar, aparecerá uma tela de prompt, que prerguntará se quer criar ícone no desktop. Coloque "Y" para sim ou "N" para não e de enter. Após isso coloque "x" e de enter par sair.
Abra o XAMPP, marque as caixas "Svc" do Apache e do MySQL e aperte Start nos dois.

Se aparecer um nome 'Running' ao lado do botão Start, seu servidor local estará funcionando perfeitamente.
php - script php - php - scripts - php - php - desenvolvimento web - php


Criando a primeira página em php

Para rodar suas páginas php, você deve salva-las dentro do diretório onde o XAMPP foi instalando, o padrão é: C:/xampp/webdav/
Você deverá criar suas pastas e páginas detro deste diretório.

Crie uma pasta neste diretório (C:/xampp/webdav/), chamada "teste", e dentro dela cria uma página chamada "index.php". Quanto ao local onde você irá editar suas páginas, fica a sua escolha. Eu utilizo o Dreamweaver CS5, mas você pode editar em um bloco de notas, é só criar e nomear como "index.php" que vai dar no mesmo.

Coloque este código em sua página:

index.php
<?php
echo "Primeira página em PHP.";
?>

Salve a página e execute com o seguinte endereço:
http://localhost/webdav/teste/index.php

Se aparecer o texto: "Primeira página em php", sua página foi criada com sucesso.


Criando um banco de dados

Após instalar o servidor local e criar a primeira página, veremos agora como criar um banco de dados, que será utilizado nos posts seguintes.

Abra o XAMPP, inicie o MySQL, e click no botão Admin, ao lado do botão Start.

A página que vai abrir é do PHP MyAdmin(local de administração de banco de dados MySQL). Logo na página inicial, você verá uma opção "Criar novo Banco de Dados" e uma caixa de texto em baixo. Nesta caixa de texto será colocado o nome do banco de dados, para nosso exemplo será usado o nome "teste".

Agora só apertar o botão "criar", e está pronto o nosso banco de dados.

php - script php - php - scripts - php - php - desenvolvimento web - php
Até o próximo post!


Abraços
php - script php - scripts - php - php - desenvolvimento web - phpDiego Machado