Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/12/2008, 17:33
Avatar de pato12
pato12
 
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 17 años, 1 mes
Puntos: 101
APORTE: Crear un foro con PHP (nuevo)

Hola,
Cree un nuevo foro en PHP, pero este es totalmente echo por mi, no como el anterior post:
http://www.forosdelweb.com/f18/aport...on-php-562869/
Que es una actualización del foro de un tutorial.
Este es un poco mas largo, pero esta bueno y si sos administrador podes editar los mensajes y borrar mensajes y temas.
El foro usa 2 class que estan en este foro:El foro este funciona casi de igual manera que el otro.
Empezaremos:
Primero crear una carpeta que se llame, lib, donde van a estar el EasyLogin.lib.php y el PHPPaging.lib.php
Despues crearemos el archivo instalar.php:
Código PHP:
<!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=iso-8859-1" />
<title>Instalacion del foro pato12</title>
<style type="text/css">
<!--
body,td,th {
    font-family: Arial, Helvetica, sans-serif;
    color: #000000;
}
body {
    background-color: #DFEAFF;
}
.table {
    background-color: #FFFFFF;
    border: 1px solid #000000;
}
-->
</style>
</head>

<body>
<table width="900" border="0" align="center" cellpadding="0" cellspacing="5" bgcolor="#FFFFFF" class="table">
  <tr>
    <td><h1>Instalacion del foro pato12</h1></td>
  </tr>
  <tr>
    <td>
    <?php
    
if(!$_POST){
    
?>
    <form id="form1" name="form1" method="post" action=""><fieldset><legend><strong>C</strong>onfiguracion</legend>
        
          <strong>Nombre del foro:</strong><br />
        <input name="name-foro" type="text" id="name-foro" />
        <br />
        <strong>Temas por pagina:        </strong>
        <br />
        <input name="tema-pagina" type="text" id="tema-pagina" value="15" maxlength="3" />
        <br />
        <strong>Post por temas:        </strong>
        <br />
        <input name="post-pagina" type="text" id="post-pagina" value="10" maxlength="3" />
        <br />
        <strong>Tu email:</strong><br /> 
        <input name="email" type="text" id="email" />
        <br />
        <strong>Tu usuario de administrador:        </strong>
        <br />
        <input name="user-adm" type="text" id="user-adm" value="admin" />
        <br />
        <strong>Clave del usuario:        </strong>
        <br />
        <input name="clave-adm" type="password" id="clave-adm" />
        <br />
    <fieldset><legend><strong>C</strong>onexion a la BD</legend>
    <strong>Usuario:    </strong>
    <br />
    <input name="user-bd" type="text" id="user-bd" value="root" />
    <br />
    <strong>Clave:    </strong>
    <br />
    <input name="clave-bd" type="password" id="clave-bd" />
    <br />
    <strong>Servidor:    </strong>
    <br />
    <input name="server-bd" type="text" id="server-bd" value="localhost" />
    <br />
    
    <strong>Base de datos: </strong><br />
    <input name="bd-bd" type="text" id="bd-bd" />
    <br />
    <label><input name="crear" type="checkbox" id="crear" value="checkbox" checked="checked" />
    Crear si no existe.</label>
    </fieldset>
    <input name="instalador" type="submit" id="instalador" value="Instalar" />
    </fieldset></form>
    <?php
    
}elseif($_POST){
    echo 
"Iniciando...<br />";
    
$data['body']='
<?php
/////// CONFIGURACIONES DEL FORO //////////
$config[\'titulo\']="' 
$_POST['name-foro'] . '"; // NOMBRE DEL FORO
$config[\'result-page\']=' 
$_POST['tema-pagina'] . '; // RESULTADO POR PAGINA EN EL INDICE
$config[\'result-page-post\']=' 
$_POST['post-pagina'] . '; // RESULTADDOS POR PAGINAS EN CADA POST
$config[\'contact\']="' 
$_POST['email'] . '"; // CONTACTO A QUE EMAIL
$config[\'tema\']=1; // ELIJA EL NUMERO DE TEMA QUE QUIERES USAR (DEVE ESTAR EN LA CARPETA tema)
$config[\'paginas\']=array(
"inicio"=>array("Inicio","index.php?id=inicio&amp;p="),
"tema"=>array("Tema nuevo","index.php?id=tema&amp;p="),
"login"=>array("Login","index.php?id=login"),
"editar"=>array("Editar","index.php?id=editar&amp;i="),
"borrar"=>array("Borrar","index.php?id=borrar&amp;i="),
"registrarse"=>array("Registrarse","index.php?id=registrarse")
);// LAS PAGINAS, INDEX.PHP?ID=pagina
///////// CONEXION A BD ///////////
$conexion[\'servidro\'] = "' 
$_POST['server-bd'] . '"; // SERVIDOR
$conexion[\'usuario\'] = "' 
$_POST['user-bd'] . '"; // USUARIO
$conexion[\'clave\']= "' 
$_POST['clave-bd'] . '"; // PASS
$conexion[\'bd\'] = "' 
$_POST['bd-bd'] . '"; // BD
$conexion[\'conexion\']= mysql_connect($conexion[\'servidro\'], $conexion[\'usuario\'], $conexion[\'clave\']); // CONECTAMOS AL SERVIDOR
$conexion[\'conexion_bd\']=mysql_select_db($conexion[\'bd\'], $conexion[\'conexion\']); // CONECTAMOS A LA BD
if(!$conexion[\'conexion\'] || !$conexion[\'conexion_bd\']){ // SI DA ERROR
exit(\'Servidor no disponible, disculpe las molestias. Contactenos a \'.$config[\'contact\'].\', muchas gracias.\'); // DESIMOS QUE NO HAY SERVIDOR
}
///////// DEFINIMOS LOS ADMINISTRADORES DEL FORO ////////
$administradores=array();
$Sqll = mysql_query("SELECT * FROM users WHERE rank=\'8\'",$conexion[\'conexion\']) or die(mysql_error());  // CONSULTAMOS LA TABLA
while($dat= mysql_fetch_array($Sqll)){ // VEMOS LOS DATOS
$administradores[]=$dat[\'id\']; // GUARDAMOS EL ID
}
/////// INICIAMOS LA SESSION /////////
if(!isset($_SESSION)) // SI NO SE INICIO LA SESSION
session_start(); // PONER UN @ SI DA ERROR
//////// INCLUIMOS LAS FUNCIONES ////////
include(\'funciones.ini.php\');
?>'
;
    
$conn=@mysql_connect($_POST['server-bd'], $_POST['user-bd'], $_POST['clave-bd']);
    if(!
$bdconn=@mysql_select_db($_POST['bd-bd'],$conn) and $conn and !empty($_POST['crear'])){
    
$sql['bd']='CREATE DATABASE `' $_POST['bd-bd'] . '` ;';
    
$crear['bd']=mysql_query($sql['bd'],$conn);
    if(
$crear['bd'])
    
$dat[]='<font color="#00FF00">Se a creado la BD.</font>';
    else
    
$dat[]='<font color="#FF0000">No se a creado la BD.</font>';
    
$bdconn=$crear['bd']?mysql_select_db($_POST['bd-bd'],$conn):false;
    }
    
$conexion=$conn and $bdconn?true:false;
    
///////////////////////////////
    
if($conexion){
$sql['post']='CREATE TABLE `post` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `por` varchar(100) NOT NULL,
  `fecha` datetime NOT NULL,
  `titulo` varchar(100) NOT NULL,
  `mensaje` text NOT NULL,
  `idm` int(10) NOT NULL,
  `ultimo` datetime NOT NULL,
  `respuestas` int(10) NOT NULL,
  `editado` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=100 ;'
;
$sql['user']='CREATE TABLE `users` (
  `id` int(10) NOT NULL,
  `fecha` datetime NOT NULL,
  `usuario` varchar(100) NOT NULL,
  `clave` varchar(100) NOT NULL,
  `nombre` varchar(100) NOT NULL,
  `email` varchar(50) NOT NULL,
  `mensajes` int(10) NOT NULL,
  `rank` varchar(2) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;'
;
    
$crear['user']=mysql_query($sql['user'],$conn);  
    
$crear['pos']=mysql_query($sql['post'],$conn);  
    
$crear['result']=$crear['user'] and $crear['post']?true:false;
    
$sql['admin'] = 'INSERT INTO `users` (`id`, `fecha`, `usuario`, `clave`, `nombre`, `email`, `mensajes`, `rank`) VALUES (\'1\', \'2008-12-20 22:57:21\', \'' $_POST['user-adm'] . '\', \'' md5(md5($_POST['clave-adm'])) . '\', \'' $_POST['user-adm'] . '\', \'' $_POST['email'] . '\', \'0\', \'8\');';
    
$sql['pos']='INSERT INTO `post` VALUES (100, \'' $_POST['user-adm'] . '\', \'2008-12-21 01:06:36\', \'Gracias\', \'Hola,<br />\r\nGracias por instalarme.<br />\r\n[i]Gracias![/i]\', 0, \'2008-12-21 01:06:36\', 0, \'\');';
    
$crear['admin-user']=mysql_query($sql['admin'],$conn) or die( mysql_error() );  
    
$crear['admin-post']=mysql_query($sql['pos'],$conn) or die( mysql_error() ); 
    
$crear['admin']=$crear['admin-post']&&$crear['admin-user']?true:false;
    
///////////////////////////////
    
$abre =@fopen("config.ini.php""a+"); 
    
$escribir = @fwrite($abre$data['body']); 
    @
fclose($abre); 
    
$config=$abre and $escribir?true:false;
    }
    
///////////////////////////////
    
if($config)




    
$dat[]='<font color="#00FF00">Se a creado el archivo config.</font>';
    else
    
$dat[]='<font color="#FF0000">No se a creado el archivo config.</font>';
    if(
$conexion)
    
$dat[]='<font color="#00FF00">Se a establecido la conexion con el servidro y la bd.</font>';
    else
    
$dat[]='<font color="#FF0000">No se a establecido la conexion con el servidro y la bd.</font>';
    if(
$crear['admin'])
    
$dat[]='<font color="#00FF00">Se a creado correctamente el usuario y el post.</font>';
    else
    
$dat[]='<font color="#FF0000">No se a creado correctamente el usuario y el post.</font>';
    if(
$crear['result'])
    
$dat[]='<font color="#00FF00">Se a creado correctamente las tablas.</font>';
    else
    
$dat[]='<font color="#FF0000">No se a creado correctamente las tablas.</font>';
    echo 
implode("<br />",$dat);
    echo 
"<br />Elimine el archivo de instalacion si se instalo bien.";
    }
    
?>
    </td>
  </tr>
</table>
</body>
</html>
salir.php
Código PHP:
<?php
session_start
();
if(
$_SESSION){
session_unset(); 
session_destroy(); 
}
header("location: index.php"); 
?>
Continua en el siguiente post...
__________________
Half Music - www.halfmusic.com