Vídeo: Aplicación tablón de anuncios en PHP, parte 1

  • Por
  • PHP
Desarrollo de una aplicación web de ejemplo en PHP de tablón de anuncios, para que sirva de práctica al curso de PHP en vídeo.
A lo largo del curso de PHP en vídeo de DesarrolloWeb.com hemos visto cómo trabajar con PHP en multitud de apartados. Nosotros intentamos explicar las cosas de la manera más amplia posible, para abarcar la mayoría necesidades que el desarrollador se pueda encontrar. Sin embargo, hasta que el estudiante no se pone a desarrollar su primera aplicación web, no aparecen todos los casos de uso que debemos tener en cuenta a la hora de trabajar con este lenguaje de programación.

Por ello vamos a crear una aplicación web de muestra, paso por paso y en vídeo, para que el lector pueda ver de primera mano cuáles son las técnicas que puede utilizar para el desarrollo de un proyecto completo.

En el presente vídeo vamos a ponernos manos a la obra en la creación de una aplicación web de tablón de anuncios, donde los visitantes pueden enviar anuncios y visualizar los enviados por otras personas. Lógicamente, ocuparemos varios vídeos en realizar este desarrollo y procuraremos ir haciendo ejemplos de uso de los diversos temas recogidos en el Videotutorial de PHP.

Plantilla para la página de tablón de anuncios

Antes de comenzar, sería bueno señalar que vamos a utilizar una plantilla que ya habíamos realizado en un vídeo anterior. En el videotutorial de includes en PHP explicamos cómo podríamos utilizar un sistema de plantilla, para que todas las páginas de nuestra aplicación web tuvieran el mismo diseño.

Así que un primer paso en este videotutorial será copiar la plantilla realizada anteriormente en una nueva carpeta, donde colocaremos todos los archivos de nuestra aplicación de tablón de anuncios.

Trabajo con bases de datos en PHP

En esta primera práctica para la creación de la aplicación web de tablón de anuncios vamos a realizar tan solo dos páginas, una es la portada de la aplicación y otra es para enviar anuncios. Lógicamente, los anuncios enviados se meterán en una base de datos, por lo que este primer vídeo podría ser considerado una práctica sobre las bases de datos en PHP.

Sobre este asunto ya se publicó un vídeo anterior que conviene ver antes. Se trata del Videotutorial de Introducción a las Bases de Datos en PHP. En el presente vídeo trabajaremos únicamente con las operaciones de selección de datos y de inserción de información en una tabla, pero iremos un paso más allá, porque mostraremos cómo realizar dos tablas relacionadas y como unirlas con un JOIN para extraer datos de las dos a la vez.

Tendremos por ahora dos tablas, una para los anuncios y otra para los países a los que asociar un anuncio. En la página de enviar anuncio realizaremos un formulario para que el visitante pueda enviar cualquier anuncio y asociarlo a un país. Por su parte, en la portada de la aplicación de tablón de anuncios, mostraremos los últimos 5 anuncios recibidos en la aplicación y explicaremos cómo se pueden extraer datos de la tabla de anuncios y de la tabla de país al mismo tiempo, con el mencionado JOIN.

Ver el vídeo de la creación de la aplicación PHP

De momento, la aplicación web no ha hecho más que empezar, pero al menos las funcionalidades que hemos creado incluyen lo suficiente para que nuestra aplicación se pueda poner en marcha y ver ya algunos resultados. Además, el hecho de haber creado una plantilla, hará que nuestras páginas, a pesar de ser de lo más básico, tengan un aspecto bastante cuidado y profesional.

Sin más, os dejamos con este vídeo y os recordamos que lo importante es que practiquéis por vuestra cuenta, para hacer esta aplicación o cualquier otra que deseéis desarrollar.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir

Comentarios

arlendx

28/3/2011
Muy Util
Muchas gracias por el video Miguel. Me ha resultado bastante útil como todos los demás videos.

Saludos desde El Salvador

pedro

30/7/2011
erro al dar enviar en el tablon de anuncios parte 1 php
al darle al boton enviar para lo del envio del anuncio me sale este mensaje de error "You don't have permission to access /PhpProject2/tablon_anuncios1/< on this server". sera que me pueden decir el error que debo tener. el codigo de enviaranuncio lo tengo asi:


<?php
include_once("librerias/funcionescomunes.php");

$titulopagina="enviar un anuncio al tablon ";
include("plantillas/encabezado.php");
$conexion=mysql_connect("localhost","root","") or die("mala conexion");
if($_POST)
echo"he recibido datos";
else {
?>
<p>
desde aqui puedes enviar anuncios
</p>



<form action="<? echo $_SERVER[PHP_SELF]?>" method="post">
titulo del anuncio: <br>
<input type="text" name="titulo" size="30" maxleght=40>
<br>
contenido del anuncio: <br>
<textarea name="contenido_anuncio" cols=40 rows=10> </textarea>
<br>
pais al que va dirigido:
<select name="pais">
<?php

$consulta=mysql_query("select * from tablon.pais",$conexion) or die("error");

while($fila=mysql_fetch_array($consulta))
{
echo "<option value=".$fila["co_pais"].">".$fila["nombre_pais"]."</option>";
}
mysql_freeresult($consulta);
?></select>

<input type="submit" name="enviar" value="enviar">
</form>



<?php
mysql_close($conexion);}
include("plantillas/pie.php");
?>

nelobacora

17/8/2011
Problema con la base de datos ´tablon
Pues eso, que he hecho el tutorial completo y no termina de estar bien y no salen los anuncios mas que si lo pongo desde el phpmyadmin pues tiene un problema de identificación con id_pais, la clave foranea. Y el problema ya viene desde el capítulo 1 que no asocia anuncio.id_pais con pais.id_pais y al final da error field list
A ver Miguel Angel si te enrollas y puedes pasar la sintaxis sql de ese tablón a ver si asi lo arreglo, mientras miraré por otros lados pero no lo pillo.
De todos modos, felicitaciones pos es un gran tutorial.

midesweb

28/9/2011
el error you dont have permisions...
Ese error suele deberse a entrar a un directorio sin especificar el nombre del archivo y no tener el documento por defecto en ese directorio. Fíjate en el código HTML generado del formulario. Imagino que en el action tienes un valor que no es válido. Quizás porque abras PHP con el código corto <? en lugar de <?php

Pedro

30/9/2011
ERROR
Me sigue dando el error, he probado con la etiqueta larga de PHP "<?PHP" Y NADA

nelobacora

01/10/2011
sobre error anterior mio
Al final lo solucioné cambiado la sintaxis
$ssql="select * from anuncio,pais order by id_anuncio desc";
por la de
$ssql ="SELECT * FROM anuncio,pais WHERE anuncio.id_pais = pais.id_pais ORDER BY id_anuncio DESC LIMIT 6";

Perdón por si este comentario está de más, seguro que a alguno le pasó.
saludos

copytoj

16/10/2011
Enhorabuena por la lobor que realizas
Hola buenas noches te escribo para felicitarte por esta gran labor que realizais con esta serie de cursos y videotutoriales y en concreto esta de php, la cual me funciona correctamente incluso con las variantes que yo le hago.Gracias por realizar este trabajo y or hacerlo tan bien,un saludo y un abrazo.

Oskhar

21/10/2011
Muy bien explicado
Hola a toda la comunidad de Desarrolloweb.com, lo he probado y me funciona perfectamente, gracias por la gran labor que realizan y por el tiempo que le dedican; estaré probando los otros vídeos. Una vez más Gracias.

Nathanmagic

02/11/2011
tengo un problemilla al enviar un anuncio a mi tablon
bueno antes de nada felicitarte por todo tu trabajo, y bueno vamos al problema resulta que cuando trato de enviar un anuncio para que mi base de datos lo reciba y me lo muestre en la portada pues me da este error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''busco una cria de lori)' at line 1

y luego en la portada me da este error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:AppServwww ablon-anunciosindex.php on line 19

espero resolver mi problema

Kris_veli

15/2/2012
No tengo permiso de acceso
Me esta pasando lo mismo que a tí, no tengo permisos.
He buscado y rebuscado una solución y nada de nada.
Si la encontraste, me puedes echar un cable.
Gracias

jefferson

23/2/2012
Consulta
Buenas amigos, consulta por algún lugar tienen en descarga le cada capitulo.

Saludos

Gabriel

12/3/2012
Nivel
¿Alguien sabe dentro de que nivel está clasifcado este tipo de aplicaciones?

Por ejemplo:

*muy básico.
*básico
*básico intermedio
*intermedio
*etc

Gonzarod

03/4/2012
Usted no tiene permiso de acceder al objeto solicitado. Existe la posibilidad de que este protegido contra lectura o que no haya podido ser leido por
Muy buenas a todos, soy nuevo en esto y este es mi primer mensaje, espero les sea de ayuda.
Con respescto al mensaje de no tener permiso de acceso al objeto solicitado, después de mucho buscar, encontré la solución quitando la variable PHP_SELF del action dl formulario, y en su lugar coloqué el mismo nombre de la página, al estilo de un formulario reentrante de los videotutoriales de php.
En realidad sé que con el cambio de momento me funciona, pero no sé a qué es debido que a unas personas les funcione y a otras no. ¿Puede ser algún tema de configuración del php.ini?
Soy novato y autodidacta en lo que a webs respecta, con lo que voy dando palos de ciego por el universo del php, pero espero haber ayudado a alguien a solucionar el tema del dichoso mensaje que me sacó de quicio durante largo rato. Y si alguien me puede explicar el por qué tener que cambiar la variable, se lo agradecería, un saludo.
Por cierto, la página es una pasada, estoy aprendiendo muchísimo gracias a vosotros, si alguna vez logro sacar mi página adelante mi agradecimiento a desarrolloweb.com irá en ella, prometido.

frankkoq

22/5/2012
Graciasss
Gracias me salio perfecta desde el primer tutorial de php

leninrosendo

02/9/2013
Vídeo: Aplicación tablón de anuncios en PHP, parte 1
Salud compañero.

Tengo un problema que por mas vueltas que le de no consigo arreglarlo es el siguiente: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:wampwwwdesarrollo_webweb_personalpaginasportada.php on line 34

Este es el cuerpo donde me dice el problema:
<article>
<h1>Tablon de anuncios</h1>
<?php
// recibo los cinco ultimos anuncion que se han publicado
$ssql = "select * from anuncio, pais where anuncio.id_pais = pais.id_pais order by id_anuncio desc limit 5";
include ("../php/conexion.php");

$rs = mysql_query($ssql);
esta es la linea 34 while ($fila = mysql_fetch_array($rs)){
//para cada anuncio
echo "<div class='anuncio'>";
echo "<b>" . $fila["titulo_anuncio"] . "</b>";
echo "<br />";
echo $fila["cuerpo_anuncio"];
echo "<br />";
echo "Pais:" . $fila["nombre_pais"];
echo "</div>";
}
?>
</article>
<footer>
<?php
mysql_close($conexion);
include ("../php/footer.php");
?>


Espero tu o vuestra ayuda gracias por todo y vuestro magnifico curso.

Salud y lucha.

Manuel

29/1/2017
Yo recientemente he creado un portal de anuncios
La verdad es que siguiendo el tutorial, me ha dado muchas ideas de como crearlo, partiendo de la base de milanuncios, y con un poco de aquí y de allá... he podido crearlo.
Os recomiendo el tutorial para aquellos que queréis empezar a hacer un portal de anuncios, pero eso si, tenéis que tener un poco de conocimientos de php.
Os dejo el enlace, por si queréis ver el portal: http://expoanuncios.net
Tengo que mejorar el posicionamiento, eso si.
Un saludo!