Jump to content


Photo

Dúvida Sobre Insert


  • Faça o login para participar
7 replies to this topic

#1 webmastermichael

webmastermichael

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 03/10/2008, 13:27

BOM GALERA A MINHA DÚVIDA E TEM COMO EU FAZER ESSE CÓDIGO FAZER UM INSERT E Não um delete por que esse código deleta mas eu queria que ele fizesse um insert e um campo chamado predio obrigadoss

<?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('xxxxxxx','xxxxxxxx','xxxxxxxxx')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('xxxxxxxx',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));
//Varrendo a tabela dados, para pegar todos os dados.
$selecao=mysql_query("SELECT codigo,nome,cidade FROM cliente")or die('Erro na consulta SQL'.mysql_error($con));

/*Veremos se a consulta retornou algum registro com a função, mysql_num_rows...
se sim, ou seja, se for diferente de 0 o número de registros, ele tras os dados encontrados, através de um loop WHILE.
*/
if(mysql_num_rows($selecao) != 0){
/* Buscamos os dados e jogamos na função mysql_fetch_row, em que. $ver[0] o 0 reprezenta o
primeiro campo da tabela dados e o $ver[1] o 1 reprezenta o segundo campo da tabela dados
pois o PHP começa as contagens do 0... */
   echo "<form name=\"exclusao\" method=\"POST\" action=\"excluir.php\">";

   while($ver=mysql_fetch_row($selecao)){
   echo "Prédio: $ver[1]<input type=\"checkbox\" name=\"excluir[]\" value=\"$ver[0]\" /><br />";
   }

   echo "<input type=\"submit\" name=\"ok\" value=\"Escolher\" /></form>";
//Libramos a memória ocupada pela consulta com o free_result.
mysql_free_result($selecao);
//Fechamos a conexão com a base de dados após as operações.
mysql_close($con);
}
?>
	  <p><?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('xxxxxx','xxxxxxxxx','xxxxxxxxxxxx')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('xxxxxxxxxxxx',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));

//Verificamos se o método enviado pelo formulário é realmente o POST.
if($_SERVER['REQUEST_METHOD']=='POST'){
//Se sim, pegamos os dados em forma de vetor (array) e passamos para a variável $apagar.
  $apagar=$_POST['excluir'];
  /*Dou um loop para pegar os arrays e comparar com o valor de $i
  Aqui que está o segredo da coisam se a variável $i que inicia em 0 for menor que os dados contidos
  no array $apagar, ele vai incrementar até chegar ao valor, repetindo dentro do laço a função para deletar
  a quantidade correta de dados selecionados...
  */
  for($i=0; $i<count($apagar); $i++){
   $sql=mysql_query("INSERT INTO add_conta_pagar WHERE codigo='$apagar[$i]'")or die('Erro ao apagar os dados'.mysql_error($con));
  }
  /* verificamos com um IF simplificado se os dados foram excluídos. */
  ($sql) ? (print('Dados excluídos com êxito !')) : die('Erro ao excluir os dados.');
}
?>
<_< <_< <_< <_< <_< <_< <_< <_<

Edição feita por: lwirkk, 03/10/2008, 14:13.
Adicionado a tag [code]/[codebox] para melhor visualização do código-fonte.


#2 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 03/10/2008, 14:17

Pelo jeito, ele está fazendo o INSERT e não o DELETE, e pelos dados das variáveis, ele teria de fazer um DELETE, não?
Mas mais a frente, vi que ele digamos que ele faz um INSERT sem valor ^.^

Se quer que ele adicione dados, mas que dados? Só tirar a cláusula WHERE na query do insert... =)
E claro colocar os valores (dados) que gostaria que ele inserisse =)

ex:
INSERT INTO tabela VALUES ('a', 'dois', 'denovo')
'-'

Edição feita por: lwirkk, 03/10/2008, 14:18.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#3 webmastermichael

webmastermichael

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 03/10/2008, 14:20

então velho num sei se você viu mas o código puxa dados do meu mysql e gerra um array que mostra todos os dados o que eu quero fazer e pegar esse dados que eu puxei e fazer um insert em outra tabela do meu bando entendeu???

#4 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 03/10/2008, 14:42

Você quer pegar todos os dados e fazer novo insert ou dos dados que você selecionou no form somente?
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#5 webmastermichael

webmastermichael

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 03/10/2008, 15:58

Num sei se tem como mas eu quero o seguinte nesse cadastro que eu estou puxando eu puxo o nome dos prédios e vou fazer um insert no contas a receber sim quero fazer um insert nos dados que eu selecionei???? te como???

#6 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 03/10/2008, 16:50

<?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('xxxxxxx','xxxxxxxx','xxxxxxxxx')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('xxxxxxxx',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));
//Varrendo a tabela dados, para pegar todos os dados.
$selecao=mysql_query("SELECT codigo,nome,cidade FROM cliente")or die('Erro na consulta SQL'.mysql_error($con));

/*Veremos se a consulta retornou algum registro com a função, mysql_num_rows...
se sim, ou seja, se for diferente de 0 o número de registros, ele tras os dados encontrados, através de um loop WHILE.
*/
if(mysql_num_rows($selecao) != 0){
/* Buscamos os dados e jogamos na função mysql_fetch_row, em que. $ver[0] o 0 reprezenta o
primeiro campo da tabela dados e o $ver[1] o 1 reprezenta o segundo campo da tabela dados
pois o PHP começa as contagens do 0... */
echo "<form name=\"exclusao\" method=\"POST\" action=\"excluir.php\">";

while($ver=mysql_fetch_row($selecao)){
echo "Prédio: $ver[1]<input type=\"checkbox\" name=\"excluir[]\" value=\"$ver[0]\" /><br />";
}

echo "<input type=\"submit\" name=\"ok\" value=\"Escolher\" /></form>";
//Libramos a memória ocupada pela consulta com o free_result.
mysql_free_result($selecao);
//Fechamos a conexão com a base de dados após as operações.
mysql_close($con);
}
?>
<p><?php
//Conectando com o banco de dados MysQL e selecionando a base de dados.
$con=mysql_connect('xxxxxx','xxxxxxxxx','xxxxxxxxxxxx')or die('Erro na conexção, verifique os dados'.mysql_error($con));
mysql_select_db('xxxxxxxxxxxx',$con)or die('Erro ao selecionar a tabela'.mysql_error($con));

//Verificamos se o método enviado pelo formulário é realmente o POST.
if($_SERVER['REQUEST_METHOD']=='POST'){
//Se sim, pegamos os dados em forma de vetor (array) e passamos para a variável $apagar.
$apagar=$_POST['excluir'];
/*Dou um loop para pegar os arrays e comparar com o valor de $i
Aqui que está o segredo da coisam se a variável $i que inicia em 0 for menor que os dados contidos
no array $apagar, ele vai incrementar até chegar ao valor, repetindo dentro do laço a função para deletar
a quantidade correta de dados selecionados...
*/
for($i=0; $i<count($apagar); $i++){
$sql=mysql_query("INSERT INTO contas (codigo) VALUES ($apagar[$i])")or die('Erro ao apagar os dados'.mysql_error($con));
}
/* verificamos com um IF simplificado se os dados foram excluídos. */
($sql) ? (print('Dados excluídos com êxito !')) : die('Erro ao excluir os dados.');
}
?>

Veja a parte em negrito se está correta e ou modifique-a de acordo com os dados de sua tabela e colunas dela. (y)

Seria basicamente isto. =)

Edição feita por: lwirkk, 03/10/2008, 16:49.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#7 webmastermichael

webmastermichael

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 03/10/2008, 17:00

ainda está apagando

#8 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 03/10/2008, 17:56

Este código é do arquivo que se chama excluir.php, certo?

E, se modificar corretamente não há como ele apagar usando este código acima. (y)
Sim, ele mesmo adicionando as modificações e dando OK, ele mostrará mensagem que APAGOU O REGISTRO (só modificar a mensagem nas últimas linhas do código), mas o real que ele deva adicionar a informação.

Edição feita por: lwirkk, 03/10/2008, 17:57.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq