Ir para conteúdo
Fórum Script Brasil
  • 0

Os Commerce Com Erro Na Finalização De Venda!


jotahostnet

Pergunta

todo osCommerce vem cheiode bug´s ... isso é fato..

depois de dias acertando ele, aconteceu mais um bug, cujo qual não consigo resolver.

Já postei em diversos fóruns e ninguém me ajuda, espero que aqui alguém possa me ajudar....

o erro que aparece no navegador é esse:

Fatal error: Cannot redeclare tep_db_connect() (previously declared in /home/j24279/public_html/sunflower/includes/functions/database.php:13) in /home/j24279/public_html/sunflower/includes/functions/database.php on line 25

to ficando louco com isso... mas mesmo com esse erro ele efetua a venda do produto tudo certinho, não sei mais a quem recorrer para corrigir esse erro, espero realmente que alguém possa me ajudar....

obrigado e []´s a todos !

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

obrigado por ter dado uma luz ...

mas tipo assim ....

como eu faço pra resolver isso !!?!?!

tu saberia me dizer !?

o que eu devo remover !?

eu apenas instalei o OsCommerce do geitinho que veio do site da versão em portugues, instalei , apenhei pra resolver bugs e esse insiste em permanecer ....

você poderia me ajudar !?

segue abaixo o código de onde diz estar ocorrendo o erro...

<?php
/*
  $Id: database.php,v 1.21 2003/06/09 21:21:59 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/

  function tep_db_connect($server = DB_SERVER, $username = DB_SERVER_USERNAME, $password = DB_SERVER_PASSWORD, $database = DB_DATABASE, $link = 'db_link') {
    global $$link;

    if (USE_PCONNECT == 'true') {
      $$link = mysql_pconnect($server, $username, $password);
    } else {
      $$link = mysql_connect($server, $username, $password);
    }

    if ($$link) mysql_select_db($database);

    return $$link;
  }

  function tep_db_close($link = 'db_link') {
    global $$link;

    return mysql_close($$link);
  }

  function tep_db_error($query, $errno, $error) { 
    die('<font color="#000000"><b>' . $errno . ' - ' . $error . '<br><br>' . $query . '<br><br><small><font color="#ff0000">[TEP STOP]</font></small><br><br></b></font>');
  }

  function tep_db_query($query, $link = 'db_link') {
    global $$link;

    if (defined('STORE_DB_TRANSACTIONS') && (STORE_DB_TRANSACTIONS == 'true')) {
      error_log('QUERY ' . $query . "\n", 3, STORE_PAGE_PARSE_TIME_LOG);
    }

    $result = mysql_query($query, $$link) or tep_db_error($query, mysql_errno(), mysql_error());

    if (defined('STORE_DB_TRANSACTIONS') && (STORE_DB_TRANSACTIONS == 'true')) {
       $result_error = mysql_error();
       error_log('RESULT ' . $result . ' ' . $result_error . "\n", 3, STORE_PAGE_PARSE_TIME_LOG);
    }

    return $result;
  }

  function tep_db_perform($table, $data, $action = 'insert', $parameters = '', $link = 'db_link') {
    reset($data);
    if ($action == 'insert') {
      $query = 'insert into ' . $table . ' (';
      while (list($columns, ) = each($data)) {
        $query .= $columns . ', ';
      }
      $query = substr($query, 0, -2) . ') values (';
      reset($data);
      while (list(, $value) = each($data)) {
        switch ((string)$value) {
          case 'now()':
            $query .= 'now(), ';
            break;
          case 'null':
            $query .= 'null, ';
            break;
          default:
            $query .= '\'' . tep_db_input($value) . '\', ';
            break;
        }
      }
      $query = substr($query, 0, -2) . ')';
    } elseif ($action == 'update') {
      $query = 'update ' . $table . ' set ';
      while (list($columns, $value) = each($data)) {
        switch ((string)$value) {
          case 'now()':
            $query .= $columns . ' = now(), ';
            break;
          case 'null':
            $query .= $columns .= ' = null, ';
            break;
          default:
            $query .= $columns . ' = \'' . tep_db_input($value) . '\', ';
            break;
        }
      }
      $query = substr($query, 0, -2) . ' where ' . $parameters;
    }

    return tep_db_query($query, $link);
  }

  function tep_db_fetch_array($db_query) {
    return mysql_fetch_array($db_query, MYSQL_ASSOC);
  }

  function tep_db_num_rows($db_query) {
    return mysql_num_rows($db_query);
  }

  function tep_db_data_seek($db_query, $row_number) {
    return mysql_data_seek($db_query, $row_number);
  }

  function tep_db_insert_id() {
    return mysql_insert_id();
  }

  function tep_db_free_result($db_query) {
    return mysql_free_result($db_query);
  }

  function tep_db_fetch_fields($db_query) {
    return mysql_fetch_field($db_query);
  }

  function tep_db_output($string) {
    return htmlspecialchars($string);
  }

  function tep_db_input($string) {
    return addslashes($string);
  }

  function tep_db_prepare_input($string) {
    if (is_string($string)) {
      return trim(tep_sanitize_string(stripslashes($string)));
    } elseif (is_array($string)) {
      reset($string);
      while (list($key, $value) = each($string)) {
        $string[$key] = tep_db_prepare_input($value);
      }
      return $string;
    } else {
      return $string;
    }
  }
?>

Editado por jotahostnet
Link para o comentário
Compartilhar em outros sites

  • 0

Teoricamente basta remover:

function tep_db_connect($server = DB_SERVER, $username = DB_SERVER_USERNAME, $password = DB_SERVER_PASSWORD, $database = DB_DATABASE, $link = 'db_link') {
    global $$link;

    if (USE_PCONNECT == 'true') {
      $$link = mysql_pconnect($server, $username, $password);
    } else {
      $$link = mysql_connect($server, $username, $password);
    }

    if ($$link) mysql_select_db($database);

    return $$link;
  }

Levando em conta que essa função faz a conexão com o banco de dados, ela já deve estar sendo chamada na index ou no cabeçalho...

Link para o comentário
Compartilhar em outros sites

  • 0

realmente ... isso solucionou parte do problema ...

agora aparece outra mensagem de erro....

Fatal error: Call to undefined function tep_db_connect() in /home/j24279/public_html/sunflower/includes/application_top.php on line 65

to começando a ficar muito decepcionado com o OsCommerce....

alguém me indica algo melhor que ele !? (pelo menos para poder testar ?)

mas muito gostaria de poder resolver esse bug ...

espero que continuem ajudando um méro mortal como eu ...

obrigado pela ajuda até agora ... coisa que nem no "oficial" da tradução do Brasil eu tive ...

Link para o comentário
Compartilhar em outros sites

  • 0

O erro que ele está dando é que não está encontrando a função tep_db_connect, antes ele dizia que ela já tinha sido declarada, ou seja, que existia duas vezes... você vai ter que procurar nos arquivos que são carregados junto com esse (através de REQUIRE, REQUIRE_ONCE, INCLUDE, INCLUDE_ONCE) para ver se em algum deles já existe a tal função...

Link para o comentário
Compartilhar em outros sites

  • 0

realmente muito obrigado.... agradeço sua ajuda.

eu procurei em todas os arquivos que são utilisados pela página que está dando erro e não encontrei nada alem de te_db_connect close;

mas sem problemas, vou estudando essa tranqueira do OsCommerce pra ver se eu consigo acertar ele...

o meu hoster tem ele através do FANTASTICO, instalei ele por lá ficou lindo, sem erros mas todo em inglês, quando vou traduzir ele da alguns erros, mas vou tentando, vai ter alguma hora que eu vou conseguir acertar essa encrenca...

realmente muito obrigado por ter ajudado(pena que aqui nesse fórum não tem qualificações, pelo menos que eu saiba, pois se tivesse eu daria nota 10 pela tua ajuda ESerra ! Realmente tu merece o cargo de moderador, coisa que em outros fóruns o povo recebe nome de moderador e não conhece nem o básico do que fala.)

[]´s a todos do fórum !

Link para o comentário
Compartilhar em outros sites

  • 0

Por a sua cópia que está com problema já ser uma modificação do original, provavelmente alguém fez uma cacazinha... um dos problemas da OSC é que existem várias versões soltas por ai, o melhor sempre é pegar direto do site oficial, será em inglês, vai ter um certo trabalho pra traduzir e implementar coisas próprias do Brasil (busca por CEP, cálculo de frete via site dos correios, etc...), mas vale mais a pena...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652k
×
×
  • Criar Novo...