Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, bom dia!
Estou com o seguinte problema. Criei uma página que ao clicar em um link ele tem que excluir o registro no BD... é bem simples, mas tá difícil, tentei de várias formas já, inclusive utilizando outros scripts mas até agora não obtive exito. Segue códigos:
Arquivo .js // são vários códigos, por isso o document ready não aparece, mas consta no código.
$("a[rel]").click(function(){
var numrow = $(this).attr("rel");
$.get('deleta', {id: numrow}, function(data){
alert(data)}
);
});
include-registros.php (esta página na verdade é incluida na página de administração, via jquery .ajax)
include 'connect.php';
$sql = "Select id,data,valor from cambio order by data desc limit 0,30";
$query = mysql_query($sql);
while($row = mysql_fetch_array($query)){
echo "<tr>";
echo "<td>".date('d/m/Y', strtotime($row['data']))."</td>";
echo "<td>".number_format($row['valor'],4,',','')."</td>";
echo "<td><a href='javascript: void();' rel='".$row['id']."'><img src='images/delete.png' title='Deletar Cambio' alt='Deletar Cambio'></a></td>";
echo "</tr>";
}
mysql_close($con);
deleta.php (página que exclui e gera o resultado para mostrar no alert)
include 'connect.php';
$id = $_GET['id'];
$query_ins=mysql_query("Delete from cambio where id=$id");
echo "Cambio excluído com sucesso!";
mysql_close($con);
Lembrando que no arquivo .js o nome do arquivo está sem a extensão .php pq uso um script de url amigável.
Espero que possam me dar uma luz.
Abraço.
Rodrigo.
>
$("a[rel]").live('click',function(){
e além disso, debugue teu script:
http://wbruno.com.br/blog/2011/03/31/como-debugar-javascript-firefox-erros-comuns/
http://wbruno.com.br/blog/2011/04/14/como-debugar-ajax-firebug/
William, obrigado pela ajuda!
Fiquei pensando aqui comigo, na realidade, o meu script de url amigável somente permite que eu passe os parâmetros deste jeito:
http://localhost/site/deletar-cambio/'>http://localhost/site/deletar-cambio/15
e na realidade, desse modo que eu estava fazendo, estava indo assim:
http://localhost/site/deletar-cambio?id=15
Acho que por isso que ele não conseguia interpretar...
Agora estou com outro problema, há algum jeito de passar o parâmetro no href sem dar refresh na página?
Mudei meu código que gera o link para excluir e ficou assim:
echo "<td><a href='./adm-cambio-del/".$row['id']."' id='deletaCambio' rel='".$row['id']."'><img src='images/delete.png' title='Deletar Cambio' alt='Deletar Cambio'></a></td>";
Só que tá dando refresh na pagina.
Há algum outro modo de passar desse jeito (http://localhost/deleta/15)?
Abraço.
Rodrigo
$("a[rel]").live('click',function( e ){
e.preventDefault();
ai você pode usar o href
William, obrigado mais uma vez!
A parte do refresh deu certinho... o problema é que a página .php não está recebendo a variável, pois ela só interpreta se a URL for passada desse jeito:
http://localhost/sonsbusiness/adm-cambio-del/15 (15 é o id do registro do BD)
se eu passar assim ... adm-cambio-del?id=15 que é o que está indo, ele dá a msg de registro excluído, mas não exclui nada... dei um echo na variável e ela tá 0.
Obrigado desde já.
Rodrigo
http://wbruno.com.br/blog/2011/03/31/como-debugar-javascript-firefox-erros-comuns/
http://wbruno.com.br/blog/2011/04/14/como-debugar-ajax-firebug/