AYUDA CON PHP Y HTML, BUSCAR EN BBDD CON MYSQL!!!

Hola buenas tardes.
Mi nombre es Victor Martinez, estoy creando una paginaweb que trata sobre adopciones de perros, gatos y otros animales.

En primer lugar queria dar las gracias al equipo de CCTW por los "Tutoriales" Paso a Paso que teneis en la web, me han ayudado un monton.

El Problema que tengo, es que necesito añadir miles de entradas a una Tabla (con todos los perros que estan en adopcion en España), que contendra 6 o 7 campos.

Desde una Pagina A, quiero enviar datos a otra b, esta ultima (B) busca en una base de datos, y me escribe los datos que encuentra. El problema que tengo es:

He creado la Web con un pograma llamado WebSite X5, que ayuda mucho en la creacion y edicion. La Pagina B esta en formato HTML, pero sobre ella se insertan los datos de la Pagina B (los datos claro esta, viene en PHP). Me gustaria añadir una tabla como la de esta web
http://www.adoptacicam.org/; pero no se como la tengo que poner con PHP!! ¿Me dais alguna sugerencia de como debo hacerlo?. Ayudarme con el codigo y todo eso. Seguro que alguno de vosotros sabe mucho sobre esto, y me resuelve todo facilmente. Solo necesito psar unos datos de un formulario a otro, que este busque en una base de datos y me inserte los datos en la pagina, sin que e descuadre nada. Por si necesitais ayuda, aqui os dejo el enlace con lo que he realizado:http://victor5atodogas.webcindario.com/busqueda.html Lo unico que en lugar de escribir la Tabla, he escrito "Holaaaaaaa" como ejemplo Muchas gracias
Eso es facil , solo que tienes que entender php y mysql muy bien, pero creo que este tema deberia de ir en el foro de php y mysql.
Bueno comienzo , como primer lugar tienes que crear una tabla que se llamara pyg o perrosygatos o animales el nombre no importa tanto , pero yo lo tomare como mascotas , entonces vas a tu base de datos y creas una tabla de nombre mascotas con 9 campos

El primer campo le pones de nombre mascota_id INT 30 not null auto_increment primary key
El segundo campo le pones de nombre 'nombre'
El tercer campo le pones de nombre 'tipo' INT 10 not null
El cuarto campo le pones de nombre 'raza' INT 10 not null
El quinto campo le pones de nombre 'tamano' sin la ñ INT 10 not null
El sexto campo le pones de nombre 'estado' INT 10 not nul
El septimo campo le pones de nombre 'sexo' INT 10 not null
El octavo campo le pones de nombre 'procedencia' INT not null
El noveno campo le pones de nombre 'edad' varchar 100 not null
Y le das en aceptar.
Con eso ya tenemos la tabla de la base de datos creada.
Dime cuando lo tengas hecho para seguir ayudandote.
Suerte :wink:
Es facil programar "Solo interesate en aprender"
Perdon x poner el tema en el Apartado General y no en el de PHP.

Yo ya he usado alguna vez PHP, y MySQL.
Ya habia creado la Tabla que tu medices en varios lugares: Webcindario, alojamientogratuito.info, etc.

Tengo 1php llamado creartabla.php y otro select.php. Otras veces que he trabajado en PHP, he hecho lo mismo, para saber que datos ya estaban metidos. Pero ahora, me dice un error de que no se puede conectar con la Base de Datos u otros errores.

A Continuacion te paso el contenido de los 2 php para ver que he hecho mal.
Tambien quiero preguntarte porque a algunos campos como tamaño, etc les das valor INT (numerico).

Espero Tu respuesta para poder avanzar.

Este es el contendio de creaciontabla.php




<?php
{
$con = mysql_connect("mysql.webcindario.com","Aqui va mi nombre de Usuario","Y aqui va la contraseña");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("Aqui va mi nombre de Usuario", $con);
$sql = "CREATE TABLE Animales

(

IdAnimal int NOT NULL AUTO_INCREMENT,

Nombre varchar(50),

Tipo varchar(50),

Raza varchar(50),

Tamano varchar(50),

Estado varchar(50),

Sexo varchar(50);

Procedencia varchar(50);

Edad datetime,

Foto varchar(50),

Adoptado varchar(50),

Fallecido varchar(50),

Primary Key (IdEmpleado)

)";

mysql_close($con);

echo "La Tabla Animales se ha creado satisfactoriamente";

}
?>




Y este es el contenido de Select.php


<?php
{

$con = mysql_connect("mysql.webcindario.com","Aqui va mi nombre de Usuario","Aqui va mi nombre de Usuario");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("Aqui va mi nombre de Usuario", $con);
mysql_select_db("", $con);

$sql = mysql_query("select * from Animales");



$num_rows = mysql_num_rows($sql);
echo "<table border = '1'> \n";

echo "<tr> \n";

echo "<td>IdAnimal</td> \n";

echo "<td>Nombre</td> \n";

echo "<td>Tipo</td> \n";

echo "<td>Raza</td> \n";

echo "<td>Tamaño</td> \n";

echo "<td>Estado</td> \n";

echo "<td>Sexo</td> \n";

echo "<td>Procedencia</td> \n";

echo "<td>Edad</td> \n";

echo "<td>Foto</td> \n";

echo "</tr> \n";

while ($row = mysql_fetch_row($sql)){

echo "<tr> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "<td>$row</td> \n";

echo "</tr> \n";
echo "</table> \n";
}
}
?>



Ahora, ¿Cual es el siguiente paso?

PD: Muchas gracias por ayudarme
Hola, ve al phpMyadmin que te proporciona tu hosting y desde ahi crea la tabla como la eh puesto , los campos INT son para el archivo de busqueda , dentro del int se va a poner 0 si es perro y 1 si es mascota y asi como vayan continuando los campos, creala y me dices cuando este lista , lamentablemente la tabla que tu intentas crear no va a servir para el archivo de busqueda
Es facil programar "Solo interesate en aprender"
De acuerdo, entonces voy a alojaminetogratuito.info y desde ahi la creo tal y como tu me dices. Ahora entiendo que tengan que ser los campos INT.

Entonces Cesar, ahora ¿cual es el siguiente paso?

Muchas gracias
Bien, ahora creare un archivo para agregar mascotas a la tabla , uno sera agregar.html y el otro agregar.php , mientras crea los archivos y ahorita te paso el code lo tratare de hacer lo mas rapido que pueda para que quede muy bien tu propio buscador profesional

esperame
Es facil programar "Solo interesate en aprender"
Bien por si no haz creado la tabla aqui el codigo sql , recuerda que este codigo va a ser el que voy a ocupar si lo cambias puede que no funcione igual o simplemente no funcione, dirige te a tu bd de phpMyadmin y por las opciones de arriba le das en sql se va abrir un campo de texto , ahi copias y pegas esto y le das agregar

CREATE TABLE `mascotas` (
`mascota_id` INT( 30 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nombre` VARCHAR( 300 ) NOT NULL ,
`tipo` INT( 10 ) NOT NULL ,
`raza` INT( 10 ) NOT NULL ,
`tamano` INT( 10 ) NOT NULL ,
`estado` INT( 10 ) NOT NULL ,
`sexo` INT( 10 ) NOT NULL ,
`procedencia` INT( 10 ) NOT NULL ,
`edad` INT( 10 ) NOT NULL

espera por el agregar.html y el agregar.php casi lo tengo listo
Es facil programar "Solo interesate en aprender"
Bien esto es lo que vamos a necesitar por ahora:

Tabla en la base de datos, ve a phpMyadmin en sql y agregas esto :

CREATE TABLE `mascotas` (
`mascota_id` INT( 30 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nombre` VARCHAR( 300 ) NOT NULL ,
`tipo` INT( 10 ) NOT NULL ,
`raza` INT( 10 ) NOT NULL ,
`tamano` INT( 10 ) NOT NULL ,
`estado` INT( 10 ) NOT NULL ,
`sexo` INT( 10 ) NOT NULL ,
`procedencia` INT( 10 ) NOT NULL ,
`edad` INT( 10 ) NOT NULL )

El archivo para conectar a la base de datos de nombre conectar.php
que contiene esto:
 
 function conectar()
  {
    $conectar=mysql_connect("TU SERVIDOR","TU USUARIO","TU CONTRASEÑA");
	 
	 $conectar_a_db =mysql_select_db("TU BASE DE DATOS");
	
 }
El archivo para agregar mascotas de nombre agregar.html en el que debe contener lo siguiente:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<center><h1>Agregar macota:</h1>
<form action="agregar.php" method="post">
 <table border="0px" >
 <tr>
 <td>Nombre de la mascota:</td>
 <td><input type="text" name="nombre" /></td>
 </tr>
 <tr>
 <td>Tipo:</td>
 <td>
<select name="TipodeAnimal" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Perro</option>
        <option value="1">Gato</option>

</select>
</td>
</tr>
<tr>
<td>Raza:</td>
<td>
<select  name="Raza" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0" >Cocker Spaniel Ingles</option>
        <option value="1" >Golden Retriever</option>
        <option value="2"  >Beagle</option>
        <option value="3"  >Yorkshire</option>
        <option value="4"  >Mestizo</option>
</select>
</td>
</tr>
<tr>
<td>Tamaño:</td>
<td>
<select name="Tamano" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Pequeño</option>
        <option value="1">Mediano</option>
        <option value="2">Grande</option>
        <option value="3">Muy Grande</option>
</select>
</td>
</tr>
<tr>
<td>Estado:</td>
<td>
<select name="Estado" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">No Urgente</option>
        <option value="1">Urgente</option>
</select>
</td>
</tr>
<tr>
 <td>Sexo:</td>
 <td>
<select name="Sexo" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Macho</option>
        <option value="1">Hembra</option>

</select>
</td>
</tr>
<tr>
<td>Procedencia:</td>
<td>
<select name="Procedencia" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Perrera</option>
        <option value="1">Particular</option>
        <option value="2">Protectora</option>

</select>
</td>
</tr>
<tr>
  <td>Edad:</td>
  <td>
<select name="Edad">
        <option value="seleccionar">Seleccionar</option>
        
        <option value="0">2 meses</option>

        <option value="1">3 - 6meses</option>
        <option value="2">7 - 12 meses</option>
        <option value="3">1 - 3 años</option>
        <option value="4">4 - 6 años</option>
        <option value="5">7 - 12 años</option>
        <option value="6">+12 años</option>

</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Agregar" /></td>
</tr>
</table>
</form>
</body>
</html>

Y por ultimo el archivo que agregara la mascota ala db de nombre agregar.php que contiene lo siguiente:

<?php
  //Incluimos el archivo de conexion a mysql
  include ("conectar.php");
  //Declaramos las variables donde se almacenaron los datos de la nueva mascota enviados por el usuario
  $nombre = $_POST['nombre'];
  $tipo =   $_POST['TipodeAnimal'];
  $raza =   $_POST['Raza'];
  $tamano = $_POST['Tamano'];
  $estado = $_POST['Estado'];
  $sexo =   $_POST['Sexo'];
  $proc =   $_POST['Procedencia'];
  $edad =   $_POST['Edad'];
  //variable para no escribir muchas veces seleccionar
  $s = 'seleccionar';
  //Comprobemos que el usuario que agrega una nueva mascota introduzca correctamente los datos requeridos
   
   if(!$nombre || $nombre == '' && $tipo == $s && $raza == $s && $tamano == $s && 
   $estado == $s && $sexo == $s && $proc == $s && $edad == $s )
   {
   echo '

<center>Ups, Hubo un error al ingresar una nueva mascota , porque debes llenar todos los campos pedidos
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
   }
   else if (!$nombre || $nombre == '')
   {
   echo '

<center>No podemos agregar la mascota ya que no agregaste su nombre
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($tipo == $s)
	{
	   echo '

<center>No podemos agregar la mascota ya que no seleccionaste el tipo de animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
    }
    else if ($raza == $s)
	{
	 echo '

<center>No podemos agregar la mascota ya que no seleccionaste la raza del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($tamano == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste el tama&ntilde;o del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($estado == $s)
	{
	echo '

<center>No podemos agregar la mascota ya que no seleccionaste el estado urgente o no urgente del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($sexo == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste el sexo del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
   else if ($proc == $s)
   {
   echo '

<center>No podemos agregar la mascota ya que no seleccionaste la procedencia del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($edad == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste la edad del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
		 else {
		 conectar();
		 
	$agregar = mysql_query ("INSERT INTO mascotas(nombre,tipo,raza,tamano,estado,sexo,procedencia,edad) VALUES (
	'".$nombre."','".$tipo."','".$raza."','".$tamano."','".$estado."','".$sexo."','".$proc."','".$edad."')") 
	  or die ("No se inserto correctamente la mascota");
	  
	  echo '

<center>Tu mascota se a agregado correctamente ve al 
	  [url="buscar.html"]buscador [/url] Para buscar tu mascota agregada</center> </p>';
	  }
		 ?>

Y despues hago el buscador que ya es algo "mas facil" , mientras prueba los codes que eh hecho para ti y dime si funciona , agrega una mascota luego vas a tu base de datos y compruebas que se haya agregado
Es facil programar "Solo interesate en aprender"
De acuerdo muchas gracias, tambien he creado la tabla en webcindario (miarroba).com tal y como me has dixo.

Muchas gracas.
prueba el code de mas abajo el completo
Es facil programar "Solo interesate en aprender"
Si k funciona, los inserta sin problema

Muchas gracias, ahora a esperar al siguiente codigo toca!!xD

Gracias tio, de verdad
Hola, siento tardarme en contestar pero eh tenido que hacer algunas otras cosas mas , cuando tenga el buscador te lo paso de inmediato
Es facil programar "Solo interesate en aprender"
Listo , ya tengo casi listo el buscador solo falta que hagas un diseño con varios ejemplos de resultado de busqueda, en concreto de como quieres que aparezcan los resultados , con diseño y con los datos que hemos puesto antes , para poder paginar los resultados , te espero
Es facil programar "Solo interesate en aprender"
Hola ya eh terminado el buscador, y esto es lo que vamos a necesitar :

cesar_ed escribió:Bien esto es lo que vamos a necesitar por ahora:

Tabla en la base de datos, ve a phpMyadmin en sql y agregas esto :

CREATE TABLE `mascotas` (
`mascota_id` INT( 30 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nombre` VARCHAR( 300 ) NOT NULL ,
`tipo` INT( 10 ) NOT NULL ,
`raza` INT( 10 ) NOT NULL ,
`tamano` INT( 10 ) NOT NULL ,
`estado` INT( 10 ) NOT NULL ,
`sexo` INT( 10 ) NOT NULL ,
`procedencia` INT( 10 ) NOT NULL ,
`edad` INT( 10 ) NOT NULL )

El archivo para conectar a la base de datos de nombre conectar.php
que contiene esto:
 
 function conectar()
  {
    $conectar=mysql_connect("TU SERVIDOR","TU USUARIO","TU CONTRASEÑA");
	 
	 $conectar_a_db =mysql_select_db("TU BASE DE DATOS");
	
 }
El archivo para agregar mascotas de nombre agregar.html en el que debe contener lo siguiente:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<center><h1>Agregar macota:</h1>
<form action="agregar.php" method="post">
 <table border="0px" >
 <tr>
 <td>Nombre de la mascota:</td>
 <td><input type="text" name="nombre" /></td>
 </tr>
 <tr>
 <td>Tipo:</td>
 <td>
<select name="TipodeAnimal" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Perro</option>
        <option value="1">Gato</option>

</select>
</td>
</tr>
<tr>
<td>Raza:</td>
<td>
<select  name="Raza" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0" >Cocker Spaniel Ingles</option>
        <option value="1" >Golden Retriever</option>
        <option value="2"  >Beagle</option>
        <option value="3"  >Yorkshire</option>
        <option value="4"  >Mestizo</option>
</select>
</td>
</tr>
<tr>
<td>Tamaño:</td>
<td>
<select name="Tamano" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Pequeño</option>
        <option value="1">Mediano</option>
        <option value="2">Grande</option>
        <option value="3">Muy Grande</option>
</select>
</td>
</tr>
<tr>
<td>Estado:</td>
<td>
<select name="Estado" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">No Urgente</option>
        <option value="1">Urgente</option>
</select>
</td>
</tr>
<tr>
 <td>Sexo:</td>
 <td>
<select name="Sexo" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Macho</option>
        <option value="1">Hembra</option>

</select>
</td>
</tr>
<tr>
<td>Procedencia:</td>
<td>
<select name="Procedencia" >
        <option value="seleccionar">Seleccionar</option>
        <option value="0">Perrera</option>
        <option value="1">Particular</option>
        <option value="2">Protectora</option>

</select>
</td>
</tr>
<tr>
  <td>Edad:</td>
  <td>
<select name="Edad">
        <option value="seleccionar">Seleccionar</option>
        
        <option value="0">2 meses</option>

        <option value="1">3 - 6meses</option>
        <option value="2">7 - 12 meses</option>
        <option value="3">1 - 3 años</option>
        <option value="4">4 - 6 años</option>
        <option value="5">7 - 12 años</option>
        <option value="6">+12 años</option>

</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Agregar" /></td>
</tr>
</table>
</form>
</body>
</html>

Y por ultimo el archivo que agregara la mascota ala db de nombre agregar.php que contiene lo siguiente:

<?php
  //Incluimos el archivo de conexion a mysql
  include ("conectar.php");
  //Declaramos las variables donde se almacenaron los datos de la nueva mascota enviados por el usuario
  $nombre = $_POST['nombre'];
  $tipo =   $_POST['TipodeAnimal'];
  $raza =   $_POST['Raza'];
  $tamano = $_POST['Tamano'];
  $estado = $_POST['Estado'];
  $sexo =   $_POST['Sexo'];
  $proc =   $_POST['Procedencia'];
  $edad =   $_POST['Edad'];
  //variable para no escribir muchas veces seleccionar
  $s = 'seleccionar';
  //Comprobemos que el usuario que agrega una nueva mascota introduzca correctamente los datos requeridos
   
   if(!$nombre || $nombre == '' && $tipo == $s && $raza == $s && $tamano == $s && 
   $estado == $s && $sexo == $s && $proc == $s && $edad == $s )
   {
   echo '

<center>Ups, Hubo un error al ingresar una nueva mascota , porque debes llenar todos los campos pedidos
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
   }
   else if (!$nombre || $nombre == '')
   {
   echo '

<center>No podemos agregar la mascota ya que no agregaste su nombre
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($tipo == $s)
	{
	   echo '

<center>No podemos agregar la mascota ya que no seleccionaste el tipo de animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
    }
    else if ($raza == $s)
	{
	 echo '

<center>No podemos agregar la mascota ya que no seleccionaste la raza del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($tamano == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste el tama&ntilde;o del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($estado == $s)
	{
	echo '

<center>No podemos agregar la mascota ya que no seleccionaste el estado urgente o no urgente del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($sexo == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste el sexo del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
   else if ($proc == $s)
   {
   echo '

<center>No podemos agregar la mascota ya que no seleccionaste la procedencia del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
	else if ($edad == $s)
	{
	  echo '

<center>No podemos agregar la mascota ya que no seleccionaste la edad del animal
         [url="agregar.html"]Regresa[/url] Para corregir los errores</center></p>';
		 }
		 else {
		 conectar();
		 
	$agregar = mysql_query ("INSERT INTO mascotas(nombre,tipo,raza,tamano,estado,sexo,procedencia,edad) VALUES (
	'".$nombre."','".$tipo."','".$raza."','".$tamano."','".$estado."','".$sexo."','".$proc."','".$edad."')") 
	  or die ("No se inserto correctamente la mascota");
	  
	  echo '

<center>Tu mascota se a agregado correctamente ve al 
	  [url="buscar.html"]buscador [/url] Para buscar tu mascota agregada</center> </p>';
	  }
		 ?>

Y despues hago el buscador que ya es algo "mas facil" , mientras prueba los codes que eh hecho para ti y dime si funciona , agrega una mascota luego vas a tu base de datos y compruebas que se haya agregado


Luego creamos un archivo de nombre buscar.html y dentro ingresamos esto:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<title>Buscador &bull; cesar_ed CCTW</title>
<style type="text/css">
<!--

 .input { color:#CCCCCC;}
 
 -->
 </style>
<script type="text/javascript">
 function buscar (nombre)
 {
   switch(nombre.value)
   {
     case 'Nombre' :
	 nombre.value = '';
	 break;
	 case '' :
	 nombre.value = 'Nombre';
	 break;
	 default:
	 nombre.value = 'Nombre';
	 break;
	 }
	 
	   switch (nombre.className)
	   {
	     case 'input' :
		 nombre.className = '';
		 break;
		 case '':
		 nombre.className = 'input';
		 break;
		 default :
		 nombre.className = 'input';
		 break;
		 }
		}
	</script>
</head>

<body>
<center><h1>Buscar mascota:</h1>


Recuerda que puedes dejar espacios en blanco</p>
<form action="buscar.php"  method="get">
 <table border="0px" >
 <tr>
 <td>Nombre de la mascota: </td>
 <td><input type="text" onclick="buscar(this)" name="nombre"   class="input" value="Nombre"/></td>
 </tr>
 <tr>
 <td>Tipo:</td>
 <td>
<select name="TipodeAnimal" ><option value="null">Seleccionar</option>
        <option value="0">Perro</option>
        <option value="1">Gato</option>

</select>
</td>
</tr>
<tr>
<td>Raza:</td>
<td>
<select  name="Raza" ><option value="null">Seleccionar</option>
        <option value="0" >Cocker Spaniel Ingles</option>
        <option value="1" >Golden Retriever</option>
        <option value="2"  >Beagle</option>
        <option value="3"  >Yorkshire</option>
        <option value="4"  >Mestizo</option>
</select>
</td>
</tr>
<tr>
<td>Tamaño:</td>
<td>
<select name="Tamano" ><option value="null">Seleccionar</option>
        <option value="0">Pequeño</option>
        <option value="1">Mediano</option>
        <option value="2">Grande</option>
        <option value="3">Muy Grande</option>
</select>
</td>
</tr>
<tr>
<td>Estado:</td>
<td>
<select name="Estado" ><option value="null">Seleccionar</option>
        <option value="0">No Urgente</option>
        <option value="1">Urgente</option>
</select>
</td>
</tr>
<tr>
 <td>Sexo:</td>
 <td>
<select name="Sexo" ><option value="null">Seleccionar</option>
        <option value="0">Macho</option>
        <option value="1">Hembra</option>

</select>
</td>
</tr>
<tr>
<td>Procedencia:</td>
<td>
<select name="Procedencia" ><option value="null">Seleccionar</option>
        <option value="0">Perrera</option>
        <option value="1">Particular</option>
        <option value="2">Protectora</option>

</select>
</td>
</tr>
<tr>
  <td>Edad:</td>
  <td>
<select name="Edad"><option value="null">Seleccionar</option>
        
        <option value="0">2 meses</option>

        <option value="1">3 - 6meses</option>
        <option value="2">7 - 12 meses</option>
        <option value="3">1 - 3 años</option>
        <option value="4">4 - 6 años</option>
        <option value="5">7 - 12 años</option>
        <option value="6">+12 años</option>

</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Buscar" /></td>
</tr>
</table>
</form>




<center>


Buscador por <a href="http://www.comocreartuweb.com/phpBB2/profile.php?mode=viewprofile&u=18522" title="Perfil de cesar_ed">
cesar_ed</a> [url="http://www.comocreartuweb.com"]CCTW[/url]</p>
</center>
</body>
</html>

Y por ultimo creamos un archivo de nombre buscar.php y dentro ponemos esto:

<?php
  //Incluimos el archivo de conexion a mysql
  include ("conectar.php");
  //Declaramos las variables donde se almacenaron los datos de la nueva mascota enviados por el usuario
  $nombre = $_GET['nombre'];
  $tipo =   $_GET['TipodeAnimal'];
  $raza =   $_GET['Raza'];
  $tamano = $_GET['Tamano'];
  $estado = $_GET['Estado'];
  $sexo =   $_GET['Sexo'];
  $proc =   $_GET['Procedencia'];
  $edad =   $_GET['Edad'];
  
    //conectamos a la bd
	conectar();
    //buscamos la mascota que quiere encontrar el usuario
	         if(!$nombre || $nombre == '' && $tipo == '' && $raza == '' && $tamano == '' && 
   $estado == '' && $sexo == '' && $proc == '' && $edad == '' )
   {
     echo '

<center>No se encontraron resultados,
	         [url="buscar.html"]Regresa[/url]</center></p>';
			 }
			  else {
			  
			  //Comprobemos que el nombre del animal sea de una o mas palabras
			 
	  $busqueda = mysql_query("SELECT * FROM mascotas WHERE nombre LIKE '%$nombre%' OR tipo LIKE '%$tipo%' OR raza LIKE '%$raza%' 
	  OR tamano LIKE '%$tamano%' OR estado LIKE '%$estado%' OR sexo LIKE '%$sexo%' OR procedencia LIKE '%$proc%'
	   OR edad LIKE '%$edad%' ORDER BY mascota_id DESC   ")   or die ("

Ocurrio un error</p>");
	   
	   $numeroRegistros = mysql_num_rows($busqueda);
//HAGAMOS UNA PAGINACION, POR SI HAY MAS DE 30 ANIMALES CON LO QUE BUSCA EL USUARIO Y PONERLO EN VARIAS PAGINAS
			  
			      $tamPag=5;
    if(!isset($_GET["pagina"]))
    {
       $pagina=1;
       $inicio=1;
       $final=$tamPag;
    }else{
       $pagina = $_GET["pagina"];
    }
  
    $limitInf=($pagina-1)*$tamPag;

   
    $numPags=ceil($numeroRegistros/$tamPag);
    if(!isset($pagina))
    {
       $pagina=1;
       $inicio=1;
       $final=$tamPag;
    }else{
       $seccionActual=intval(($pagina-1)/$tamPag);
       $inicio=($seccionActual*$tamPag)+1;

       if($pagina<$numPags)
       {
          $final=$inicio+$tamPag-1;
       }else{
          $final=$numPags;
       }

       if ($final>$numPags){
          $final=$numPags;
       }
    }
			  $buscar = mysql_query("SELECT * FROM mascotas WHERE nombre LIKE '%$nombre%' OR tipo LIKE '%$tipo%' OR raza LIKE '%$raza%' 
	  OR tamano LIKE '%$tamano%' OR estado LIKE '%$estado%' OR sexo LIKE '%$sexo%' OR procedencia LIKE '%$proc%'
	   OR edad LIKE '%$edad%' ORDER BY mascota_id DESC  LIMIT ".$limitInf.",". $tamPag ."  ")   or die ("

Ocurrio un error</p>");
	   
			 $numeroDeresultados = mysql_num_rows($buscar);
			  
			 if($numeroDeresultados <= 0)
			 {
			 echo "

No se encontraron resultados</p>";
			 }
			 else {
			 if(mysql_num_rows($buscar))
			 {
			 while ($encontrado = mysql_fetch_array($buscar))
			 {
			 echo '

'.$encontrado["nombre"].'</p>';
			 }
			 }
			}
		}
		if($pagina>1)
    {
       echo "<a class='p' href='".$_SERVER["PHP_SELF"]."?nombre=".$nombre."&TipodeAnimal=".$tipo."&Raza=".$raza."&Tamano=".$tamano."
	   &Estado=".$estado."&Sexo=".$sexo."&Procedencia=".$proc."&Edad=".$edad."&pagina=".($pagina-1)."'>";
       echo "<font face='verdana' size='-2'>anterior</font>";
       echo "</a> ";
	   
	   
    }

    for($i=$inicio;$i<=$final;$i++)
    {
       if($i==$pagina)
       {
          echo "<font face='verdana' size='-2'>[b]".$i."[/b] </font>";
       }else{
          echo "<a class='p' href='".$_SERVER["PHP_SELF"].
		  "?nombre=".$nombre."&TipodeAnimal=".$tipo."&Raza=".$raza."&Tamano=".$tamano."&Estado=".$estado."
		  &Sexo=".$sexo."&Procedencia=".$proc."&Edad=".$edad."&pagina=".$i."'>";
          echo "<font face='verdana' size='-2'>".$i."</font></a> ";
		  
       }
    }
    if($pagina<$numPags)
   {
       echo " <a class='p' href='".$_SERVER["PHP_SELF"]."?nombre=".$nombre."&TipodeAnimal=".$tipo."&Raza=".$raza."&Tamano=".$tamano."
	   &Estado=".$estado."&Sexo=".$sexo."&Procedencia=".$proc."&Edad=".$edad."&pagina=".($pagina+1)."'>";
       echo "<font face='verdana' size='-2'>siguiente</font></a>";
   }

   echo '



<center>


Buscador por <a href="http://www.comocreartuweb.com/phpBB2/profile.php?mode=viewprofile&u=18522" title="Perfil de cesar_ed">
cesar_ed</a> [url="http://www.comocreartuweb.com"]CCTW[/url]</p>
</center>';
			
			 ?>

Y listo al fin quedo , dime si te funciono, y ya de ahi es facil editar como van a aparecer los resultados , saludos y suerte :wink:
Es facil programar "Solo interesate en aprender"
Acabao de leerlo ahora voy a probarlo, k seguro k funciona!xD

De verdad muxas gracias, tremendo lo k as exo!!!
Lo acabo de probar y funciona perfectamente, impresionante como te lo has currado. Creado por cesar no lo quitare.

Una pregunta, ¿Como debo hacer para que cuando la persona ha buscado un animal, en un campo de la tabla aparezca una foto?
¿Y como debo hacer para que otro campo adicional contenga una URL de una pagina, de tal forma que cuando se muestren los datos en la tabla, aparezca una especie de boton o alguna cosa ("Ver), que abra otra pestaña con la direccion URL que habiamos guardado previamente al introducir los datos?

Yo he pensado que lo mejor es guardar la ruta de la imagen en un campo varchar, y luego colocarla, pero no estoy muy seguro. En cuanto a la de la URL me resulta mas complicado.

Por otro lado, en cuanto a como aparecen los datos, me gustaria que saliera la foto en el lado izquierdo, y en el lado derecho, que aparecieran el resto de los campos ( en 2 o 3 filas creo yo que cabran).



De antemano muchas gracias, y tomate tu tiempo, que ya veo que estas ayudando a mucha gente.
Claro que se puede ,

Vamos a necesitar :

un archivo en el que obtenga la mascota que se va a ver con detalle de nombre verMascota.php

Agregar dos campos mas a la bd

campo 1 : imagen VARCHAR 300 not null

campo 2 : descripcion TEXT not null

Y por ultimo necesitaras paciencia para q' no me tarde en contestar jeje.

un saludo y me dices cuando tengas todo lo necesario bye.
Es facil programar "Solo interesate en aprender"
Listo, he borrado la tabla y la he creado con esos 2 campos de más

Tu tranquilo, tomate todo el timpo que necesites para hacerlo.

Una cosa que se me olvido comentarte en su dia, el campo edad quiero que al meter yo una fecha (10/02/2009) me guarde esa fecha en la base de datos, pero que al mostrarme los resultados de ese animal, me ponga que tiene "1 año, 2 meses y nose cuantos dias", y por lo tanto a la hora de buscar haga lo mismo. De este modo estará actualizada la edad del animal en todo momento.

¿Es esto muy complicado de realizar? Creo que se hace con un datediff y restando la fecha actual con la fecha de la base de datos. Si no puedes hacerlo o lo ves dificil no pasa nada, pondre la fecha de nacimiento y que cada cual haga la resta para saber la edad que tiene!jjeje

Por cierto, yo a partir de esta tarde no estare hasta el Jueves, te lo digo porque no me podre meter al foro para mirarlo.

Gracias otra vez mas.
¿Dificil? jejeje....... Es mas dificil crear un buscador con paginacion.....

Bueno lo creare en cuanto pueda asi como cree el buscador, lo hare, pero me tardare ya que al igual que tu no estare presente por el foro no se cuanto tiempo , pasa que necesito actualizarme con las tareas de mi secundaria y estudiarle un poco para algunos examenes que vienen, pero en cuanto pueda lo hare vale?
Es facil programar "Solo interesate en aprender"
Saludos Cesar!

Ya he comprado el hosting de la web, por lo tanto ahora me resulta mucho más facil hacer todo lo que hemos comentado.

Además de lo que te comente que me gustaria que en la edad del animal introdujeramos su fecha de nacimiento y que cuando alguien realizara una busqueda pusiera que edad tiene en ese momento (he cambiado el campo Edad y lo puesto de tipo "date").

Lo siguiente que te voy a decir lo he exo yo y no se si estara bien:

-Como las razas de animales van a ser un monton (100 o 150), he creado una Tabla llamada "Perros" y otra llamada "Gatos", en cada una de ella he creado 2 campos: "Idperro o IdGato" respectivamente de tipo "Int" y "Nombre" que contiene el nombre completo de esa raza (de perro o gato). De tal forma que cuando busquemos un perro de raza Golden por ejemplo, buscara en la tabla "perros" el idque le corresponde (que coincidira con el value de php) y se ira a la tabla Animales para para mostrarnos todos los perros que tengan como raza el "idperro" que habia encontrado en la tabla anterior, o buscara el nombre de la raza que hemos seleccionado, y a partir de ahi buscara el idque le pertenece, y luego ya ira a la tabla animales y los buscara.

Tu veras si esta bien exo o mal. Tambien queria comentarte varias cosas. Cuando buscamos solo "perros" nos debe elegir las "razas" de la tabla "perros"; cuando buscamos solo "gatos", nos debe elegir las "razas" de la tabla "gatos", y cuando busquemos los 2 tipos de animales (perros y gatos), solo nos debe dejar elegir tipo=Todos.

Igual que yo creo que habia que hacer esas pequeñas modificaciones a la hora de buscar el animal por "raza", lo mismo pasara por tamaño; ya que los perros quiero que tengan 5 posibles tamaños (Enano, Pequeño, mediano, Grande, Muy Grande), a los gatos solo quiero que tengan 2 posibles tamaños (pequeño, grande). Creo que si eliges tipodeanimal=Todos tambien te deberia poner por defecto tamaño=Todos y no deberia dejar cambiarlos para que la busqueda sea facil.

Si no entiendes algo o lo que sea lo dices y lo intento explicar.

Puesto que creo que estan bien exos los cambios que te he dixo, me pongo a introducir animales en la tabla.

Cuando puedas ya comentaras aunque sea si lo que he propuesto esta bien (para seguir metiendo animales o parar) o no. Lo de contestar con el codigo eso ya cuando puedas. pero necesito saber si lo estoy haciendo bien.

De nuevo muchas gracias.