Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde nobres colegas, mais uma vez preciso de uma ajuda dos senhores!
no meu projeto, na área administrativa, tem um link que deleta certos dados da tabela, por acidente meu cliente as vezes deleta sem querer, e são dados importantes, coloquei uma confirmação "onclick" mas não resolveu muito, as vezes ele diz que esbarra na barra de espaço, ou não lê o que ta escrito na confirmação e da ok e adeus dados...
o que eu precisava fazer, ao clicar no link pedir a senha do usuário como confirmação, ou qualquer outra senha. segue meu codigo (link e variaveis que deleta os dados):
////link para deletar os dados////
echo '<td align="center"><a href="index2.php?exe=album/album&pag='.$pag.'&delid='.$art['id'].'&thumb='.$art['thumb'].'" title="excluir" onClick="return confirm(\'Atenção, você esta excluindo o álbum de um cliente, esta ação irá deletar todas as fotos e dados deste álbum, deseja continuar?\');"><img src="ico/no.png" alt="excluir" title="excluir" /></a></td>';
//remove o post
if(!empty($_GET['delid'])){
$delId = $_GET['delid'];
$thumb = $_GET['thumb'];
$pasta = '../uploads/';
$readGbDel = read('galeria',"WHERE post_id = '$delId'");
if($readGbDel){
foreach($readGbDel as $gbDel):
if(file_exists($pasta.$gbDel['img']) && !is_dir($pasta.$gbDel['img'])){
unlink($pasta.$gbDel['img']);
}
endforeach;
delete('galeria',"post_id = '$delId'");
delete('pedidos',"post_id = '$delId'");
}
if(file_exists($pasta.$thumb) && !is_dir($pasta.$thumb)){
unlink($pasta.$thumb);
}
delete('posts',"id = '$delId'");
}se alguem puder ajudar, agradeço muito
Você Pode Fazer Assim:
Troca o echo do Botão Por este Código:
<?php
echo '<td align="center"><a href="javascript:void(0);" title="excluir"><img src="ico/no.png" alt="excluir" title="excluir" /></a></td>';
?>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script><!--Inclui o Jquery se ele já esta no seu código pode remover-->
<script type="text/javascript">
$(document).ready(function(){
$('a[title=excluir]').click(function(){
var senha = prompt("Digite Sua Senha Para Confirmar a Exclusão: ");
//Aqui Faz Um Ajax Que Verifica A Senha E Retorna True Ou False
$.post('verificaSenha.php',{'senha': senha},function(retorno){
if(retorno == true){
url = 'index2.php?exe=album/album&pag=<?php //echo $pag; ?>&delid=<?php //echo $art['id']?>&thumb=<?php //echo $art['thumb']; ?>';
$(window.document.location).attr('href',url);
}
});
});
});
</script>
<?php
E cria uma pagina chamada verificaSenha.php que irá fazer a verificação:
<?php
//Aqui Faz o Código para selecionar a senha
if(/*Aqui Verificar se a senha é igual*/){
//Se Igual Retorna TRUE
echo true;
}else{
echo false;
}
?>>
Você Pode Fazer Assim:
Troca o echo do Botão Por este Código:
<?php
echo '<td align="center"><a href="javascript:void(0);" title="excluir"><img src="ico/no.png" alt="excluir" title="excluir" /></a></td>';
?>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script><!--Inclui o Jquery se ele já esta no seu código pode remover-->
<script type="text/javascript">
$(document).ready(function(){
$('a[title=excluir]').click(function(){
var senha = prompt("Digite Sua Senha Para Confirmar a Exclusão: ");
//Aqui Faz Um Ajax Que Verifica A Senha E Retorna True Ou False
$.post('verificaSenha.php',{'senha': senha},function(retorno){
if(retorno == true){
url = 'index2.php?exe=album/album&pag=<?php //echo $pag; ?>&delid=<?php //echo $art['id']?>&thumb=<?php //echo $art['thumb']; ?>';
$(window.document.location).attr('href',url);
}
});
});
});
</script>
<?php
E cria uma pagina chamada verificaSenha.php que irá fazer a verificação:
<?php
//Aqui Faz o Código para selecionar a senha
if(/*Aqui Verificar se a senha é igual*/){
//Se Igual Retorna TRUE
echo true;
}else{
echo false;
}
?>
Cesar, não deu certo.
Você alterou a Página verificaSenha.php para fazer a verificação??
E Troca o código para este:
<?php
echo '<td align="center"><a href="javascript:void(0);" title="excluir"><img src="ico/no.png" alt="excluir" title="excluir" /></a></td>';
?>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script><!--Inclui o Jquery se ele já esta no seu código pode remover-->
<script type="text/javascript">
$(document).ready(function(){
$('a[title=excluir]').click(function(){
var senha = prompt("Digite Sua Senha Para Confirmar a Exclusão: ");
//Aqui Faz Um Ajax Que Verifica A Senha E Retorna True Ou False
$.post('verificaSenha.php',{'senha': senha},function(retorno){
if(retorno == true){
url = 'index2.php?exe=album/album&pag=<?php echo $pag; ?>&delid=<?php echo $art['id']; ?>&thumb=<?php echo $art['thumb']; ?>';
$(window.document.location).attr('href',url);
}
});
});
});
</script>
<?php>
Você alterou a Página verificaSenha.php para fazer a verificação??
E Troca o código para este:
<?php
echo '<td align="center"><a href="javascript:void(0);" title="excluir"><img src="ico/no.png" alt="excluir" title="excluir" /></a></td>';
?>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script><!--Inclui o Jquery se ele já esta no seu código pode remover-->
<script type="text/javascript">
$(document).ready(function(){
$('a[title=excluir]').click(function(){
var senha = prompt("Digite Sua Senha Para Confirmar a Exclusão: ");
//Aqui Faz Um Ajax Que Verifica A Senha E Retorna True Ou False
$.post('verificaSenha.php',{'senha': senha},function(retorno){
if(retorno == true){
url = 'index2.php?exe=album/album&pag=<?php echo $pag; ?>&delid=<?php echo $art['id']; ?>&thumb=<?php echo $art['thumb']; ?>';
$(window.document.location).attr('href',url);
}
});
});
});
</script>
<?php
ja tinha feito essas alteraçoes, ele pede a senha mas nao acontece nada, creio que o segredo ta na pagina verificaSenha.php
Qual o Código da pagina verificaSenha.php??
Qual o Código da pagina verificaSenha.php??
<?php
$readSenhas = read('users');
foreach ($readSenhas as $senhas);
$senha = $senhas['code'];
if($senha){
//Se Igual Retorna TRUE
echo true;
}else{
echo false;
}
?>Tenta Assim:
<?php
$readSenhas = read('users');
foreach ($readSenhas as $senhas){
$senha = $senhas['code'];
}
if($senha == $_POST['senha']){
echo true;
}else{
echo false;
}
?>>
Tenta Assim:
<?php
$readSenhas = read('users');
foreach ($readSenhas as $senhas){
$senha = $senhas['code'];
}
if($senha == $_POST['senha']){
echo true;
}else{
echo false;
}
?>
deu nao
o que a funçao read('users') retorna??
o que a funçao read('users') retorna??
ela lê a tabela users
function read($tabela, $cond = NULL){
$qrRead = "SELECT * FROM {$tabela} {$cond}";
$stRead = mysql_query($qrRead) or die ('Erro ao ler em '.$tabela.' '.mysql_error());
$cField = mysql_num_fields($stRead);
for($y = 0; $y < $cField; $y++){
$names[$y] = mysql_field_name($stRead,$y);
}
for($x = 0; $res = mysql_fetch_assoc($stRead); $x++){
for($i = 0; $i < $cField; $i++){
$resultado[$x][$names[$i]] = $res[$names[$i]];
}
}
return $resultado;
}Mas você não deveria pegar somente de um user a senha??
e Qual a Estrutura da Tabela??
>
Mas você não deveria pegar somente de um user a senha??
e Qual a Estrutura da Tabela??
id
nome
senha_md5
code
coloquei pra pegar só o administrador, nao foi tambem:
<?php
$readSenhas = read('up_users',"WHERE nome = 'administrador'");
foreach ($readSenhas as $senhas){
$senha = $senhas['code'];
}
if($senha == $_POST['senha']){
echo true;
}else{
echo false;
}
?>
>
id
nome
senha_md5
code
coloquei pra pegar só o administrador, nao foi tambem:
<?php
$readSenhas = read('up_users',"WHERE nome = 'administrador'");
foreach ($readSenhas as $senhas){
$senha = $senhas['code'];
}
if($senha == $_POST['senha']){
echo true;
}else{
echo false;
}
?>
Ele pede a senha, so que nao deleta
<?php
$readSenhas = read('up_users',"WHERE nome = 'administrador' LIMIT 1");
foreach ($readSenhas as $senhas){
$senha = $senhas['senha_md5'];
}
if($senha == md5($_POST['senha'])){
echo true;
}else{
echo false;
}
?>>
<?php
$readSenhas = read('up_users',"WHERE nome = 'administrador' LIMIT 1");
foreach ($readSenhas as $senhas){
$senha = $senhas['senha_md5'];
}
if($senha == md5($_POST['senha'])){
echo true;
}else{
echo false;
}
?>
o problema esta na hora de ler a senha no banco, nesse caso eu posso ter uma senha fixa no proprio codigo, sem problemas, tipo independente do usuario, ele digite a senha "deletar" por exemplo ele autoriza excluir, seria possivel me ajudar a fazer assim?
<?php
$senha = 'deletar'; // Aqui vai a Senha
if($senha == $_POST['senha']){
echo true;
}else{
echo false;
}
?>irmãos, nao consegui da forma acima, mas consegui uma solução razoável, inseri um captcha no link para confirmar e pronto, 100% seguro contra desatentos.
mais uma vez, obrigado e qualquer coisa estou a disposição
Caraca meu que cara atrapalhado...rs
Mas voltando ao assunto..
Eu tentaria fazer uma modal com um input de senha e fazer a exlusão por ajax;
Abs