Wanda 0 Denunciar post Postado Julho 15, 2014 Boa tarde Tenho a seguinte rotina: mysql_select_db($database_Local, $Local); $sql = sprintf("DELETE FROM disciplina WHERE iddisciplina=%s", GetSQLValueString($val, "int")); $r1 = mysql_query($sql, $Local); $affected = mysql_affected_rows(); if (is_null($affected )) { $msg = '<span class="msgclose">'."Falha na exclusão de Disciplina ".$val."</span><br>"; } Não sei o que acontece, query para delete está ok, não apresenta erro, porém quando consulto o banco o registro continua lá, intacto. Já dei echo na sql e testei no Navicat. Funciona certinho. Alguém tem alguma idéia do que pode estar acontecendo???? Definição da tabela: SET NAMES utf8; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for `disciplina` -- ---------------------------- DROP TABLE IF EXISTS `disciplina`; CREATE TABLE `disciplina` ( `iddisciplina` smallint(255) unsigned NOT NULL AUTO_INCREMENT, `nomedisciplina` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, `cargadisc` int(3) unsigned DEFAULT NULL, `idperiodo` smallint(255) unsigned DEFAULT NULL, PRIMARY KEY (`iddisciplina`) ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; Desculpem, não há erro. A falha é da humana. Tá na lógica geral! Obrigada àqueles que gastaram algum tempo pensando! Compartilhar este post Link para o post Compartilhar em outros sites
jgustavo99 85 Denunciar post Postado Julho 15, 2014 Olá! Tente: <?php mysql_select_db($database_Local, $Local); $sql = "DELETE FROM disciplina WHERE iddisciplina=%s", GetSQLValueString($val, "int")"; $r1 = mysql_query($sql, $Local); $affected = mysql_affected_rows(); if (is_null($affected )) { $msg = '<span class="msgclose">'."Falha na exclusão de Disciplina ".$val."</span><br>"; } ?> Caso não consegua, dê um var_dump($r1), e poste o Resultado :) Compartilhar este post Link para o post Compartilhar em outros sites