From:             manzoli at cisi dot coppe dot ufrj dot br
Operating system: PHP
PHP version:      4.4.0
PHP Bug Type:     Sybase-ct (ctlib) related
Bug description:  Duplicidade de registros - insert

Description:
------------
Estou realizando um insert.
Consigo gravar no banco, porém está me ocasionando erro de duplicidade.
É como se o IIS guardasse o comando e o enviasse novamente.

Reproduce code:
---------------
Trabalho com php e estou fazendo uma conexão sybase. 

Primeiro - como sei no php se estou usando sybase-ct ou sybase-db? 
Segundo - o que e melhor para se trabalhar sybase_pconnect ou
sybase_connect? 

Olha só estou fazendo o seguinte insert: 

for ($i = 0; $i <= $total_itens; $i++) { 
include "inc_busca_conexao_syb.php"; 

// Grava dados do formulário. 
$item = $_POST["item_$i"]; 
$descricao = $_POST["descricao_$i"]; 

if ($item) 
{ 

$sql = "INSERT INTO tabela "; 
$sql .= "(coi_item, cos_prot_destino, dat_solicitacao, stv_descricao, "; 
$sql .= "cos_prot_origem, stc_status) "; 
$sql .= "values ("; 
$sql .= "$item, '$prot_destino', convert(datetime,'$data_solicitacao', 
103), "; 
$sql .= "'$descricao','$prot_origem', 'N' "; 
$sql .= ")"; 

$resultado = sybase_query(trim($sql),$db_conexao->db_connect_id); 

sybase_free_result($resultado); 
sybase_close($db_conexao->db_connect_id); 
} 

precisei abrir e fechar a conexão dentro do for, pois estava dando erro de

duplicidade o tempo todo. Não consegui descobrir o porque. 

Minha conexão está da seguinte forma: 

$db_user = "xxxxx"; //usuario do banco 
$db_passwd = "yyyyy"; //senha do usuario 
$db_database = "BBBBB"; //nome da base de dados 
$db_server = "CCCCCCC"; //nome da base de dados 

require("inc_conectardb_syb.php"); 

$db_conexao = new sql_db; 
$db_conexao->sql_db($db_server,$db_user,$db_passwd,$db_database) or die 
("Falha na chamada de conexão"); 
sybase_select_db($db_database, $db_conexao->db_connect_id) or die ("Falha
na 
seleção do database"); 

define("SQL_LAYER","sql-sybase"); 

class sql_db 
{ 

var $db_connect_id; 
var $result; 

var $next_id; 

var $num_rows = array(); 
var $current_row = array(); 
var $field_names = array(); 
var $field_types = array(); 
var $result_rowset = array(); 

var $num_queries = 0; 

// 
// Constructor 
// 
function sql_db($sqlserver, $sqluser, $sqlpassword, $database, 
$persistency = false) 
{ 
$this->persistency = $persistency; 
$this->server = $sqlserver; 
$this->user = $sqluser; 
$this->password = $sqlpassword; 
$this->dbname = $database; 

($this->db_connect_id = ($this->persistency) ? sybase_pconnect 
($this->server, $this->user, $this->password) :
sybase_connect($this->server, 
$this->user, $this->password)); 

return ( $this->db_connect_id ) ? $this->db_connect_id : 
false; 
} 
} 

TEM COMO ME AJUDAR. NÃO QUERIA ABRIR E FECHAR CONEXÃO A CADA PASSADA NO
FOR. 

 
    

1 usuário(s) lendo este tópico (0 visitantes e 0 usuários anônimos)



-- 
Edit bug report at http://bugs.php.net/?id=33757&edit=1
-- 
Try a CVS snapshot (php4):   http://bugs.php.net/fix.php?id=33757&r=trysnapshot4
Try a CVS snapshot (php5.0): 
http://bugs.php.net/fix.php?id=33757&r=trysnapshot50
Try a CVS snapshot (php5.1): 
http://bugs.php.net/fix.php?id=33757&r=trysnapshot51
Fixed in CVS:                http://bugs.php.net/fix.php?id=33757&r=fixedcvs
Fixed in release:            http://bugs.php.net/fix.php?id=33757&r=alreadyfixed
Need backtrace:              http://bugs.php.net/fix.php?id=33757&r=needtrace
Need Reproduce Script:       http://bugs.php.net/fix.php?id=33757&r=needscript
Try newer version:           http://bugs.php.net/fix.php?id=33757&r=oldversion
Not developer issue:         http://bugs.php.net/fix.php?id=33757&r=support
Expected behavior:           http://bugs.php.net/fix.php?id=33757&r=notwrong
Not enough info:             
http://bugs.php.net/fix.php?id=33757&r=notenoughinfo
Submitted twice:             
http://bugs.php.net/fix.php?id=33757&r=submittedtwice
register_globals:            http://bugs.php.net/fix.php?id=33757&r=globals
PHP 3 support discontinued:  http://bugs.php.net/fix.php?id=33757&r=php3
Daylight Savings:            http://bugs.php.net/fix.php?id=33757&r=dst
IIS Stability:               http://bugs.php.net/fix.php?id=33757&r=isapi
Install GNU Sed:             http://bugs.php.net/fix.php?id=33757&r=gnused
Floating point limitations:  http://bugs.php.net/fix.php?id=33757&r=float
No Zend Extensions:          http://bugs.php.net/fix.php?id=33757&r=nozend
MySQL Configuration Error:   http://bugs.php.net/fix.php?id=33757&r=mysqlcfg

Reply via email to