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->resultado, MYSQL_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!!!!!!