Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/10/2008, 08:53
yeikh
 
Fecha de Ingreso: septiembre-2008
Mensajes: 45
Antigüedad: 15 años, 8 meses
Puntos: 0
Exclamación Problema con archivo de funciones

Que pasa chavales, como andamos.
Os explico ando liadillo con un tema para hacer un archvio php que tenga una serie de funciones, todo va bien si solo llamo a una de las funciones que hay en el archivo pero si llamoa a otra muere, ademas con con un error rarisimo.

Os cuento el archivo en el que llamo la funcion es

Código PHP:
<?php

require_once("./categoria/editar_categoria.php");

mostrar();

$dato "ATC";
insertar($dato);
echo
"Dato insertado <br>";


?>
el tema es que mostrar muestra, pero no inserta, y si intercambio la funciones inserta pero no muestra. El error que sale es este

Código:
id_categoria: 18
tipo_contacto: ATC

id_categoria: 17
tipo_contacto: ATC


Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\historico\class\class_mysql.php on line 28

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\xampp\htdocs\historico\class\class_mysql.php on line 29

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\xampp\htdocs\historico\class\class_mysql.php on line 35
Error en la conexión con la base de datos.
y el archivo que llamo editar_categoria que es donde tengo las funciones tiene estos datos

Código PHP:
<?php
//Muestra la lista de categorias
function mostrar()
{
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/include/conf_conexion.php');
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/class/class_mysql.php');
    
    
$usuario = new Servidor_Base_Datos($servidor$usuario$pass$base_datos);
    
    
$usuario->consulta("SELECT * FROM categoria");
    while (
$fila $usuario->extraer_registro())
    {
        foreach(
$fila as $indice => $valor)
        {
            echo 
"$indice: $valor<br>";
        }
        echo 
"<br>";
    }
}

//Inserta un registro en la lista
function insertar($tipo_contacto)
{
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/include/conf_conexion.php');
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/class/class_mysql.php');
    
    
$usuario = new Servidor_Base_Datos($servidor$usuario$pass$base_datos);
    
    
$usuario->consulta("INSERT INTO categoria (tipo_contacto) VALUE ('$tipo_contacto')");
}

//Borra un registro de la lista
function borrar($id)
{
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/include/conf_conexion.php');
    require_once(
$_SERVER[DOCUMENT_ROOT].'/historico/class/class_mysql.php');
    
    
$usuario = new Servidor_Base_Datos($servidor$usuario$pass$base_datos);
    
    
$usuario->consulta("SELECT id_categoria FROM categoria WHERE id_categoria='$id'");
}
?>
los datos de conexion son correctos, y la clase que he hecho para la base de datos rula a la perfección. X cierto la clase es esta

Código PHP:
<?php

/**
 * @author Oscar Majo
 * @copyright 2008
 */

class Servidor_Base_Datos
{
    private 
$servidor;
    private 
$usuario;
    private 
$pass;
    private 
$base_datos;
    private 
$descriptor;
    
    function 
__construct($servidor$usuario$pass$base_datos)
    {
        
$this->servidor $servidor;
        
$this->usuario $usuario;
        
$this->pass $pass;
        
$this->base_datos $base_datos;
        
$this->conectar_base_datos();
    }
    
    
//Establece conexión con el servidor
    
private function conectar_base_datos()
    {
        
$this->descriptor mysql_connect($this->servidor$this->usuario$this->pass);
        
mysql_select_db($this->base_datos$this->descriptor);
    }
    
    
//Se encarga de enviar las cosnusltas al servidor
    
public function consulta($consulta)
    {
        
$this->resultado mysql_query($consulta$this->descriptor)or die ("Error en la conexión con la base de datos." mysql_error());
    }
    
    
//Extrae registros de l abase de datos 
    
public function extraer_registro()
    {
        if(
$fila mysql_fetch_array($this->resultadoMYSQL_ASSOC))
        {
            return 
$fila;
        }else{
            return 
false;
        }
    }
    
    
//Extrae el numero de filas que tiene la base de datos
    
public function numero_filas()
    {
        return 
mysql_num_rows($this->resultado);
    }
    
    
//Extrae el numero de filas afectados por alguna modificación
    
public function filas_afectadas()
    {
        return 
mysql_affected_rows($this->descriptor);
    }
    
    
//Informa del ultimo registro de la lista 
    
public function ultima_fila()
    {
        return 
mysql_insert_id($this->descriptor);
    }
}
?>
También lo que me pasa es que despues de 25 horas con este error ya estoy mas nervioso que el neng de castefa, juas juas. Asiq si alguien sabe que pasa y no le importa comentarlo...

Gracias a todos por adelantado. Un saludote del yeikh!!!!!!