Foros del Web » Programando para Internet » PHP »

APORTE: Crear un juego en php

Estas en el tema de APORTE: Crear un juego en php en el foro de PHP en Foros del Web. Hola, Cree un juego de preguntas y respuestas en php. El juego esta compuesto de: config.ini.php inst.php log.php logoup.php perfil.php preg.php reg.php RES.php ver_user.php install.php ...
  #1 (permalink)  
Antiguo 15/04/2008, 14:04
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 16 años, 7 meses
Puntos: 101
APORTE: Crear un juego en php

Hola,
Cree un juego de preguntas y respuestas en php.
El juego esta compuesto de:
  • config.ini.php
  • inst.php
  • log.php
  • logoup.php
  • perfil.php
  • preg.php
  • reg.php
  • RES.php
  • ver_user.php
  • install.php
En el archivo config.ini.php:
Código PHP:
<?
$info
['host']='localhost'
$info['user']='root'
$info['pass']=''
$info['bd']='bd'
$info['table']='preguntas';
$info['table2']='user';
$info['link_preg']='preg.php';
//////////////////////////////
$ad[]="pato12"// Para agregar pron: $ad[]="usuario";
?>
inst.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="209" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
<?php
@session_start();
include(
'config.ini.php');
foreach(
$ad as $adm){
if(
$_SESSION['login'] != $adm) exit();


if(
$_POST){

/////////////////////////////////////////////
$conn=mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error3:<br>".mysql_error()); 
mysql_select_db($info['bd'],$conn)or die("Error1:<br>".mysql_error()); 
/////////////////////////////////////////////
echo '<tr><td width="1329" height="2">';
$p=$_POST['p'];
$r=$_POST['r'];
$pma=$_POST['p+'];
$pme=$_POST['p-'];
if(empty(
$p) || empty($r) || empty($pma) || empty($pme)){
echo 
"Un campo esta vacio.";
}
else
{
$insertSQL="INSERT INTO ".$info['table']." (pregunta,respuesta,puntosmas,puntosmenos) VALUES ('$p','$r','$pma','$pme')";
$insert=mysql_query($insertSQL) or die(mysql_error());
if(
$insert){
echo 
"pregunta colocada correctamente.";
}
else
{
echo 
"Errpr ".mysql_error();
}
echo 
'</td></tr>'
}
}
?><tr><td width="1329" height="2">
<form name="form1" method="post" action="">
  Pregunta:<br>
  <label for="textfield"></label>
  <input name="p" type="text" id="p" value="<?=$p?>">
  <br>
  Respuesta:<br>
  <input name="r" type="text" id="r" value="<?=$r?>">
  <br>
  Punto si asierta: <br>
  <input name="p+" type="text" id="p+" value="<?=$pma?>" />
  <br>
  Puntos que se le restaran si no asierta: <br>
  <input name="p-" type="text" id="p-" value="">
  <br>
  <input type="submit" name="Submit" value="Agregar">
</form></td></tr>
  <tr>
<td height="2"><a href="logoup.php">Salir</a> | <a href="perfil.php">Perfil</a></td>  
  </tr>
</table>
log.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="209" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
<?php
echo '<tr><td width="1329" height="2">';
@
session_start();
session_register();
include(
'config.ini.php');
/////////////////////////////////////////////
$conn=mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error3:<br>".mysql_error()); 
mysql_select_db($info['bd'],$conn)or die("Error1:<br>".mysql_error()); 
/////////////////////////////////////////////


if ($_POST) { 
//Comprobacion del envio del nombre de usuario y password 
$username=$_POST['nick']; 
$password=$_POST['clave'];
if(
$username==NULL){
echo 
"Nick vacio";
}elseif (
$password==NULL) { 
echo 
"Clave vacia."
}else{ 
$query mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '$username'") or die(mysql_error()); 
$data mysql_fetch_array($query); 
if(
$data['nick'] != $username) { 
echo 
"Nick mal."
}elseif(
$data['clave'] != $password){
echo 
"Clave mal.";
}else{ 
$query mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '$username'") or die(mysql_error()); 
$row mysql_fetch_array($query);
$_SESSION['login']=$row['nick'];
$_SESSION['id']=$row['nivel'];
echo 
"<script>location='preg.php'</script>";

}
echo 
'</td></tr>'
}

?>
<?
if(!isset($_SESSION['login'])){
?>
<tr><td width="197" height="2" align="center">
<form name="form2" method="post" action="">Nick:<br>
  <input name="nick" type="text" id="nick" value="<?=$_POST['nick'];?>">
  <br>Clave:<br>
  <input name="clave" type="password" id="clave"><br>
  <input type="submit" name="Submit" value="-- Entrar --">
</form></td></tr>
<tr>
  <td height="2" align="center"><a href="reg.php">REGISTRAR</a></td>
</tr>
<?
}
else
{
echo 
"Logeado";
}

?>
</table>
logoup.php
Código PHP:
<?   
session_start
();
session_unset();   
session_destroy();   
header("location: log.php");   
?>
perfil.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="909" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
  <?php
@session_start();
if(!isset(
$_SESSION['login']))exit('Mal');
include(
'config.ini.php');
/////////////////////////////////////////////
mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error:<br>".mysql_error()); 
mysql_select_db($info['bd'])or die("Error:<br>".mysql_error()); 
/////////////////////////////////////////////
$query2 mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '".$_SESSION['login']."'") or die(mysql_error()); 
$row mysql_fetch_array($query2); 
?>
  <tr>
    <td height="2"><strong>Nick:</strong>
        <?=$row['nick'];?>
      <br>
      <strong>Puntos:</strong>
        <?=$row['puntos'];?>
      <br>
      <strong>Nivel:</strong>
        <?=$row['nivel'];?>
      <br>
      <strong>Email:</strong>
        <?=$row['email'];?></td>
  </tr>
  <tr>
    <td height="2"><a href="preg.php">&lt;&lt; Atras </a></td>
  </tr>
</table>
preg.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="909" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
 <?php
@session_start();
if(!isset(
$_SESSION['login']))exit('Mal');
include(
'config.ini.php');
/////////////////////////////////////////////
mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error:<br>".mysql_error()); 
mysql_select_db($info['bd'])or die("Error:<br>".mysql_error()); 
/////////////////////////////////////////////
echo '<tr><td width="1329" height="2">';
$query mysql_query("SELECT * FROM ".$info['table']." WHERE id = '".$_SESSION['id']."'") or die(mysql_error()); 
$data mysql_fetch_array($query);

$query2 mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '".$_SESSION['login']."'") or die(mysql_error()); 
$row mysql_fetch_array($query2);

$aas mysql_db_query($info['bd'],"SELECT count(*) FROM ".$info['table']) or die(mysql_error()); 
$cont=mysql_fetch_row($aas); 

echo 
$data['pregunta'];
echo 
'</td></tr>';
?>
  <tr>
    <td height="2">
    <?php
    
if($row['nivel'] > $cont[0]){
    echo 
"Fin del juego";
    }else{
    
?>    
    <form name="form1" method="post" action="RES.php">
  <label for="textfield"></label>
  <input type="text" name="res" id="res">
  <label for="Submit"></label>
  <input type="submit" name="Submit" value="Contestar" id="Submit">
</form><? }?></td>
  </tr>
  <tr>
<td height="1">Puntos: <?=$row['puntos']." | Nivel: ".$row['nivel'];?> | <a href="logoup.php">Salir</a> | <a href="perfil.php">Perfil</a> | Total de niveles: <?=$cont[0];?><?php
foreach($ad as $adm){
if(
$_SESSION['login'] == $adm) echo ' | <a href="inst.php">Administrar</a>';

 
?> </td>  </tr>
</table>
Continua-->>>>
__________________
Half Music - www.halfmusic.com
  #2 (permalink)  
Antiguo 15/04/2008, 14:05
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 16 años, 7 meses
Puntos: 101
Re: APORTE: Crear un juego en php

reg.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="273" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
<?php
// Preguntaremos si se han enviado ya las variables necesarias 
if ($_POST) {
include(
'config.ini.php');
echo 
'<tr><td width="1329" height="2">';
/////////////////////////////////////////////
$conn=mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error3:<br>".mysql_error()); 
mysql_select_db($info['bd'],$conn)or die("Error1:<br>".mysql_error()); 
/////////////////////////////////////////////
$username $_POST["nick"]; 
$password $_POST["clave"]; 
$cpassword $_POST["cpclave"]; 
$email $_POST["email"]; 
// Hay campos en blanco 
if($username==NULL|$password==NULL|$cpassword==NULL|$email==NULL) { 
echo 
"Un campo está vacio."
}else{ 
// ¿Coinciden las contraseñas? 
if($password!=$cpassword) { 
echo 
"Las clave no coinciden"
}else{ 
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían 
$checkuser mysql_query("SELECT * FROM ".$info['table2']." WHERE nick='$username'"); 
$username_exist mysql_num_rows($checkuser); 

$checkemail mysql_query("SELECT * FROM ".$info['table2']." WHERE email='$email'"); 
$email_exist mysql_num_rows($checkemail); 

if (
$email_exist>0|$username_exist>0) { 
echo 
"EL nombre de usuario o la cuenta de correo estan ya en uso"
}else{ 
//Todo parece correcto procedemos con la inserccion 
$query "INSERT INTO ".$info['table2']." (nick, clave, email, nivel, puntos) VALUES('$username','$password','$email', '1','0')"
mysql_query($query) or die(mysql_error()); 
echo 
"El usuario $username ha sido registrado de manera satisfactoria."


}
echo 
'</td></tr>';
}  
?>
<tr><td width="1329" height="2">
<form name="form1" method="post" action="">
Nick<br>
          <INPUT maxLength="25" size="15" name="nick"><br>
Clave:<br>
          <INPUT type="password" maxLength="25" size="15" value="" name="clave"><br>
Repita la clave:<br>
          <INPUT type="password" maxLength="25" size="15" value="" name="cpclave"><br>
Email:<br>
          <INPUT maxLength="25" size="15" name="email"><br>
<INPUT name="submit" type="submit" value="Registro">
</form>

</td></tr>
<tr>
  <td height="2"><a href="log.php">LOGIN</a></td>
</tr>
</table>
RES.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="909" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
<?php
@session_start();
if(!isset(
$_SESSION['login']))exit();
include(
'config.ini.php');
if(!
$_POST) exit();
echo 
'<tr><td width="1329" height="2">';
/////////////////////////////////////////////
$conn=mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error3:<br>".mysql_error()); 
mysql_select_db($info['bd'],$conn)or die("Error1:<br>".mysql_error()); 
/////////////////////////////////////////////
$res=$_POST['res'];
if(
$res == NULL){
echo 
"La respuesta esta vacia.";
echo 
"<br><a href='".$info['link_preg']."'>.Regresar.</a>";
}
else
{
$query mysql_query("SELECT * FROM ".$info['table']." WHERE id = '".$_SESSION['id']."'") or die(mysql_error()); 
$data mysql_fetch_array($query);

$query2 mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '".$_SESSION['login']."'") or die(mysql_error()); 
$data2 mysql_fetch_array($query2);

if(
$data['respuesta'] == $res){
echo 
"Bien, ganaste ".$data['puntosmas'];
$puntos_total=$data['puntosmas'] + $data2['puntos']; 
$sql "UPDATE ".$info['table2']." SET puntos='$puntos_total' Where nick = '".$_SESSION['login']."'";
$result2 mysql_query($sql);
$id2=$_SESSION['id']+1;
$_SESSION['id']=$id2;
$sql "UPDATE ".$info['table2']." SET nivel='$id2' Where nick = '".$_SESSION['login']."'";
$result2 mysql_query($sql);
echo 
"<br><a href='".$info['link_preg']."'>.Proxima pregunta.</a>";
}
else
{
echo 
"Mal,perdiste ".$data['puntosmenos']." por equivocarte";
$puntos_total=$data2['puntos'] - $data['puntosmenos']; 
$sql "UPDATE ".$info['table2']." SET puntos='$puntos_total' Where nick = '".$_SESSION['login']."'";
$result2 mysql_query($sql);
echo 
"<br><a href='".$info['link_preg']."'>.Regresar.</a>";
}
echo 
'</td></tr>';
}
$query2 mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '".$_SESSION['login']."'") or die(mysql_error()); 
$row mysql_fetch_array($query2);
$aas mysql_db_query($info['bd'],"SELECT count(*) FROM ".$info['table']) or die(mysql_error()); 
$cont=mysql_fetch_row($aas); 

?>
  <tr>
<td height="2">Puntos: <?=$row['puntos']." | Nivel: ".$row['nivel'];?> | <a href="logoup.php">Salir</a> | <a href="perfil.php">Perfil</a> | Total de niveles: <?=$cont[0];?><?php
foreach($ad as $adm){
if(
$_SESSION['login'] == $adm) echo ' | <a href="inst.php">Administrar</a>';

 
?> </td>  </tr>
</table>
ver_user.php
Código PHP:
<style type="text/css">
<!--
body {
    background-color: #F0F0F0;
}
a:link {
    color: #000000;
}
a:visited {
    color: #000000;
}
a:hover {
    color: #333333;
}
a:active {
    color: #FF0000;
}
-->
</style>
<table width="909" border="2" align="center" cellpadding="2" cellspacing="1" bordercolor="#000000" bgcolor="#FFFFFF">
<?php
@session_start();
if(!
$_GET) exit('Error');
if(!isset(
$_SESSION['login']))exit();
include(
'config.ini.php');
echo 
'<tr><td width="1329" height="2">';
/////////////////////////////////////////////
$conn=mysql_connect ($info['host'],$info['user'],$info['pass'])or die("Error3:<br>".mysql_error()); 
mysql_select_db($info['bd'],$conn)or die("Error1:<br>".mysql_error()); 
/////////////////////////////////////////////
$user=$_GET['user'];
$checkuser mysql_query("SELECT * FROM ".$info['table2']." WHERE nick='$user'"); 
$username_exist mysql_num_rows($checkuser); 
if (
$email_exist>0) {
echo 
"El usuario no existe";
echo 
'</td></tr>'
}
else
{
$query2 mysql_query("SELECT * FROM ".$info['table2']." WHERE nick = '".$user."'") or die(mysql_error()); 
$row mysql_fetch_array($query2); 
?>
<tr>
    <td height="2"><strong>Nick:</strong>
        <?=$row['nick'];?>
      <br>
      <strong>Puntos:</strong>
        <?=$row['puntos'];?>
      <br>
      <strong>Nivel:</strong>
        <?=$row['nivel'];?></td>
  </tr>
<tr>
  <td height="2"><a href="preg.php">&lt;&lt; Atras </a></td>
</tr>
  </table>
  <?php
  
}
  
?>
install.php
Código PHP:
<?
if($_POST){
// Configura los datos de tu cuenta
$dbhost=$_POST['ser'];
$dbusername=$_POST['us'];
$dbuserpass=$_POST['pass'];
$dbname=$_POST['bd'];
// Conexión a la base de datos
mysql_connect ($dbhost$dbusername$dbuserpass);
// Seleccion de la base de datos
mysql_select_db($dbname) or die('Cannot select database');

// Creacion de la tabla (puedes elegir otros nombres para los campos)
$query 'CREATE TABLE `preguntas` (
  `id` int(4) NOT NULL auto_increment,
  `pregunta` varchar(300) NOT NULL,
  `respuesta` varchar(30) NOT NULL,
  `puntosmas` varchar(30) NOT NULL,
  `puntosmenos` varchar(30) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;'
;
$result = @mysql_query($query);
if(
$result){
echo 
"Tabal de preguntas creada correctamente.";
}else{
echo 
"Error al crear tabla de preguntas.";
}
$query2='CREATE TABLE `user` (
  `id` int(4) NOT NULL auto_increment,
  `nick` varchar(30) NOT NULL,
  `clave` varchar(30) NOT NULL,
  `email` varchar(30) NOT NULL,
  `site` varchar(30) NOT NULL,
  `puntos` varchar(30) NOT NULL,
  `nivel` int(4) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;'
;
$result2 = @mysql_query($query2);
if(
$result2){
echo 
"<br>Tabal de user creada correctamente.";
}else{
echo 
"<br>Error al crear tabla de user.";
}
}
?><br>
<form name="form1" method="post" action="">
  Servidor:<br>
  <input name="ser" type="text" id="ser" value="localhost">
  <br>
  Usuario:<br>
  <input name="us" type="text" id="us">
  <br>
  Clave:<br>
  <input name="pass" type="password" id="pass">
  <br>
  Base de datos: <br>
  <input name="bd" type="text" id="bd">
  <br>
  <input type="submit" name="Submit" value="Submit">
</form>
El juego funciona muy bien, y es divertido.
Espero que les guste.
Gracias
Salu2
__________________
Half Music - www.halfmusic.com
  #3 (permalink)  
Antiguo 31/07/2008, 11:12
 
Fecha de Ingreso: julio-2008
Mensajes: 12
Antigüedad: 15 años, 9 meses
Puntos: 1
Respuesta: APORTE: Crear un juego en php

Jeje! se ve interesante, pero una pregunta sencilla: ¿Como funciona? :D
  #4 (permalink)  
Antiguo 31/07/2008, 12:36
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 1 mes
Puntos: 20
Respuesta: APORTE: Crear un juego en php

mmm... todavia no lo probe pero mirando el codigo parece un juego de trivia....
__________________
Firma:
Es mas dificil para el mono entender que el hombre desciende de el....

PD: Siempre doy karma al que me da una buena respuesta... ;0)
  #5 (permalink)  
Antiguo 03/08/2009, 23:48
Avatar de obraham  
Fecha de Ingreso: febrero-2008
Ubicación: Lima Perú
Mensajes: 4
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: APORTE: Crear un juego en php

solo una pregunta como adicionas las preguntas???
  #6 (permalink)  
Antiguo 21/09/2009, 21:36
 
Fecha de Ingreso: septiembre-2009
Mensajes: 3
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: APORTE: Crear un juego en php

se ve muy bueno gracias
  #7 (permalink)  
Antiguo 21/09/2009, 21:43
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 18 años, 6 meses
Puntos: 1
Respuesta: APORTE: Crear un juego en php

Voy a probarlo.
¡Gracias por el aporte! Si es de Trivial como dicen, me vendría bien para poderlo implementar en mi página web.

ArgoN
PD: ¡Dejo prestado el código de mi firma para que lo implementen!
  #8 (permalink)  
Antiguo 30/09/2009, 20:25
Avatar de kecodelafe  
Fecha de Ingreso: enero-2005
Mensajes: 2
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: APORTE: Crear un juego en php

Muy bueno el tuto, pero realmente no puedo ingresar a la configuracion ni configurar las respuestas ni puntos ni nada, como hago para ingresar las preguntas?

Gracias, Kecodelafe
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 6 personas




La zona horaria es GMT -6. Ahora son las 06:37.