Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

.JoaoVitor.

[Resolvido] Problema com um código

Recommended Posts

Estou com um problema no código, vejam:

 

<?php
include("config.php");
$umdia = "86400";
$sqlselect = mysql_query("SELECT * FROM users_especiais WHERE duracao >= '$umdia'");
$sqlselect2 = mysql_query("SELECT * FROM users_especiais WHERE duracao < '$umdia'");

while($sql = mysql_fetch_array($sqlselect)){
$ntempo = $sql['duracao']-$umdia;
$update = mysql_query("UPDATE users_especiais SET duracao='$ntempo'") or die(mysql_error());
echo "<spam class='txt'>Campo de ID " . $sql['id'] . " foi atualizao com sucesso.</spam><br />";
}
while($sql2 = mysql_fetch_array($sqlselect2)){
$delete = mysql_query("DELETE FROM users_especiais WHERE duracao < '$umdia'");
echo "<spam class='txt'>Campo de ID " . $sql2['id'] . " foi deletado com sucesso.</spam><br />";
}
?>
<meta http-equiv="refresh" content="86400; url=up_especiais.php">

 

Agora o problema:

No banco de dados, tenho uma linha com um campo(duracao) de valor 432000 (em segundos), na outra linha o mesmo campo com o valor 604800 (em segundos)

No script é pra selecionar todos, e subtrair 86400(um dia) de cada campo encontrado de valor maior que "$umdia"

Porém ele não so subtrai mas também soma.

 

No campo de valor 432000 ele retorna 518400, e no campo de 604800 ele também retorna 518400.

E o certo seria ficar 345600 e no outro campo 518400.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faltou uma cláusula para a atualização aí, você precisa informar o ID da linha a ser atualizada:

$id = $sql['id'];
$update = mysql_query("UPDATE users_especiais SET duracao='$ntempo' WHERE id=$id") or die(mysql_error());

Na hora de excluir, precisa fazer a mesma coisa...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.