Darkside  

Voltar   Darkside > Darkside > Comunidade
FAQ Calendário Postagens do dia Buscapé Search

Responder
 
Thread Tools
CroNicaL
Trooper
 

Steam ID: cron1cal
Default [AJUDA] Codigo PHP / MySQL

13-09-07, 11:48 #1
Amigos, estou com a seguinte dúvida, sou iniciante em php ainda e enfrento o seguinte problema em meu codigo, exclui.php é responsável por excluir um cadastro na em uma tabela no banco de dados, exclui.php é ativado mediante um botão que fica na apresentação dessa tabela ao usuário. O problema é o seguinte, se eu mando excluir, e aperto a tecla F5, mysql_fetch_array($result) vai para array seguinte, repetindo assim a operação e excluindo o proximo cadastro. Não quero que isso aconteça, quero que ele exclua somente o cadastro da Linha e saia fora, não permita que o F5 pule para o proximo cadastro.

Code:
/* exclui.php */
<?php
  
 include 'consulta.php';

 $host="localhost";
 $user="root";
 $res= mysql_connect("$host","$user");

 if($res){
  
  $sql = "delete from cadfun where codfun = '$bola_da_vez'";
 
  
  mysql_db_query("virtual","$sql", $res);

}


?>
E aqui segue o codigo da consulta.php que exibe a tabela para o usuário com um botão para excluir o usuário em cada ROW , observem.

Code:
/*consulta.php */


 <?php
 
   mysql_connect("localhost","root");
   mysql_select_db("virtual");

  $query = "select * from cadfun";
  $result = mysql_query($query);

  
 
  echo("<h1>Consulta de Registros</h1>
 
   <table border >

    <tr>
     <th width=30>Nº</th>
     <th width=150>Nome</th>
     <th width=2>Setor</th>
     <th width=150>Função</th>
     <th width=120>Salário</th>
     <th width=100 colspan=2>Ação</th>
    </tr> ");

   while($cadfun_row = mysql_fetch_array($result)) { 
      $bola_da_vez=$cadfun_row[0];
    echo("<tr>
      <td align=center>$cadfun_row[0]</td>
      <td>$cadfun_row[1]</td>
      <td align=center>$cadfun_row[2]</td>
      <td>$cadfun_row[3]</td>
      <td>R$ $cadfun_row[4]</td>
      <td>
       <form method=POST action=exclui.php >
         <input type=submit value=excluir></form></td>
      <td>
       <form method=POST action=altera.php > 
         <input type=submit value=alterar></form></td>
      
     </tr>");
    }
    echo("</table>");
    ?>






Last edited by CroNicaL; 13-09-07 at 11:57..
CroNicaL is offline   Reply With Quote
CroNicaL
Trooper
 

Steam ID: cron1cal
13-09-07, 12:01 #2
Mais direto: Se o usuário apertar F5 várias vezes ele exclui a tabela toda hehe.

CroNicaL is offline   Reply With Quote
Regis
Trooper
 

13-09-07, 12:40 #3
Antes de excluir pede uma confirmação:
Deseja mesmo excluir? S/N
Ja fica menos perigoso.
Agora tu vai ter que tratar direito isso, de maneira que tu passe exatamente a posição da tabela que tu quer excluir. Aí se ele der um reload vai retornar erro, porque ja foi excluído

Regis is offline   Reply With Quote
CroNicaL
Trooper
 

Steam ID: cron1cal
13-09-07, 13:12 #4
Hm, boa ,vou tentar bolar alguma coisa do tipo.

CroNicaL is offline   Reply With Quote
Sh3lld3r
Trooper
 

Steam ID: sh3lld3r
13-09-07, 13:19 #5
Cria um input hidden com valor 1 dentro do form que exclui

na tela de excluir ele deve detectar se o valor daquela variavel é 1 antes de executar qq coisa

assim que executar o comando de apagar, a variavel usada para flag deve perder o valor

se o usuario der f5. nada acontecerá pois a variavel postada perde o valor

Passar o valor da bola que deve ser exluida, gravando num input hidden tb ajuda Cron ¬¬

Sh3lld3r is offline   Reply With Quote
Kovsky
Trooper
 

13-09-07, 16:10 #6
o que o shellder disse parece q funcionaria... só nao estou conseguindo imaginar como o exclui.php iria alterar o valor do hidden depois de excluir o registro.
eu sei fazer isso com javascript: document.form1.campohidden.value = 0;

outra alternativa é, antes de fazer o DELETE, vc fazer um SELECT para saber se o que voce esta querendo deletar, se encontra no banco. Se nao se encontra, é pq ja foi deletado.

uma outra alternativa é depois que excluir o registro, na ultima linha do exclui.php, vc incluir um comando header("Location: ... ") que encaminha o seu browser para outra página. Assim a pessoa não vai ter como apertar f5, para fazer duas vezes ela teria q apertar VOLTAR depois f5, entendeu? pois já estaria em outra página.
Essa outra página para onde será encaminhada, pode ser aquela de onde veio mesmo, com algum parâmetro que fizesse escrever na tela: "REGISTRO EXCLUIDO"
Deu para entender ou fui muito confuso?

Kovsky is offline   Reply With Quote
hardz
Unbreakable
 

PSN ID: hardwarez
13-09-07, 16:33 #7
taca um javascript ae

deseja deletar realmente?

IF resposta == sim
header go exclui.php?id=X


exclui.php == delete * from tabela where id= $_GET['id']

javascript: alert("valor deletado");

<? header go pagina.php ?>

ou então
javascript:go('index.php');

hardz is offline   Reply With Quote
Bombastic
The Alpha Male
 

13-09-07, 16:34 #8
gambiarras detected

Bombastic is offline   Reply With Quote
serjaum
Master Chief
 

Gamertag: serjaum
13-09-07, 16:43 #9
bomba phd em programacao

serjaum is offline   Reply With Quote
Bombastic
The Alpha Male
 

13-09-07, 16:59 #10
Quote:
Postado por serjaum
bomba phd em programacao
sorry, mas

um macaco consegue programar...

eu faço coisas mais elaboradas

Bombastic is offline   Reply With Quote
Sh3lld3r
Trooper
 

Steam ID: sh3lld3r
13-09-07, 17:51 #11
Quote:
Postado por Bombastic
sorry, mas

um macaco consegue programar...

eu faço coisas mais elaboradas
Então Bomba, que um macaco consegue programar a gente já sabe, tomando como exemplo a sua pessoa. Portanto poupe-nos das suas macaquices.

Já que vc diz que programa tão bem, que tal ajudar o Cron compartilhando seu código, num caso tão simples como esse? Ele está começando na área, e é sempre bom incentivar.

Abraço!

Sh3lld3r is offline   Reply With Quote
hardz
Unbreakable
 

PSN ID: hardwarez
13-09-07, 17:55 #12
ASPeiros

hardz is offline   Reply With Quote
Bombastic
The Alpha Male
 

13-09-07, 17:57 #13
Quote:
Postado por Sh3lld3r
Então Bomba, que um macaco consegue programar a gente já sabe, tomando como exemplo a sua pessoa. Portanto poupe-nos das suas macaquices.

Já que vc diz que programa tão bem, que tal ajudar o Cron compartilhando seu código, num caso tão simples como esse? Ele está começando na área, e é sempre bom incentivar.

Abraço!
nao fiz nenhum demerito ao codigo dele, duvidas iniciais sao normais

estou rindo de algumas solucoes imbecis nesse topico

Bombastic is offline   Reply With Quote
Sh3lld3r
Trooper
 

Steam ID: sh3lld3r
13-09-07, 18:01 #14
Quote:
Postado por Bombastic
nao fiz nenhum demerito ao codigo dele, duvidas iniciais sao normais

estou rindo de algumas solucoes imbecis nesse topico
Então tá limpo , ajuda o minino bomba! =D

Sh3lld3r is offline   Reply With Quote
CroNicaL
Trooper
 

Steam ID: cron1cal
13-09-07, 18:04 #15
Valeu ai pessoal , ainda não consegui resolver o problema, vou tentar mais atentamente quando chegar em casa.

CroNicaL is offline   Reply With Quote
Regis
Trooper
 

13-09-07, 18:27 #16
Quote:
Postado por Bombastic
gambiarras detected
ahhhhhhhhhhhhhhhh mlk, piso no calo. nao manjo nem de php nem de MySQL? vai toma no meio do seu cu rapa, vo nem fala naaaaaaaaaada p/ vc mlk. n vo discuti com um nerd de forum sobre PHP e MySQL!!!! AIUHASUAHEUIAUHEIUSHAUIHEUIHSU PQP
btw, 22 anos muito bem vividos.
seu merda.



Regis is offline   Reply With Quote
Sh3lld3r
Trooper
 

Steam ID: sh3lld3r
13-09-07, 18:28 #17
calma Regis hehawuhawuhaw

Sh3lld3r is offline   Reply With Quote
maFious
 

13-09-07, 19:52 #18
mano, mas pelo código se der f5 vai tentar deletar o mesmo registro somente...

o fetch_array é pra select só..

maFious is offline   Reply With Quote
Gerson
Trooper
 

13-09-07, 19:56 #19
tu programa em que bombastic?

Gerson is offline   Reply With Quote
maFious
 

13-09-07, 19:57 #20
ah não, vc incluiu o consulta.php no exclui.php!

maFious is offline   Reply With Quote
Bombastic
The Alpha Male
 

13-09-07, 21:45 #21
Quote:
Postado por Regis
ahhhhhhhhhhhhhhhh mlk, piso no calo. nao manjo nem de php nem de MySQL? vai toma no meio do seu cu rapa, vo nem fala naaaaaaaaaada p/ vc mlk. n vo discuti com um nerd de forum sobre PHP e MySQL!!!! AIUHASUAHEUIAUHEIUSHAUIHEUIHSU PQP
btw, 22 anos muito bem vividos.
seu merda.


desculpa ai virjao de 22 anos


Quote:
Postado por songer
tu programa em que bombastic?
profissionalmente solucoes em j2ee

Bombastic is offline   Reply With Quote
GoldenEye
Trooper
 

13-09-07, 21:57 #22
gambiarras nao...
adequacoes tecnicas!

GoldenEye is offline   Reply With Quote
Regis
Trooper
 

13-09-07, 23:23 #23
Porra, ninguem sacou que eu citei um jargão Punkcoriano?

Regis is offline   Reply With Quote
un4
inativo
 

13-09-07, 23:34 #24
quando eu sou obrigado a usar PHP, sempre uso o CakePHP

give it a try ;O

un4 is offline   Reply With Quote
Responder


Regras de postagem
Você não pode criar novos tópicos
Você não pode postar
Você não pode enviar anexos
Você não pode editar seus posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Atalho para Fóruns



O formato de hora é GMT -3. horário: 19:47.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.