#33757 [Fbk->Bgs]: Duplicidade de registros - insert
| From: | nlopess@php.net | Date: | Tue, 19 Jul 2005 11:43:58 +0000 |
| Subject: | #33757 [Fbk->Bgs]: Duplicidade de registros - insert | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-82138@lists.php.net to get a copy of this message | ||
ID: 33757
Updated by: nlopess@php.net
Reported By: manzoli at cisi dot coppe dot ufrj dot br
-Status: Feedback
+Status: Bogus
Bug Type: Sybase-ct (ctlib) related
Operating System: PHP
PHP Version: 4.4.0
New Comment:
it's not a bug report, just a couple of questions.
Previous Comments:
------------------------------------------------------------------------
[2005-07-18 20:40:01] derick@php.net
Speak english here.
------------------------------------------------------------------------
[2005-07-18 20:39:51] tony2001@php.net
Sorry, but your problem does not imply a bug in PHP itself. For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system
is not the
appropriate forum for asking support questions. Due to the volume
of reports we can not explain in detail here why your report is not
a bug. The support channels will be able to provide an explanation
for you.
Thank you for your interest in PHP.
------------------------------------------------------------------------
[2005-07-18 20:36:30] manzoli at cisi dot coppe dot ufrj dot br
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 this bug report at http://bugs.php.net/?id=33757&edit=1