Ir para conteúdo
Fórum Script Brasil
  • 0

Exibir Dados Do Mysql...


Dedezin

Pergunta

7 respostass a esta questão

Posts Recomendados

  • 0

vlw lemissel... muito obrigado pela dica.... agora como eu faco pra pega os dados de um formulario html e grava no banco de dados...

acredito que deve ser com mysql_insert mais eu não sei a syntaxe.... tem como coloca um exemplo bem simples pra eu aprender ????

vlw

Link para o comentário
Compartilhar em outros sites

  • 0

Claro, mas véio tu precisas dar uma lida numa apostilinha básica heim... a maioria das aplicações usam base de dados.

Mãos a obra:

1. Como receber as variáveis do formulário?

Bom, quando tu cria formulário tu tens que especificar o método de envio desses dados, isso deve ser feito na propriedade method da tag form.

A propriedade method aceita dois valores: POST e GET. GET é muito utilizado pelo netscape que também utiliza POST, então vamos utilizar POST! :D (por mais radical que tu sejas temos que dar o braço a torçer que o IE é o mais usado até o momento)

<form action="page.php" method="POST" ...>

2. Como tratá-las no PHP

Como medida de segurança, apartir da versão 4.3.0 (se eu não me engano) o PHP vem com a diretiva register_globals desativada nas suas configurações (php.ini). Esta diretiva tem a missão de "abreviar" todas as variáveis e se ativada pode e quase certamente teu código estará sujeito a visitantes indesejados... :(

Veja o exemplo para entender melhor o que a register_globals faz:

$HTTP_POST_VARS['foo']; //modo composto de variável (Não se usa mais! by php.net)

//ou

$_POST['foo'];

//se tornaria acessível no php simplesmente por:

$foo;

//onde qualquer variável passada junto com o endereço do website (query string) por exemplo poderia causar um grande problema...

Beleza, agora que tu já sacou o que faz essa diretiva vamos ver realmente como tratar as informações que queremos obter do formulário supondo que register_globas esteja off!

Como eu já dei "deixa" ali no exemplo acima, todas as informações recebidas pelo nosso form (com method = post) serão salvas em um array(matriz ou vetor) super global chamado $_POST. Mas e se nós estivéssemos utilizando o método GET??? Simples receberíamos no array também super global $_GET, mas utilize o POST :P

Beleza, e o php??? Vamos ao exemplo.

$foo = $_POST['foo]; //onde foo é o valor da tag name dos input's do form.

$bar = $_POST['bar'];

//...

Basta acessar como índice desse array o valor da tag name dos input's. Agora você já tem seus valores!

3. Como inserir na base de dados MySQL

Bom, supondo que tua base e tabelas já estejam devidamente criadas, fazemos então uso da conexão com a base de dados, selecionamos a base a ser utilizada e executamos a nossa isntrução SQL. (antigamente precisava fechar as conexões e tudo mais... mas isso é quase coisa do passado :D para aplicações simples não tem problema que se não estiver utilizando conexão permanente ele fecha quando sai do script)

Mãos a obra...

//conectando na base

$db = mysql_connect("servidor", "usuario", "senha") or die ('Erro ao conectar: '.mysql_error());

/*Em servidor geralmente é utilizado como localhost porque o servidor mysql geralmente fica

no mesmo servidor php (de hospedagem)*/

//selecionando a base de dados

mysql_select_db('minha_base',$db) or die ('Erro ao selecionar: '.mysql_error());

//sem mistério né?

//instrução SQL

$query = mysql_query("SELECT * FORM `tabela` WHERE `id` = 5");

...

Basicamente é isso, o que vão mudar são os teus dados e a tua isntrução SQL, que neste caso eu utilizei para retornar dados de uma tabela.

Obs.: repare que eu utilizei somente a função mysql_query para executar a instrução SQL, mysql_insert() também não é mais utilzada (by php.net)

4. Poots, eu só queria inserir valores numa tabela... Então: vamos a um exemplo mais prático!!!

<form action="popula_bd.php" method="POST">

<input type="text" name="nome" />

<input type="text" name="email" />

<input type="submit" value="Enviar" />

</form>

<?php

//abreviando variáveis manualmente (segurança... segurança... ;) )

$nome = $_POST['nome];

$email = $_POST['email'];

//Essa é nova! Em aplicações com base de dados é aconselhável o uso da função addslashes() que adiciona barras invertidas a caractéres especiais a fim de não causar probelmas com a base de dados (neste caso). Quando retornares esses valores utilize a função stripslashes() que retira as barras :D

$nome = addslashes($nome);

$email = addslashes($email);

//conectando na base

$db = mysql_connect("servidor", "usuario", "senha") or die ('Erro ao conectar: '.mysql_error());

//selecionando a base de dados

mysql_select_db('minha_base',$db) or die ('Erro ao selecionar: '.mysql_error());

//instrução SQL

$query = mysql_query("INSERT INTO `tabela` (`id`, `nome`, `email`) VALUES ('','".$nome."','".$email."')");

if($query)

echo 'Tu te cadastrastes com sucesso!';

else

echo 'Ocorreram problemas ao te cadastrar... volta aí vivente!';

?>

E é isso aí :D tá bem simples mas acho que te ajuda, se precisar prende o berro que te ajudamos!

Abraço!

Obs.: Não em xinga se eu exagerei...

Link para o comentário
Compartilhar em outros sites

  • 0

aí lemissel....... aprendi quase tudo com esse tuto que você posto aí... muito obrigado mesmo.... aos pokos vao se acabando as duvidas idiotas.... rsrsrsrsrs

agora é o seguinte.... entendi o metodo post, beleza.. mais e quando eu tenho uma pagina.php +/- assim:

codigo php para mostrar dados do bd e abaixo disso eu tenho um form. eu posso coloka os codigo php abaixo desse form e excutar tudo de uma vez ou vou ter que criar um outro arq.php para executar esse form ???

se eu puder coloka o codigo abaixo desse form, como fica meu action e name ???

Link para o comentário
Compartilhar em outros sites

  • 0

Buenas!

Cara, se tu estás somente exibindo os dados não tem problema algum, não muda nada. Agora, se tu queres cadastrar os dados na base de dados utilizando a mesma page, basta tu colocares na action o endereço desse mesmo arquivo...

Por exemplo:

...

<form action="form.php" ...>

...

ou

...

<form action="<?=$PHP_SELF;?>" ...>

...

PHP_SELF é uma variável de sistema que guarda o arquivo que tu estás acessando no momento.

:D

Link para o comentário
Compartilhar em outros sites

  • 0

consegui mais colkei um outro arquivo para grava as novas infos no banco porque do jeito que tava fazendo.. todo vez que clikava em atualizar ele grava a data e hora no banco e os campos nome e msg em branco....

está indo... heheheheh

muito obrigado pelo cursinho....

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...