Sistema de Categorias, Paginas, Comentarios y Starratings?

Iniciado por z3nth10n, 30 Marzo 2013, 14:19 PM

0 Miembros y 1 Visitante están viendo este tema.

z3nth10n

Hola soy nuevo en esto del MySQL y tengo la base de como crear documentos con ids
http://foro.elhacker.net/php/ayuda_impresion_de_datos_por_id_php_mysql-t385224.0.html

Yo lo voy a personalizar y todo eso, pero, igualmente, tengo 1 trillon de dudas,

Lo primero que tengo que decir es que voy a crear una web tipo minijuegos.com y necesito algunas bases para empezar, esas bases espero encontrarlas aquí con la ayuda de los demás.

La primera duda, es como hago un sistema de categorias para clasificar mis juegos?
La segunda duda, voy a meter los juegos en una tabla, como hago para poder meterlas todas en la misma tabla, y luego, como puedo hacer un sistema de que apartir de x juegos en la misma pagina, se cree otra?
Siguiente duda, como puedo poner un sistema de comentarios en la misma pagina del juego? Y un sistema de starrating?

Un saludo.
PD: Iré buscando cosas, de hecho ya he encontrado el sistema de starrating y comentarios, lo unico que no se acoplarlo a mi código, denme unos minutos, y le pongo todo lo que hice y encontré.  ;)




Bueno, pues mis códigos son estos:

Consulta a MyPHPMyAdmin:

Código (sql) [Seleccionar]
CREATE TABLE `juegos` (
 `id` bigint(7) NOT NULL auto_increment,
 `miniatura` varchar(500) NOT NULL default '',
 `linkjuego`  varchar(500) NOT NULL default '',
 `nombre`  varchar(50) NOT NULL default '',
 `descripcion`  varchar(500) NOT NULL default '',
 KEY `id` (`id`)
)


Primera página:

Código (php) [Seleccionar]
<!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=utf-8" />
<title>Inserta tu juego aquí</title>
<script>
function contar(input) {
//Comprobamos que no pase de 3000 caracteres y si pasa, que borre los sobrantes
if (input.value.length >= 500) {
input.value = input.value.substring(0,500);
}
//alamacenamos el resto
var resto = 500 - input.value.length;

//imprimimos los caracteres restantes en el span
var final=document.getElementById('letras');
final.innerHTML=resto+" caracteres";

}
</script>
<style type="text/css">
<!--
body,td,th {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 14px;
}
body {
 
}
#letras {
position: absolute;
right: -10px;
top: -5px;
font-size: 20px;
font-weight: bold;
color: #ccc;
}
.form {
position: relative;
margin: 1em 0;
width: 490px;
}
#descripcion {
width: 490px;
height: 60px;
border: 2px solid #ccc;
padding: 3px;
color: #555;
font: 16px Arial, Helvetica, sans-serif;
}
-->
</style></head>

<body>
<form id="form1" name="form1" method="post" action="envia.php">
 <b>Nombre del juego:</b>
   <input type="text" name="nombre" id="nombre" />
<div class="form">
        <label for="message" style="font-weight:bold;display: block;">Descripci&oacute;n del juego:</label>
        <textarea rows="5" onkeyup="contar(this);" cols="100" name="descripcion" id="descripcion"></textarea><span id="letras">500 caracteres</span>
       </div>
 <b>Link del juego:</b>
   <input type="text" name="linkjuego" id="linkjuego" /><br>
 <b>Miniatura:</b>
   <input type="text" name="miniatura" id="miniatura" /><br>
<input type="submit" name="button" id="button" value="Enviar">
</form>
</body>
</html>


Este es el formulario.html, que sirve para enviar los archivos a la Base de datos, con la ayuda de envia.php:

Código (php) [Seleccionar]
<?php
$miniatura 
$_REQUEST['miniatura'] ;
$linkjuego $_REQUEST['linkjuego'] ;
$nombre $_REQUEST['nombre'] ;
$descripcion $_REQUEST['descripcion'] ;

require_once(
dirname(__FILE__) . '/Settings.php');
mysql_connect ($db_server$db_user$db_passwd) or die ('Error: ' mysql_error());
mysql_select_db ($db_name);
$query="INSERT INTO juegos (miniatura, linkjuego, nombre, descripcion) VALUES ('$miniatura', '$linkjuego', '$nombre', '$descripcion')";
mysql_query($query) or die ('Error en la carga de datos');
header("location:http://mundobajo.net/okay.php")
?>


Y el test.php que muestra los juegos:

Código (php) [Seleccionar]
<?php  
require_once(dirname(__FILE__) . '/Settings.php');
$link=mysql_connect($db_server$db_user$db_passwd); 
mysql_select_db($db_name,$link) OR DIE ("Error: Imposible Conectar");


$id = (int)$_GET['id'];

$sql "SELECT * FROM grupos WHERE id=".$id." LIMIT 1";
$query mysql_query($sql$link) or exit(mysql_error());

if( !
$query || mysql_num_rows($query) <= )
  exit(
'No se encontraron resultados');

$row mysql_fetch_assoc($query);

echo
'<!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>
<title>'
.$row['nombre'].'</title>
<style>

</style>
<script src="http://code.jquery.com/jquery-1.9.0.js"></script>
<script type="text/javascript">

</script>
</head>
<body>
Me falta terminarlo xD
</body>
</html>'
;

exit; 
// o no, si deseas incluir más información

?>


Que me falta?


  • La index.php para mostrar los juegos, para que veais un ejemplo claro, lo voy a hacer a lo minijuegos.com (hecho)
  • Lo de las paginas en la index.php (a medio hacer)
  • Las categorías (hecho)
  • Los starragins (sin hacer) y los comentarios (hecho)

Más tareas:

Dentro de Formulario.php:

  • Adaptarlo a SMF
  • Optimizar code
  • Poner contraseña de acceso y demas chorradas de seguridad
  • Sistema de tags.

    Dentro de Test.php:

  • Convertirlo en Game.php
  • Adaptarlo a SMF y hacer una especie de Index.php (Hecho)
  • Optimizar comentarios: (Hecho)
              > Solo permitir en usuarios registrados
              > Poner avatar de usuario, link a los usuarios
              > Poner fecha de posteo
              > Poner sistema de moderación y administración de comentarios (Reportes, Sistema de Thumbs up/Down, Mejores comentarios + Borrar comentrio a los 50 dislikes o decir que tiene muchos, + Antispam, y Marcar como spam, puede)
  • Terminar código de reconocimiento de juegos
  • Poner Starrating
  • Sistema de favoritos
  • Sistema de descarga del juego
  • Sistema de pantalla completa o por lo menos de ampliación
  • Poner partidas jugadas (con visitas únicas)
  • Juegos recomendados
  • Recomendar por Google+, Twitter, Facebook, etc. (Hecho)
  • Sistema de Tags para el Meta tag? (No recomendado, así que nada)

    Dentro del Index.php?action=juegos:

  • Pasarlo a Index.php (Hecho)
  • Poner buscador de juegos
  • Poner tablas de categorías
  • Otras tablas: Webs afiliadas, juegos más jugados y más votados, por semana y mensualmente, y diariamente, publicidad, etc...
  • Mejorar aspectos de los juegos

    Cambios generales:

  • Grafica de visitas diarias, mensuales, anuales, etc. A lo SocialBlade
  • Mejorar lo de las tablas del inicio y de lugares
  • Mejorar estadísticas
  • Mudar la web y tablas MySQL


    Ayudenmeee!

    Links donde he encontrado información util:

    http://megarush.net/5-star-rating-system-with-php-mysql-jquery-and-ajax/

    http://www.taringa.net/posts/hazlo-tu-mismo/10701668/Sistema-de-comentarios-con-mysql.html

    Sobre las categorias, no tengo ni idea, porque no se ni hacerlo.

    Ahora, quien me ayuda? :P

    Mi web, donde podéis ver todo el desarrollo:

    http://ikillcraft.a0001.net/formulario.html
    http://ikillcraft.a0001.net/test.php?id=1

    Un saludo.

Interesados hablad por Discord.

Carloswaldo

Creo que te conviene entender primero el modelo entidad-relación

http://es.wikipedia.org/wiki/Modelo_entidad-relaci%C3%B3n
http://www.cs.us.es/cursos/bd-2004/HTML/modeloER.htm

Por ejemplo, para tu caso, tendrías que crear una nueva tabla llamada "categorías" en la base de datos, incluir un campo "id_categoria" en la tabla de juegos y crear una relación entre estas dos tablas (esto asumiendo que un juego solo puede estar asociado a una categoría a la vez).

z3nth10n

Perdón por no hablar, pero ya tengo muchisimas cosas hechas. Luego las muestro.  :silbar:

Interesados hablad por Discord.

z3nth10n

Llevo 1 semana y pico trabajando en esto... Ahora necesito convertirlo a SMF alguien me ayuda? ;)

Interesados hablad por Discord.

Carloswaldo


z3nth10n

#5
Pues las funciones de BD con SmcFunc

http://www.simplemachines.org/community/index.php?topic=501731.0

Igualmente, ahí postee la ayuda, pero si me pueden ayudar por aquí, me estuve leyendo todos los manuales de MySQL de SMF, pero nada ;(

PD: Me podrias dar soporte por Skype, si no te importa claro. ;)




El file: http://pastebin.com/Vhr7uFVM

Interesados hablad por Discord.