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

Php E Formulaŕios


Guest Carlos 'va.va'

Pergunta

Guest Carlos 'va.va'

Caros membros do fórum ScriptBrasil,

Meu nome é Carlos e já andava as voltas com PHP há um tempo mas eu não realmente criava nada, apenas fazia hacks sem fim no PHP-Nuke.

Cansado de ficar dependendo de um sistema nem sempre seguro e nada funcional (opiniões pessoais) resolvi que iria aprender PHP com MySQL.

Como um pequeno desafio criei uma agenda telefônica no MySQL e criei scripts para puxar e inserir dados mas tudo era forçado, ou seja eu insiria ou

buscava os dados diretamente pelo código PHP e depois de garantir que estava realmente sabendo o básico fui mexer com formulários mas imaginem

a minha surpresa ao saber que deveria usar $_POST['dado'] ou $_GET['dado'] para usar os dados! Por enqüanto o meu forms.php está no atual estado*:

<?

// Primeira parte - recuperação dos dados

$id = $_POST['id'];

$nome = $_POST['nome'];

$apelido = $_POST['apelido'];

$casa = $_POST['casa'];

$celular = $_POST['celular'];

// Segunda parte - conexão ao servidor MySQL

$conecta = mysql_connect("", "", "");

$db = mysql_select_db("", $conecta);

$sql = "INSERT INTO telefones VALUES ($id,\"$nome\",\"$apelido\",$casa,$celular)";

$insere = mysql_query($sql);

mysql_close($conecta);

?>

<!-- Terceira parte - formulário para inserção de dados -->

<FORM action="<?php echo $PHP_SELF?>" method="POST">

Id: <input type="text" name="id" /><br/>

Nome: <input type="text" name="nome" /><br/>

Apelido: <input type="text" name="apelido" /><br/>

Casa: <input type="text" name="casa" /><br/>

Celular: <input type="text" name="celular" /><br/>

<input type="submit" value="Submit me!" />

</FORM>

*não inseri as tags de sempre para economizar espaço.

Como podem ver a primeira parte do código não está nada elegante, há alguma maneira de automatizá-la?

Abraço,

Carlos

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest Carlos 'va.va'

Caro Gladisson,

Eu não gostaria de fazer $id=$_POST['id'] para todas as variáveis, em num formulário grande esse seria um trabalho muito chato.

Acredito que alguém já tenha dado algum jeito de resolver este empecilho.

Abraço,

Carlos

Link para o comentário
Compartilhar em outros sites

  • 0

Pra não precisar pegar os dados enviados pelo form, você pode usar o register_globals on

mas não recomendo, nem o manual do php recomenda

outra solução pra você não precisar ficar digitando varios campos ,$campo = $_POST["campo"];,etc...

use o foreach

e use o display_errors = on

exemplo:

<?php

$nome = "";

$apelido = "";

$casa = "";

$celular = "";

//strip_tags tira as tags html

foreach ($_POST as $campo => $valor) { $$campo = strip_tags($valor); }

// Segunda parte - conexão ao servidor MySQL

$conecta = mysql_connect("localhost", "", "");

$db = mysql_select_db("", $conecta);

$sql = "INSERT INTO telefones VALUES ('','$nome', '$apelido', '$casa', '$celular')";

mysql_query($sql);

mysql_close($conecta);

?>

<!-- Terceira parte - formulário para inserção de dados -->

<style type="text/css">

<!--

.style1 {color: #0000FF}

-->

</style>

<FORM action="<?= $_SERVER['PHP_SELF] ?>" method="POST">

  <p>&nbsp;</p>

  <table width="437" border="0" align="center">

    <tr>

      <td width="170"><div align="right" class="style1">ID:</div></td>

      <td width="251"><input type="text" name="id" /></td>

    </tr>

    <tr>

      <td><div align="right" class="style1">NOME:</div></td>

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

    </tr>

    <tr>

      <td><div align="right" class="style1">APELIDO:</div></td>

      <td><input type="text" name="apelido" /></td>

    </tr>

    <tr>

      <td><div align="right" class="style1">CASA:</div></td>

      <td><input type="text" name="casa" /></td>

    </tr>

    <tr>

      <td><div align="right" class="style1">CELULAR:</div></td>

      <td><input type="text" name="celular" /></td>

    </tr>

    <tr>

      <td>&nbsp;</td>

      <td><input name="submit" type="submit" value="Submit me!" /></td>

    </tr>

  </table>

  <p>&nbsp;  </p>

</FORM>

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,3k
    • Posts
      652,5k
×
×
  • Criar Novo...