Hola a todos:
Tengo un problema del que no salgo desde hace unos días.
He escrito unas clasas BaseDeDatos y otra Consulta para acceder a mis bases de datos, pero no consigo hacerlo.
Os posteo aqui el codigo del fichero bucador.php y el db.inc.php que incluyen las clases a ver si podeis ayudarme...
Gracias a todos.
CLASES BASEDADATOS Y CONSULTA
class BaseDeDatos {
// Datos de la BD
var $host;
var $bd;
var $usuario;
var $password;
var $link;
/************************************************** *************************/
/* public: Constructor.
* bd: nombre de la base de datos.
* host: direccion de la maquina donde esta instalado MySQL.
* usuario: nombre del usuario con permiso para acceder a dicha BD.
* password: contraseña del usuario.
*/
function BaseDeDatos($bd = "envertical", $host = "localhost",
$usuario = "root", $password = "") {
$this->bd = $bd;
$this->host = $host;
$this->usuario = $usuario;
$this->password = $password;
// Conectamos con la BD
$this->link = @mysql_connect($this->host, $this->usuario, $this->password)
or die("<b>Problema en MySQL:</b> Error al conectar con la base de datos");
@mysql_select_db($this->bd, $this->link)
or die("<b>Problema en MySQL:</b> Error al conectar con la base de datos");
}
}
class Consulta {
var $id;
/************************************************** *************************/
/* public: Constructor.
* sql: Texto de la consulta.
*/
function Consulta($sql) {
$this->id = @mysql_query($sql) or
die("<b>Problema en MySQL:</b> Error <i>" . mysql_error() .
"</i> en la consulta <i>$sql</i>");
}
/************************************************** *************************/
/* public: filas_afectadas
* Devuelve el numero de filas afectadas por la consulta
*/
function filas_afectadas() {
return @mysql_affected_rows();
}
}
BUSCADOR.PHP
<!--
<html>
<body>
<?php
if (!isset($buscar)){
echo "Debe especificar una cadena a buscar";
echo "<p>Debe especificar una cadena a buscar</p> \n";
echo "<p><a href='../index.htm'>Volver</p> \n";
echo "</html></body> \n";
exit;
}
/**************
COMIENZA LA CLASE BASEDEDATOS Y CONSULTA
**************/
include('./db.inc.php')
/************************************************** ***
TERMINA LA CLASE BASEDEDATOS Y CONSULTA
************************************************** ***/
new BaseDeDatos('envertical');
$sql = "SELECT * FROM Socueva WHERE nombre LIKE '%$buscar%' ORDER BY id";
$consulta = new Consulta($sql);
if ($consulta->filas_afectadas() > 0) {
echo "<table border = '1'> \n";
//Mostramos los nombres de las tablas
echo "<tr> \n";
echo "<td>id</td>\n";
echo "<td>nombre</td>\n";
echo "</tr> \n";
while ($fila = $consulta->obtener_filas()) {
echo "<tr> \n";
echo "<td>".$fila["id"]."</td> \n";
echo "<td>".$fila["nombre"]."</td> \n";
echo "</tr> \n";
}
echo "<p><a href='../index.htm'>Volver</p> \n";
echo "</table> \n";
}
else {
echo "<p>¡No se ha encontrado ningún registro!</p>\n";
echo "<p><a href='../index.htm'>Volver</p> \n";
}
?>
</body>
</html>
-->