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ú

Temas - Diabliyo

#91
Buen dia.

Quiero implementar las URLs amigables, pero tengo problemas para que funcione bien la visualizavion del sitio, vaya, mi blog actualmente se visualiza bien en todos los aspectos (el style, las imagenes, etc..), y las URLs ya las hice amigables.

Como invocaba mis URLs
Antes hacia esto:

http://miblog.com/?hoja=numerodenoticia  <--- asi accedes a una noticia
http://miblog.com?ver=numerodecategoria <--- asi entraba a una sección del menu principal (o cualquier otro)

Asi que, implemente esto:

# Options FollowSymLinks
RewriteEngine on
RewriteRule ^(.+)$ index.php
RewriteRule ^hoja/(.+)\-(.+)\.html$ ?hoja=$1
RewriteRule ^(.+)/$ ?ver=$1


El problema es que no he podido probado las urls amigables porque una vez guardo el codigo que les puse arriba como .htaccess, mi localhost se muestra como si el style.css hubiera desaparecido y las URLs a las imagenes que muestro (mis iconos del template) tampoco aparecen :(

Alguna idea ?
#92
Buenas.

Tengo un servidor dedicado en la nube el cual le configure el Servidor DNS y no habia tenido ningun problema cuando lo usaba con otras redes, me resolvia bien todo. Aparte tambien monte Apache+MySQL+PHP y tengo espacios de hosting para algunas cosas, asi que tambien re-configure el DNS para que se pudiera acceder al hosting por su sub-sibdominio.

Me di cuenta del este problema porque quiero estandarizar todas mis plataformas webs, ya que actualmente para mis plataformas web y mis blogs utilizo una base de datos independiente, donde cada una tiene sus propias tablas TIPICAS, como: Usuarios. Y con la finalidad de estandarizar las cuentas de mis usuarios y que no tengan que registrarse en cada uno de mis portales, pense en mejor centralizar un sitio de logeo, de forma que, cada vez que alguien se registre en alguno de mis portales, el registro se realizo contra mi servidor deciado, al cual le abriria una sub-dominio denominado: http://login.miservidor.com.

Mi primer paso fue ir al Account Manager de GoDaddy, ya que mis Blogs los manejo con GoDaddy, y solo mis plataformas webs las manejo con mi Servidor Dedicado (por las limitaciones que ofrece GoDaddy), en fin, edite cada una de las Zonas de los dominos de mis Blogs y le agregue una nueva regla donde invico que el sub-domonio "login" lo lance a: http://login.miservidor.com, y ademas en la parte de DNSs agregue las IPs de mi dns del servidor.com.

Pero malas noticias :(.... Cuando hago esto: login.blogX.com me lanza a blog.miservidor.com, en vez de ir a login.miservidor.com, no entiendo la razon porque :S, si ya verifique y efectivamente estoy escribiendo bien en las Reglas de zonas del dominio (en GoDaddy Account Manager), el dominio: login.miservidor.com.

Hasta este punto mi servidor dedicado esta asi:

Servidor Dedicado
OJO: no uso las IPs reales, para proteger mi servidor de los bots y personas maliciosas.
dominio: miservidor.com
ip1: 10.10.10.5 (ip directa)  --> miservidor.com
ip2: 10.10.10.6 (servidor de nombres 1) --> ns1.miservidor.com
ip3: 10.10.10.7 (servidor de nombres 2) --> ns2.miservidor.com

La configuracion del Servidor Dedicado tiene el hostname de: server, de modo que el servidor se llama (localmente): server.miservidor.com.

La configuracion de Zonas Externa:

Podran apreciar los sub-dominios de:

- ns1.miservidor.com
- ns2.miservidor.com
- server.miservidor.com
- www.miservidor.com
- mail.miservidor.com
- login.miservidor.com <-- el que me interesa
- blog.miservidor.com
- db.miservidor.com
- git.miservidor.com

# cat /var/named/external/db.miservidor.com
Código (bash) [Seleccionar]
$TTL 604800
@ IN SOA ns1.miservidor.com. server.miservidor.com. (
2010080301 ; serial
604800 ; refresh
86400 ; retry
2419200 ; expire
604800 ) ; negative cache ttl
;
@ IN NS ns1
IN MX 10 server
IN A 10.10.10.5
ns1 IN A 10.10.10.6
ns2 IN A 10.10.10.7
mail IN A 10.10.10.5
server IN A 10.10.10.5
www IN A 10.10.10.5
login IN A 10.10.10.5 ; Login Sistema
blog IN A 10.10.10.5 ; mi blog personal
git IN A 10.10.10.5 ; Git Server
db IN A 10.10.10.5 ; MySQL Databases


Las Reglas de Zonas Recursivas:

# cat /var/named/db.10.10.10.5
Código (bash) [Seleccionar]
$TTL 604800
@ IN SOA miservidor.com. server.miservidor.com. (
1 ; serial
8H ; refresh
2H ; retry
4W ; expire
1D ) ; minimum ttl
;
@ IN NS miservidor.com
5 IN PTR miservidor.com
5 IN PTR www
5 IN PTR server
5 IN PTR mail
6 IN PTR ns1
7 IN PTR ns2
5 IN PTR login ; Login Registro de usuario
5 IN PTR blog ; mi Blog
5 IN PTR db ; MySQL
5 IN PTR git ; GIT


Si escribo directamente en el navegador la URL: http://login.miservidor.com sale perfectamente una pagina en Blanco (que hice de prueba) y dice: Pagina de LOGIN.

Pero cuando escribo en el navegador la URL: http://login.blogx.com que se supone me debe re-dirigir a http://login.miservidor.com, me envia a: http://blog.miservidor.com.

Espero puedan ayudarme !!

Saludos !
#93
Buenas.

Tengo una plataforma web para marketing que quiero lanzar, pero antes de invertir en publicidad local, google y blogs, quiero primero confirmar mis expectativas de que la aplicación es segura.

Se invita a todo aquel con conocimientos de seguridad informática, técnicas de pen-test a que realicen una prueba de Hacking-Etico de tipo: BlackBox o GrayBox. Elegir entre Gray y Black ya es un gusto personal del interesado a participar.

Las Bases son:

1- Tener conocimientos en el tema y saberlos aplicar, esto no es para "aprender" o decir "yo le entro, pero no se sobre seguridad".
2- Ser ético y no revelar la información sino hasta después de haber pulido el error, ya pueden publicarlo en el Blog, etc... y con gusto también nosotros hacemos mención sobre su consultoría en nuestro blog.
3- Las pruebas de Hacking Etico (Pen-Test) se llevaran acabo el Viernes 4 de Febrero 2011, solo y únicamente ese día.
4- Se debe presentar un escrito sobre los fallos, detallando como se obtiene el error, una hipótesis del porque fue el fallo y recomendación de solución. No existe un limite máximo o mínimo de la dimensión del escrito.
5- El escrito debe ser en Arial 12, debe también llevar su nombre e e-mail y nacionalidad.
6- La recepción de los documentos resultantes serán del Sábado 5 Febrero al Lunes 7 Febrero.
7- Se hará un conteo de las vulnerabilidades encontradas y se elegirá de 1 hasta 3 ganadores, si existiesen casos donde cada uno encontrase vulnerabilidades que los otros no encontraron.
8- Se emitirán resultados finales trascurridos 3 días de la entrega de documentos, seria: Jueves 10 Febrero 2011.
9- Si los ganadores (o el ganador) así lo decide, podemos hacer publico el documento resultante de las vulnerabilidades (para que la comunidad siga aprendiendo).
10- Se hará mención publica mediante el Blog de nosotros y en este foro de los datos del ganador, este puede decidir si mencionar su nombre y nacionalidad o solamente su nickname.
11- El premio se hará entrega el día: Lunes 14 de Febrero.

La dirección del sitio que se pretender poner a prueba es:


El premio es:

- 12 meses de hosting gratuito.
- Cuenta para publicación en nuestro Blog.
- 1 Espacio para colocar banner en nuestro blog.
- 12 meses de publicidad en Turundus.

Los Pasos a Seguir son:

1- Posteas o comentas que estas interesado.
2- Envías por privado tu e-mail y que prueba quieres hacer, la de GrayBox o BlackBox.
3- El Viernes 4 de Febrero 2011 (fecha que inicia el hacking ético) se enviara el pb[documento PDF[/b] para el tipo de prueba que hayas elegido.
4- Hacer tu entrega como se mencionan las Bases.
5- Se entregan los ganadores, menciones y FIN.

LOS QUE QUIERAN ENTRARLE solo sigan los pasos mencionados... Las bases estarán abiertas hasta el Jueves 3 de Febrero del 2011.

Saludos !




==== NUEVA EDICION ===

Solo queda un dia, apurate en apuntarte.... Para ma~ana los que se alcanzaran a apuntar ya fueron los unicos, porque les estaremos enviando la documentacion para el tipo de Hacking Etico que elijieron, si se desidieron por BlackBox o GrayBox, entonces por defecto se les enviara la informacion para la BlackBox.

Paso a describir ambos tipo de Hacking Etico:

GrayBox
Consiste en que el auditado (turundus.net) proporcionara informacion de las variables, detalles de programacion, partes escenciales del sistema, campos en bases de datos, restricciones que tiene el sistema y dos cuentas de usuarios... Una cuenta del tipo 'usuario' y otra del tipo 'soporte', y se detallan mas cosas.
La finalidad es que esta informacion se use para vulnerar el sitio o poner en riesgo la informacion.

BlackBox
No se proporciona informacion alguna, mas el dominio web (turundus.net), el auditor debera buscar por sus propios medios como vulnerar el sitio.
En particular nosotros proporcionaremos solo informacion del sistema de registro, login y autentificacion de productos/servicios (lo que ofrecera el sitio).

Animo !

[hr

>>> Lista de Participantes <<<

- opportunity
- Sagrini
- SnakingMax
#94
Simepre que codifico una aplicacion utilizo las tipicas variables y forma de procesar tipico, por ejemplo:

?id=enviar
?id=Xcosa
?id=NUMOER&op=registro

Vaya en la barra de navegacion se ve el tipico: misitio.com/?id=variable&op=operacion&otravar=otrodato y asi puede ir creciendo el URL...

Pero he notado que otros sitios no muestras las varaibles y muestran algo asi: http://misitio.com/guardar/registro, donde a simple vista podria decir utilizan directorios multiples con codig en cada directorio ?, o por ejemplo, en Blogs cuando haces clic en un tag, la URL cambia a misitios.com/tag/COSA.

La verdad no se por donde empezar a buscar, y pues si tienen algun tip o enlace que explique esta forma de hacer webs se agradece !.

--- EDITADO ----

Tambien he visto por ejemplo el SMF (software para foros web), te permite elegir como se ve la URL, puedes elegir que la URL a tus temas se vean asi: miforo.com/?post=NUMERO o asi miforo.com/nombre-del-post-a-leer/.

Saludos !
#95
Buenas.

Quier hacer el efecto que se encuentra en muchos sitios que es la de mostrar una supercapa con opacidad en donde esta supercapa ocupa todo el ancho y alto del monitor, el fondo es opaco en negro, y en medio muestra un contenido, por lo general lo usan para mostrar imagenes, a esta capa tambien le adieren una imagen o enlace para cerrar la capa.

Buscando la forma de como hacerlo, he logrado mostrar la capa, que ocupe todo el ancho y alto de la dimencion del sitio, se super posiciona encima de todo el sitio, toma el efecto de opacidad y en medio muestro un iframe que contiene la imagen, de esta forma si la imagen es mayor al ancho del que establezco, se pone un scrollbar... y en la parte superior un enlace para cerrar la capa ([Cerrar]).

El problema es que, no logro cerrar la capa :(... Vaya, desaparece la imagen que muestro en medio, desaparece el iframe y el mensaje de [Cerrar], pero no desaparece la supercapa con opacidad :(

En mi code la funcion supercapa() es invocada por un enlace que pulsa el usuario, que se invoca atraves del evento onclick(), esta invoca dos funciones la funcion que muestra la supercapa() y una funcion de AJAX que escribe los datos en la capa.

Código (php) [Seleccionar]
<script language="javascript">
function supercapa( capa, color, opacidad )
{
var nav=1; // navegador Mozilla

if( navigator.userAgent.indexOf("MSIE") >= 0 ) nav=0; // es I.E

var m= document.createElement('div');
m.id=capa;
m.style.width= document.body.offsetWidth+ 'px';
m.style.height= document.body.offsetHeight+ 'px';
m.style.backgroundColor= color;
m.style.position= 'absolute';
m.style.top=0;
m.style.left=0;
m.style.zIndex=2000;

if( nav==0 ) m.style.filter= 'alpha(opacity='+opacidad+')'; // es I.E
else m.style.opacity= opacidad/100;

document.body.appendChild(m);
}
</script>

<?php
echo '<a href="#supercapa" onclick="cargar_datos( \'my=campains&op=vercontenido&id_camp='$buf["ID"]. '\', \'supercapa\', \'GET\', \'0\'); supercapa(\'supercapa\', \'#000000\', \'50\');">

<img src="imagenes/ver.png" border="0" alt="Visualizar Contenido" title="Visualizar Contenido">
</a>'
;
?>


Cuando se muestra la imagen, el enlace de [Cerrar] invoca la funcion capa_verno() en javascript, que se supone cambia los estilo de visibility y display, si estos estan activados, los desactiva:

Código (php) [Seleccionar]
<script language="javascript">
function capa_verno( capa )
{
var layer;
layer= document.getElementById(capa);

if( layer.style.visibility=="hidden" )
{
layer.style.visibility="visible"; //visible - hidden
layer.style.display="block"; // none - block
}
else
{
layer.style.visibility="hidden"; //visible - hidden
layer.style.display="none"; // none - bloque
}
}
</script>

<?php
echo '<a href="#" onclick="capa_verno(\'supercapa\');">[Cerrar Vista Previa]</a><br>
<iframe src="?algo=otro">
    <!-- Aqui muestro la imagen //-->
</iframe>'
;
?>
#96
Buenas.

Tengo problemas para mostrar unos caracteres que tienen acento, me sale impreso un rombo negro con un símbolo de pregunta al centro.

Dichos caracteres acentuados los tome de un archivo de texto que previamente con mi sistema cargue e inserte en mi base de datos, el proceso fue el siguiente:

Código (php) [Seleccionar]
<?php
# script mundo.php
# sube las ciudades a la BDD cuando inicializas el sitio

$file'ciudades.csv';
$buf=''# datos 
$fpfopen($file"r" ); # abrimos stream
$i=0;
$c=0;
$linkconectar();
while(!
feof($fp) )
{
$buffgets($fp2048); # leemos
$xexplode(","$buf);

$existe'select * from MUNDO_CIUDAD where ID=\''$i'\' && CIUDAD=\''proteger_cadena(substr($x[3], 1, -1)). '\'';
if( !mysql_num_rowsmysql_query($existe) ) ) # si no existe, insertamos 
{
$cons1'select * from MUNDO_ESTADO where NUMERO=\''substr$x[2], 1, -1). '\' && ID_PAIS=\''substr$x[1], 1, -1). '\';';
$data1mysql_fetch_array(mysql_query($cons1$link)); # obtenemos datos del Estado de la Ciudad del buffer: $buf
$cons2'insert into MUNDO_CIUDAD( ID, ID_ESTADO, ID_PAIS, CIUDAD ) values( \''$i'\', \''$data1["ID"]. '\', \''$data1["ID_PAIS"]. '\', \''proteger_cadena(substr$x[3], 1, -)). '\' );';
mysql_query$cons2$link );
$c++;
}
$i++;
}
echo 
'Insertadas <b>'$c'</b> ciudades de <b>'$i'</b> recorridos.';
mysql_close($link);
fclose($fp); # cerramos stream 

unset(
$buf);
?>


El archivo ciudades.csv contiene algo como esto:

numero,codigociudad, altitud, latitud, numerociudad, codigoestado, nombreciudad

Existen mas de 100,000 resgistros en ese archivo, asi que con el code que les puse, lo cargue en el sistema y lo inserte.

Por mencionar tambien, yo utilizo una funcion llamada proteger_cadena(), que es mas que esto:

Código (php) [Seleccionar]
<?php
function proteger_cadena$cadena )
{
return htmlentities($cadenaENT_QUOTES);
}
?>


EL PROBLEMA ya es en la practica, cuando dentro de un SELECT despliego los nombres de las ciudades consultadas, me salen con el simbolo que les mencione.... Para ello, cuando se invoca el SELECT mando imprimir con una funcion llamada: desproteger_candea(), implementada asi:

Código (php) [Seleccionar]
<?php
function desproteger_cadena$cadena )
{
$out=$cadena;
$outhtml_entity_decode$outENT_QUOTES );

if( strchr$out"<" ) )
$outstr_replace"<"htmlentities("<"ENT_QUOTES), $out );
if( strchr$out">" ) )
$outstr_replace">"htmlentities(">"ENT_QUOTES), $out );

if( strchr$out"\n" ) )
$outstr_replace"\n""<br>"$out );
if( strchr$out"\t" ) )
$outstr_replace"\t""&nbsp;&nbsp;&nbsp;"$out );

return $out;
}

$consmysql_query();
if( !
mysql_num_rows($cons) )
echo 'No hay ciudades...';
else
{
while($buf=mysql_fetch_array($cons))
{
echo '<select name="variable">
<option value="'
$buf["ID"]. '" />'$buf["NOMBRE"];
</select>';
}
}
?>


Saludos !
#97
PHP / Ayuda con preg_replace() !! (solved)
12 Enero 2011, 21:40 PM
Buenas.

Quiero utilizar preg_replace() para re-emplazar framento de texto por un fragmento que yo desde, para ello manejo asi las cosas.

El usuario despone de un archivo de texto llamado script.txt, en ese archivo debe realizar una notacion especifica para introducir "comandos", que despues en unos segundos el servidor (utilizando cron y ejecutando un archivo PHP) lo lee y ejecuta las ordenes.

Bueno, dentro de esta notacion quiero que sea posible el usuario pueda imprimir el Nombre del MES (en texto), para ello la notacion seria:

O,DATE(FECHA:M)

Donde:

, :: (coma) es el delimitador.
O :: lo interpeto como Operacion de Funciones.
DATE() :: es la funcion en PHP.
FECHA :: es el nombre exacto del nombre del campo de una tabla en la base de datos.
M :: seria el argumento que indica el Nombre del Mes en Texto.

Asumiendo esto, lo que estoy hasta ahorita intentando hacer es:

En $m tenemos la trama "O,DATE(FECHA:M)", pero ya convertida en array por explode().
Y $db contiene los campos de la base de datos acorde a la consulta, obtenidos con mysql_fetch_array().
Código (php) [Seleccionar]
function convierte_comand($m, $db )
{
$box=''; # operador que guarda la suma
for( $i=0; $i<count($m); $i++ )
{
if( $i>0 ) #ignoramos el primer valor
{
  $cad_buscar= array(
  # '/\[capa\=(.*?)\](.*?)\[\/capa\]/is',
  '/DATE\((.*?):(*?)\)/is'
  );
$cad_remplazo= array(
# '<div id="$1">$2</div>',
''. date("'$2'", $db['$1']). ''
               );

$box= preg_replace( $cad_buscar, $cad_remplazo, $m[$i] );
}
}
unset($i);
return $box;
}



Como esto lo escribo en una imagen, pues no me escribe informacion alguna :(

Saludos !
#98
Buen dia.

Tengo un sistema en donde no tengo mucha idea de que funcion utilizar para formatear numeros flotantes, vaya, el sistema despues de hacer operaciones matematicas arroja un digito asi: 192.345567, el cual es correcto, pero solo me interesa ver y mostrar los dos primeros digitos que estan a la derecha del punto, vaya, mostrar esto: 192.34

Alguna idea ?
#99
Buenas.

quiero saber como puedo ir armando un array ?

Vaya, tengo un archivo, donde escribo "comandos" y quiero que estos comandos se pasen a un array, claro, conforme voy leyendo los comandos de un archivo.

Por ejemplo, algunos comandos de mi archivo:

# archivo: comandos.txt
# contenido:

color=#000000
font=mifont.ttf
web=www.mipagina.com


Tengo mi codigo que lee del archivo los comandos, ignora toda linea que inice con un SALTO DE LINEA o con un GATITO (comentarios), es este:

Código (php) [Seleccionar]
<?php
$file
'comandos.txt';

$fpfopen$file"r");
while(!
feof($fp) )
{
$buffgets$fp2048); # leemos
# si es distinto de comentario, vacio o salto de linea, leemos
if( strcmp($buf[0], "#") && strcmp($buf[0], "") && strcmp($buf[0], "\n") )
echo $buf# estoy imprimiendo comando, PERO QUIERO METERLO A UN ARRAY
}
?>


En el codigo, podemos ver que lee los comandos y las IMPRIME (ya que es un ejemplo), pero quiero meterlo a un array, vaya, tener una variable vacia e ir metiendole valores a dicha variable, para despues recorrer esa variable con un foreach.

Alguna idea ?
#100
Buenas...

Me he instalado localmente el GIT para mantener bien organizados mis proyectos, esto con la finalidad de subir mis cambios a mi Servidor Dedicado (tambien he instalado GIT igual que en mi Equipo Local).

En si el proceso de instalacion es sencillo, simplemente se compilan las fuentes y ya esta funcionando...

Para tener mejor organizado mi equi Local, he creado un directorio (mas NO un usuario) en /home/, llamada: git (/home/git), dentro pongo mis proyectos, asi:

shell# cd /home/git/
shell# mkdir proyecto1.git
shell# cd proyecto1.git/
shell# git init
shell# echo "prueba" > dato.txt
shell# git add .


OJO: todo lo realizo como ROOT.

Tambien configure mi Apache para visualizar el git: http://localhost/git...

MI PROBLEMA es que no se como puedo por ejemplo, con mi cuenta de usuario normal, una vez que he creado mis repositorios por ejemplo en: /home/miusuario/Documentos/git/proyectA.git, como puedo subirlo a mi Equipo Local ?...

Intente asi:

# OJO: soy usuario comun aqui, NO soy root

shell$ cd /home/miusuario/Documentos/git/proyectoA.git/

shell$ git push http://localhost/git  # sale error
fatal: http://localhost/git/info/refs not found: did you run git update-server-info on the server?

shell$ git push git://localhost/git
fatal: The remote end hung up unexpectedly


Alguien que me oriente !!...

Saludos !
#101
Buenas.

Tengo un input al cual le asigno un evento onkeyup="cargar_ajax()", y no se como interpretar valores que no son numeros, signos, letras.

Vaya, si escribes algun nuemero, signo o letra, la funcion carga_ajax() toma los valores y los guarda, pero quiero implementar una forma de freanar o parar la captura de caracteres interpretando la tecla ESC o INTRO (enter).

Mi idea es que, si el usuario por ejemplo, en el input text con evento onkeyup, al terminar de escribir un texto y pulse enter, mi sistema AJAX haga la busqueda. Claro, muchos diran, pues mientras te vaya pasando los caracteres, arroja resultado de busqueda, pues no, por que el sistema es un tipo "punto de venta", donde solo y unicamente genero una busqueda despues de que se pulsa ENTER o ESC (ya que uso un lector de codigo de barras).

Poco de Code:

Código (php) [Seleccionar]
<?php
echo '<td>Producto/ID:</td><td><input type="text" name="venta_id" id="venta_id" onkeyup="carga_ajax( \'id=carrito\', 
\'pdv_venta_carrito\', \'POST\', \'venta_id\');"></td><tr>
<td colspan="2">

<div id="pdv_venta_carrito">... no hay productos...</div>'
;
?>


Lo que quiero lograr es:

1- El usuario escribe un texto en el input.
2- Al pulsar enter se genera la busqueda.
3- muestra resultado de busqueda en capa "pdv_venta_carrito".

Saludos !
#102
Desarrollo Web / [CSS] Capa por encima de todas ?
3 Noviembre 2010, 15:28 PM
Buen dia.

Tengo un par de dudas respecto al CSS....

Me he bajado un Free CSS Template de internet para utilizarlo en mi plataforma web desarrollada en PHP, el problema es que una vez que termine de acondicionar el template y casi todo quedo bien, en la parte superior derecha el Template por defecto muestra una capa con la fecha actual, a esa capa solo le elimine la opcion de mostrar la fecha actual y puse un recuadro con menu desplegable (al hacer a:hover) y pues aparecen las opciones de la cuenta del usuario del sistema y demas cosas para el usuario registrado.

El primer problema es que, el menu de la parte superior derecha (el menu desplegable que ya mencione), queda detras de una capa que esta mas abajo, vaya, no alcanzo a ver TODAS las opciones del Menu, porque la capa que esta mas abajo se sobre pone encima.

Mi segunda duda es, como pueso hacer para que una capa se sobre ponga por encima de todas ?, es que quiero hacer el efecto con CSS y javascript de que cuando se pulse sobre una IMAGEN se abra una capa que este por encima de todas (capa en color negro, transparente).

Saludos !
#103
PHP / Obtener Lista de CIUDADES usando GeoIP ?
28 Octubre 2010, 01:13 AM
Buenas...

Tengo un sistema donde necesito crearme una base de datos de los paises, estados y ciudades, utilizando GeoIP es facil determinar pais, estado y ciudad basandome en la IP de una persona, el problema es que, como les mencione ya, necesito una base de datos ya armada, asi que me hice a la tarea de investigar un poco como lo logra GeoIP.

En realidad fue bastante sencillo saber como logra GeoIP obtener los nombres de estados y paises, vaya, no me refiero usar la IP como medio de rastreo, sino que GeoIP incorpora unas variables definidas en sus archivos PHP donde esta TOOOODA la lista de paises (con codigo de pais) y estados, asi que, solamente copie estas variables, y arme un script en PHP que me genera la sintaxis MySQL.

Aqui el codigo: http://pastebin.com/KQCa2HB7.

Basicamente con ese script podran obtener los paises, codigo pais y estados en forma de Lista o bien con sintaxis MySQL preparado para solo: copiar y pegar, e inmediatamente crean su Tabla personal.

MI PROBLEMA
Es que, no encuentro la manera de como obtener la lista de Todas las Ciudades de cada Pais, no puedo encontrar como las obtiene o como acceder a esa informacion, ya que al parecer (segun a como he leido el codigo), las ciudades se encuentran en el archivo: GeoIPLiteCity.dat.

En donde el archivo GeoIPLiteCity.dat esta en binario, de modo que lo abri en modo binario usando PHP, pero no logro dar con la informacion de las ciudades, ya que pues esta pesadito (26.5 MB) y no entiendo la forma de irlo recorriendo.

Ya ando un poco estresado de todo el dia y se me ha secado el cerebro jjejjejeej, alguna ayuda ?

Saludos !
#104
GNU/Linux / Editor de Video en Linux ?
6 Octubre 2010, 20:26 PM
Buenas.

Estoy buscando un editor de video en linux, mis necesidades son muy básicas, tengo un video creado con recordmydesktop y quiero simplemente hacer cortes.

Estuve viendo que existe avidemux, pero es muy inefisciente debido a que si el video tiene una resolucion igual o mayor a la pantalla actual de mi laptop/pc, se sale de mi espacio visual la ventana del programa avidemux, y lo peor es que no la puedo ajustar (ancho y alto) para poder trabajar :(.

Espero puedan orientarme un poco...

Saludos !
#105
Buenas.

Tengo un servicio de hosting con los de http://www.hosting24.com/ (bueno es de un amigo), y estuve intentando instalar una aplicación en PHP que le pase, pero esta plataforma hace uso de browscap.ini con la finalidad de obtener información del navegador y crear una estadística de accesos (log). Pero desgraciadamente los de Soporte me dicen que no se puede personalizar el PHP.INI del hosting y que tampoco se permite cargar paralelamente (alternamente) un PHP.INI personalizado.

Cada vez que acceso a la plataforma, me marca:
Warning: get_browser() [function.get-browser]: browscap ini directive not set in /home/elsitio/public_html/modulos/base.php
on line 762


Buscando solucion, verifique las variables con phpinfo() y browscap (variable de entorno) esta configurada a "no value", de modo que utilize la funcion de ini_set() para establecer el valor, asi:

Código (php) [Seleccionar]
<?php
echo 'Mi Directorio: 'getcwd(). '<br>
browscap value= '
ini_get("browscap");

# intentamos meter valor
$newgetcwd().'/php_browscap.ini';
ini_set"broswcap",  $new );

echo 
'<p>browscap Var= 'ini_get("browscap");

echo 
'<p>Todas las Variables:<br>';
print_r(ini_get_all());
?>


Pero es inútil :(, la variable "browscap" sigue intacta (no value).

Alguna idea ?
#106
Buenas.

Tengo una aplicacion web que funciona perfectamente en Firefox, lo que es el aspecto visual va como debe ser, pero cuando accedo a la aplicacion web mediante internet explorer las cosas van mal :(, el aspecto visual se pierde :(....

Ya intente utilizar el JS de Dean Edwards (baje de aqui) que segun es para que internet explorer se comporte como un navegador que obedece el estandar CSS, pero no funciona aun asi :(...

Este es el estilo.css y aqui les dejo unas pantallas de como se pierden los estilos:

Sitio con Firefox [Ver Imagen]
Sitio con I.E 8 [Ver Imagen]

Alguna idea ?
#107
Buenas.

Tengo varios templates acomodados a mi CMS, pero estos templates se visualizan excepcionalmente en Firefox, pero en Internet Explorer no :(, he notado que las ordenes CSS de margin-top, margin-bottom, margin-left y margin-right las ignora el I.E.

Alguien podria darme algun consejo, guia, enlace o manual para adaptar tambien mis styles CSS compatibles en I.E ?

Saludos !
#108
Buenas.

Tengo un blog el cual lo gestiono con mi propio CMS, hace ya muchos meses le implemente Feed (rss.php) el cual se genera en PHP.

Actualmente no tengo problemas para mostrar las noticias, titulos y acentos dentro del Feed (rss.php), el único inconveniente es que no se como interpretar los saltos de linea de linea y caracteres HTML (tags).

Si tengo una noticia que dice en el blog:
01010101
02020202
0303030303


Cuando sincronizo el Feed del blog, la noticia sale asi:
01010101020202020303030303

Vaya, no se respetan los saltos de linea :(

Como interpreto mi codigo ?
Bueno, basicamente la noticia se cuelga mediante un formulario y para disponer de tags HTML se hace uso de BBCode, el cual, cuando alguien accede al sitio se interpreta con una funcion.
Respecto al Feed, simplemente interpreto de la misma forma, solo que al final todo los codifico a UTF-8, y elimino los tags html, ya que no veo que sean interpretados (strip_tags()).

Les dejo la funcion que uso para interpretar noticias para el Feed/RSS:
Código (php) [Seleccionar]
<?php
function desproteger_cadena_xml$cadena )
{
$out=$cadena;
$outhtml_entity_decode$outENT_QUOTES );

# eliminamos caracteres < y >, ya que el BBCode es el principal
if( strchr$out"<" ) )
$outstr_replace"<"htmlentities("<"ENT_QUOTES), $out );
if( strchr$out">" ) )
$outstr_replace">"htmlentities(">"ENT_QUOTES), $out );

# sustituimos Saltos de Linea por salto en html
if( strchr$out"\n" ) )
$outstr_replace"\n""<br>"$out );
if( strchr$out"\t" ) )
$outstr_replace"\t""&nbsp;&nbsp;&nbsp;"$out );

//$out= utf8_encode( str_replace("|","/",$out) );
$outmsg2msgtags($out); # interprete BBCode (de BBCode a HTML Tags)
$outmsg2caritas($out); # interprete de Caritas (de BBCode Caritas a <img src="carita.jpg">)
$outmsg2caritas_extra($out); # lo mismo, pero son caritas extras personalizadas del tema web

$oututf8_encode$out ); # estandar UTF-8
return $out# retornamos cadena lista para hacerle "echo"
}
?>


Saludos !
#109
Me baje, instale y empeze a jugar este fantastico shooter, pero desgraciadamente tengo un problema cuando estoy jugando la mision de la nivede (donde te mueres de hipotermina si estas mucho en el frio), ya que casi al finalizar esta mision y al momento de subir al helicoptero que me recojera en el tejado (techo), el juego simplemente se cierra.

Tiene alguna suerencia (aparte de mejor comprarlo original) ?, les sucede lo mismo ?, existe algun update (ya que tengo la version instalada, ningun update)?

saludos !
#110
Buenas.

Tengo el battelfield bad company 2, lo baje de taringa.net y pues el juego corre pecfecto y todo, el unico problema es que no lo puedo jugar en multiplayer en linea, me pide el CODIGO, pero, si le pongo el codigo con el que instale el juego no procede la ventanita que me impide jugar :(, me marca error de codigo que inserte otro.

Alguien tiene este juego y SI pueda jugar multiplayer en linea  y que me ayude ?

saludos !
#111
Buenas...

Tengo una consola Xbox360 a la cual le empezo a fallar el lector, y con la finalidad de buscar una solucion pues abri la consola y finalmente di con que el problema no era el lente del lector, sino que es otro el cual no entiendo muy bien.

En si, describiendo a grandes rasgos, cuando intentas abrir la bandeja (usando el boton de abrir) simplemente NO ABRE, una vez desarme la consola (la desnude), conecte a la luz, encendio y pulse el boon de abrir consola, esta SI SE ABRIO, despues note que al ponerle la tapa, volvia quedarse trabada. Busque si existia algun borde donde se atorara, y nada...

La cosa esta rara, es mas, hasta hice un video para que me entiendan mejor: http://yfrog.us/0l33sz

Saludos !
#112
Tengo un servidor dedicado CentOS, me monte un SMTP (postfix) con SPF y DKIM para minimizar la posibilidad de que mis mails lleguen a SPAM.

Mis mails los saco mediante mi un script Sendmail.php (ver la reduccion del script), en donde cada vez que un usuario escribe un mail, establezco mediante PHP (funcion mail()), el Return-Path, pero esto me esta trayendo un problema con Gmail, Hotmail y Yahoo, ya que estos detectan de alguna forma que se cambio el Return-Path.

Finalmente Gmail, Yahoo y Hotmail me colocan una header diciendo:

X-Authentication-Warning: server.crver.net: apache set sender to contacto@crver.net using -f

Si omito poner el Return-Path personalizado (a nombre de quien envia), por defecto postfix me agrega el Return-Path con el correo: apache@hostname.dominio, lo cual evidentemente NO quiero, minimo quiero que se incruste un Return-Path con el mail del que envia el correo o bien de un correo especifico como: error@midominio.com.

Les pego unas tramas....

Esta trama se recivio a mi correo de gmail, pero no configure el return-path con php, sino que postfix solito le puso el que no quiero (y no se como configurar eso).

Esta trama se ecivio a mi correo de gmail, pero mediante PHP coloque el return-path personalizado, pero GMAIL me pego un header que ya mencione arriba.

Saludos !
#113
Buenas.

Tengo un servidor dedicad en donde estoy configurando un sistema personalizado de envío de mails, el sistema básicamente utiliza la función mail() para enviar los correos.

El Servidor dedicado esta corriendo sobre GNU/Linux y tengo los siguientes deamons corriendo:

  • postfix  - Servidor SMTP.
  • dovecot - IMAP, POP.
  • salsauthd - Autentificacion.
  • dkim-milter - Firma de Dominio que se integra como cabecera extra en los mails (DKIM).
  • Apache+PHP+Mysql - Servidor HTTP con soporte PHP, MySQL.

    Por lo general si se arma un mail en PHP y se envian los parametros basicos: mail($to, $subject, $cuerpo, $headers ) por defecto postfix (servidor SMTP) coloca automaticamente la cabecera Return-Path como: apache@hostname.dominio, pero yo quiero que aparezca la direccion del mail del que esta enviando el correo.

    La opcion que encontre, es simplemente agregando una argumento extra a la funcion mail(), quedando asi: mail($to, $subject, $cuerpo, $headers, $extra_arg).

    En donde $extra_arg, puede ser: $extra_arg= '-f'. $from; (-fELCORREO@DOMINIO.COM).

    Pero por razones que desconozco (o por el estres que traigo encima) mi pequeño script Sendmail.php (que tengo de prueba), al momento de establecer el Return-Path en el INPUT TEXT, simplemente se queda en blanco todo, vaya, no sale el mensaje que si se envio o no el correo :(.

    Por otro lado, si omito pasarle a la funcion mail() el argumento extra, este procesa perfecto, se envia el mail y efectivamente llega... Pero el Return-Path esta como NO lo quiero.

    Aqui script:

    Código (php) [Seleccionar]
    <?php
    if( isset($_POST["boton"]) && !strcmp($_POST["boton"], "Enviar") )
       {
       echo 
    '<span>';
       
    $boundarymd5(time()); //valor boundary
       
    $htmlalt_boundary$boundary"_htmlalt"//boundary suplementario
       
    $subject=$_POST["asunto"];
       
    $from$_POST["from"];
       
    $to$_POST["to"];
       
    # if( !empty($_POST["return_path]) ) )
       
    $extra_arg'-ferror@midominio.com';
       
    # else      $extra_arg= NULL;

       //cabeceras para enviar correo en formato HTML
       
    $headers "MIME-Version: 1.0\r\n";
       
    $headers .= "Content-Type: multipart/mixed; boundary=\""$boundary"\"\r\n"//datos mixteados
       
    $headers .= "From: "$from"\r\n"//correo del que lo envia

       //incia cuerpo del mensaje que se visualiza
       
    $cuerpo="--"$boundary"\r\n";
       
    $cuerpo .= "Content-Type: multipart/alternative; boundary=\""$htmlalt_boundary"\"\r\n\r\n"//contenido alternativo: texto o html
       
    $cuerpo .= "--"$htmlalt_boundary"\r\n";
       
    $cuerpo .= "Content-Type: text/html; charset=iso-8859-1\r\n";
       
    $cuerpo .= "Content-Transfer-Encoding: 8bits\r\n\r\n";
       
    $cuerpo .= $_POST["mensaje"];
       
    $cuerpo .= "\r\n\r\n";
       
    $cuerpo .= "--"$htmlalt_boundary"--\r\n\r\n"//fin cuerpo mensaje a mostrar
       
    $cuerpo .= "--"$boundary"--\r\n\r\n";

       if( 
    mail($to$subject$cuerpo$headers$extra_arg) == FALSE )
          echo 
    'Correo enviado con exito...';
       else
          echo 
    'Error al enviar...';
       echo 
    '</span>';
       }
       
    echo 
    '<table>
    <form action="sendmail.php" method="POST">
    <td>From:</td><td><input type="text" name="from"></td><tr>
    <td>To:</td><td><input type="text" name="to"></td><tr>
    <td>Asunto:</td><td><input type="text" name="asunto"></td><tr>
    <td colspan="2">Mensaje:</td><tr>
    <td colspan="2"><textarea name="mensaje"></textarea></td><tr>
    <td colspan="2"><input type="submit" name="boton" value="Enviar"></td>
    </form>
    </table>'
    ;
    ?>


    Saludos !
#114
PHP / Como File Uploader Asincrono ?
12 Agosto 2010, 22:53 PM
Buenas.

Actualmente en mi CMS la forma de hacer uploading a archivos es simplemente moviendolos despues de haber procesado el formulario (pulsando ENVIAR), pero, lo que ahora quiero es brindar la posibilidad de hacer el proceso de forma paralale (asincrono).

La primer idea fue utilizar AJAX como medio, pero evidentemente esto no es posible ya que los flujos GET y POST son solo para pasar variables, y en este caso el flujo $_FILE no entra :( ( o si, si entra diganmelo xD).

La segunda idea (y la que medio funciona) es utilizar un <form> el cual procese a este dentro de un <iframe>, y con un poco de javascript hacer parecer que esta en AJAX, vaya, cuando el usuario proporciona el archivo a subir y pulsa Subir, el Formulario sigue estático pero en la parte donde esta el <input type="file se esta procesando la subida, al finalizar la subida simplemente se cambia el mensaje a algo como: Subido con éxito....

Mi script no presenta problemas para archivos de menos de 5MB, pero, si intento subir un archivo de 10, 15, 20 o mas MBs, simplemente no se sube :(....

Tengo en menta la razon de que el script se frene o simplemente NO se suba el archivo, es porque la configuración del Apache asigna un tiempo de ejecución limite de un script PHP, y pues este simplemente excede el tiempo de ejecución y por ende, se frena el script. Si fuese asi, como me recomiendan configure mi Apache ?

La idea es que quiero contemplar archivos hasta de 700MB.

Me gustaría por favor me ayudaran o brindaran su opinión, a continuación les pongo el code:

configuracion de mi php.ini
post_max_size 8M 8M
max_execution_time 30 30
max_file_uploads 20 20
max_input_nesting_level 64 64
max_input_time 60 60
memory_limit 128M 128M


Código (php) [Seleccionar]
<script type="text/javascript">
function resultadoUpload(estado, file)
{
if (estado == 0)
var mensaje = file + ' <img src="loading.gif" border="0">';
else if (estado == 1)
var mensaje = file + ' <img src="palomita.png" border="0">';
else if (estado == 2)
var mensaje = 'Error: Tipo de archivo/extensión no permitido.';
else if (estado == 3)
var mensaje = 'Error: No se pudo copiar el archivo.';
else
var mensaje = 'Error Desconocido';

document.getElementById('upload').innerHTML=mensaje;
}

function capa_verno( capa )
{
var layer;
layer= document.getElementById(capa);

if( layer.style.visibility=="hidden" )
{
layer.style.visibility="visible"; //visible - hidden
layer.style.display="block"; // none - block
}
else
{
layer.style.visibility="hidden"; //visible - hidden
layer.style.display="none"; // none - bloque
}
}
</script>
<?php
if( !strcmp($_GET["file"], "up") )
{
sleep(3);
echo '<script language="javascript" type="text/javascript">
window.top.window.resultadoUpload(\'1\', \''
$_FILES["archivo"]["name"]. '\');
</script>'
;
}
else
{
echo 'Archivos:<p>
<div id="upload"></div>
<form action="?file=up" method="POST" id="form" enctype="multipart/form-data" target="ajax_upload" 
onsubmit="resultadoUpload(\'0\', \'Subiendo \')">
<input type="file" name="archivo"><input type="submit" value="Subir" onclick="capa_verno(\'form\')">
</form>
<iframe name="ajax_upload" id="ajax_upload" style="border-style:none;"></iframe>'
;
}
?>
#115
Buenas...

Me he conseguido MAC OSX en version CD, ya que tengo una iMAC G3 que me regalaron, pero las imagenes de CD que me baje (al parecer eso son), vienen con extension: *.dmg.

  • macosx_tigre_cd1.dmg
  • macosx_tigre_cd2.dmg
  • macosx_tigre_cd3.dmg
  • macosx_tigre_cd4.dmg

    Pero como trabajo con GNU/Linux, no encuentro la forma de grabar esas imagenes, como grabarlas y como se instalaria ?

    Cabe mencionar que el iMAC G3 que tengo, tiene un disco duro de 40GB totalmente en blanco, vaya, sin sistema operativo.

    Saludos !
#116
Buenas.

Tengo un modem 2WIRE 2701HGT que me proporciono Infinitum de TELMEX, que por cierto ya les plantie mi problema a los de Soporte Tecnico y son todos unos ineptos...

Continuando...

Tambien poseo un Servidor en mi Red Local, el cual esta configurado con ip estatica 192.168.1.1, esta conectado al 2WIRE y reciviendo internet. El problema es que, tengo levantados algunos servicios como: FTP (21)y SSH (22) y al intentar configurar el firewall del 2WIRE no me aparece listado el Servidor, ya que el 2WIRE al parecer solo y unicamente muestra listados los equipos conectados o que se conectaron anteriormente, con una ip dinamica.

Asi que, no se como configurar el firewall debido a que no aparece listado el Servidor :S...

Alguna idea ?

Saludos !
#117
Que tal.

Uso Firefox 3.6.3 (la mas nueva) como navegador predeterminado, y en mi Podcast acabamos de sacar el primer Video-Podcast, el cual lo he incrustado con HTML5 debido a que el video dura como 45 minutos, por lo que empresas como Youtube, Vimeo, Daylimotion, etc... no me permiten almacenar tanto tiempo de video, es por eso que preferi almacenarlo en mi propio hosting y cargarlo gracias al HTML5 (etiquetas video).

Cuando accedi a la entrada donde se visualiza el video, me topo con que Firefox no me deja reproducirlo :(, y como configure una funcion para detectar el error por si un video no se reproduce, el error fue que el Navegador no tiene soporte para cargar el video.

Por otro lado, usando Chrome (alternativo) el video se ha reproducido perfectamente y no ha salido ninguna ventana de error :(...

La etiqueta video de HTML5 la impremento asi:

Código (php) [Seleccionar]
<?php
$mensaje
"la noticia bla bla bla bla [video width=640 height=480]carpeta/video.ogg[/video]

echo bbcode2web(
$mensaje);?>


El resultado es:
Código (html) [Seleccionar]
la noticia bla bla bla bla

<video width=640 height=480 controls autoplay type=video/ogg src=carpeta/video.ogg>El video no puede reproducirse</video>


Por otro lado, el video.ogg lo he codificado usando ffmpeg2theora.

Alguna idea?...

Dejo enlace a la entrada para que vean el video: http://jalapenospodcast.com/?hoja=tccc1qq

Saludos !
#118
En mi sistema personal a partir de la información de una factura (generada con el sistema mismo), creo la factura en formato de IMAGEN, pero quiero crear la misma factura pero en PDF, tenia la idea de que, aprovechando que la Factura la creo en formato de imagen (con estilos, fondos y todo) se podría meter una imagen dentro del PDF desde programación ?

Saludos !
#119
Buen dia.

Tengo un podcast en donde hace poquito cuando mi proveedor de hosting migro PHP4 a PHP5, note que mis podcast ya no se pueden descargar :(.

Si le doy click en descargar el podcast #X, me baja un archivo de 202bytes, oviamente no contiene audio, ya verifique si el error estaba en mi codigo PHP, pero no, porque funciona para archivo PDF, pero no cuando bajar MP3 :(.

Me levante el sniffer (wireshark), capture los paquetes en el momento de la descarga y cheque que la trama generada cuando el servidor HTTP me proporciona el audio MP3 (podcast), contiene este mensajito:

<br />
<b>Fatal error</b>:  Allowed memory size of 33554432 bytes exhausted (tried to allocate 77573423 bytes) in
<b>/home/content/d/i/a/diabliyo/html/podcast/descargar.php</b> on line <b>101</b><br />


Por otro lado buscando una solucion, lo que hice fue editar el archivophp5.ini (que me provee mi proveedor para configuraciones personales) y agrege la linea de: memory_limit = 128M. Refresque la pagina (F5), intente descargar nuevamente y aun sin poder bajarlo :(...

Les pego un pedazo de mi codigo sobre como se bajan los archivos con descargar.php:

Código (php) [Seleccionar]
<?php
# los enlaces se arman asi: descargar.php?id_file=ID

$consultahacemos consulta con el ID;
$bufmysql_fetch_array($consulta);

$put_url$buf["URL"]; # Ejemplo: uploads/podcast/
$put_file$buf["FILENAME"]; # Ejemplo: mipodcast_123.mp3

if( strstr$put_file".mp3" ) ) # si es mp3
$type_file'audio/mpeg';
else 
$type_file'application/octet-stream'# desconocido 

header'Content-Type: '$type_file);
header'Content-Disposition: attachment; filename='$put_file );
echo 
file_get_contents$put_url.$put_file );  #<---- Linea 101

header'Location: index.php' );
?>

#120
GNU/Linux / Extraer VOBs de DVD en linux ?
28 Mayo 2010, 15:43 PM
Que tal gente.

Tengo unos DVDs caseros (filmaciones de fiestas, etc...) y segun el software con el que fueron grabados y el software que uso en linux (script SSH llamado dvd2mpeg4.sh), algunos DVDs tiene 1 solo titulo o bien 2 o hasta 3 titulos... El audio es solo unico (el del ambiente) y no existen subtitulos.

Con algunos DVDs no he tenido problema en hacer el RIP (generacion de un UNICO VOB), pero en otros mas no he tenido exito en hacer el RIP....

El proceso de RIP que hago con el script dvd2mpeg4.sh es solamente de extraer los TITULOS (que son una sola filmacion) y me crea un unico VOB, el cual despues usando ffmpeg o mencoder lo convierto al formato que deseo.

Quisiera saber si existe alguna otra manera de extraer los titulos (una sola filmacion) de los DVDs que me faltan, crearme un unico VOB para despues pasarle el ffmpeg ???...

Saludos !
#121
No se si ha alguien le ha sucedido, pero tengo un sitio web donde ofresco mis servicios (http://www.sie-group.net) la cual una vez que levante el template y su contenido, lo colge y este funcionaba perfectamente.

Nadamas que hace 4 dias, simplemente ya no se mostraba el contenido, vaya, como si YO hubiese borrado el contenido :(, pero, verifique y NO, el contenido de las noticias estan bien y estan colgados.

Despues me baje el TEMPLATER, lo monte en mi Servidor Web Local y Efectivamente se muestra el contenido, pero en la Web (internet) ya no se muestra :s !.

Esto me saca de quisio, porque no hay errores de codigo ni nada, simplemente el contenido no se muestra cuando subo el template PHP, pero si lo tengo en mi Sevidor Local.. Si se muestra !

Alguna ayuda o comentario ?

Saludos !
#122
Utilizo Ubuntu y el dia de ayer me llego la actualizacion de la distribucion 9.10 a 10.04 LTS, asi que la aplique y todo BIEN. Note que despues de actualizarla, no tenia audio ni reproduccion de video youtube, TODO eso se arreglo re-instalando los paquetes.

Despues el dia de HOY cuando me disponia a continuar mi proyecto de software en PHP, note que cuando accedia a mi servidor local, no se desplegaba la index.php, me envia directamente la descarga del archivo en formato PHTML :S.

Les dejo la screenshot: http://i44.tinypic.com/2vmbm9c.png.

Despues verifique la configuracion del apache y esta correcta :S, asi que des-instale apache y php, despues volvi a instalarlos y deje nuevamente las cosas como estaban, pero persiste :(.

Modulo PHP habilitado
Código (bash) [Seleccionar]
shell# cd /etc/apache2/mods-enabled/
shell# ls -l |grep php
lrwxrwxrwx 1 root root 27 2010-05-05 10:48 php5.conf -> ../mods-available/php5.conf
lrwxrwxrwx 1 root root 27 2010-05-05 10:48 php5.load -> ../mods-available/php5.load


HAciendo CAT al modulo PHP
Código (bash) [Seleccionar]
shell# cat /etc/apache2/mods-available/php5.conf

<IfModule mod_php5.c>
   <FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
   </FilesMatch>
   <FilesMatch "\.php$">
SetHandler application/x-httpd-php
   </FilesMatch>
   <FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
   </FilesMatch>
   # To re-enable php in user directories comment the following lines
   # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
   # prevents .htaccess files from disabling it.
   #<IfModule mod_userdir.c>
    #   <Directory /home/*/public_html>
     #      php_admin_value engine Off
      # </Directory>
   #</IfModule>
</IfModule>


Reinicio y nada :(, el mismo problema...
Código (bash) [Seleccionar]
shell# /etc/init.d/apache2 restart

Saludos !.
#123
GNU/Linux / Servidor SMTP Local.
3 Mayo 2010, 22:48 PM
Buen dia.

Actualmente ofresco envio de correos a mis BDD, pero tengo limitaciones de envios por parte de mi hosting de pago :(, asi que, estoy interesado en montarme un servidor SMTP local, pero estuve pensando como hacer las cosas, de modo que a continuacion les planteare teoricamente como creo que debo hacer (o me imagino) y espero tener comentarios, criticas, recomendaciones y consejos para antes de empezar a realizar pruebas.

1- Asumiendo que los Bots de Correos son estrictos, los mails salientes de IPs publicas, pasan a blacklist o bien llegan directo a SPAM, asumo que en este caso debo comprar un IP Fija con mi ISP.
2- Asumiendo que los Bots de correos siempre verifican la flag Recived-From y debe corresponder con el dominio de un SMTP, asumo que debo comprar un dominio y apuntarlo a mi IP Fija.

Lo primero es comprar una IP Fija y un Dominio, despues apuntar los DNSs del Dominio hacia mi IP Fija.

Después montarme un servidor smtp (uso Gentoo Linux) y asi, teniendo el dominio apuntado y la IP Fija, podre recivir mails de mis clientes y sacar mails.

Mi gigantesca duda es que... Mi correo lo reciviran clientes como Hostmail, Gmail, Yahoo, etc... en Inbox ? o me mandaran directo a SPAM ?

Gracias por su atencion, esperare sus comentarios.. Saludos !
#124
PHP / Feed RSS con autentificacion
28 Abril 2010, 18:53 PM
Buen día.

Actualmente en mi sitio genero el RSS mediante mi propio script en PHP, el problema que me ha surgido es que he estandarizado un Feed especial para cada usuario, a partir de un solo script, en donde la idea es que el usuario acceda al Feed y pueda visualizar información personalizada y privada.

Comúnmente el Feed de mi sitio es: http://misitio.com/rss.php (todos tiene acceso a el), pero el Feed que estableceré para cada usuario particular seria: http://misitio.com/rss.php?id=ID_DEL_USUARIO, y quiero que ANTES de mostrarse la información, el usuario pueda autentificarse !.

Ya estuve haciendo pruebas mediante la creación de una session, pero, es ineficiente si por ejemplo intentas sincronizar tu movil (gadget), ya que el proceso de autentificacion por session requiere que usuario bien acceda al sitio o rellene el formulario típico (usuario y clave).

Creo que el proceso de autentificacion sin session PHP es posible, ya que en mi movil (android) el lector de feed del navegador Dolphin me permite establecer USUARIO y CLAVE antes de sincronizar un feed.

Mi idea vaga, pero sin probar.
Otra idea fue, implementar un *.htaccess, pero en este caso tendrua que asignarle un folder independiente y quede así: http://misitio.com/private/rss.php?id=ID_USUARIO. Pero no he realizado pruebas, igual y funciona.

Espero sus comentarios, Saludos !
#125
Buen día.

Tengo un CMS en donde proporciono un archivo rss.php para que los usuarios tengan el servicio de feed, pero tengo problemas para con las palabras centuadas :(.

Les proporciono un enlace a FeedValidator donde intento validar un web que tengo y se puede ver el problema.

Enlace: http://feedvalidator.org/check.cgi?url=http%3a%2f%2fpodcast.sie-group.net%2frss.php.

Implemento una funcion simple para facilitar todo el proceso de mostrar texto al usuario, y tambien la utilizo para el Feed, la funcion se llama proteger_cadena() y dentro utilizo tres funciones que son: strip_tags, htmlentities y utf8_encode. Pero el problema continua :(

Saludos !
#126
PHP / Como hacer ping a Bitacoras.com ?
10 Marzo 2010, 18:12 PM
Hola:

Tengo cuenta en Bitacoras.com y registrados 2 Feeds propios, pero no encuentro como hacer ping para que me indexen rapido (cuando cuelgue una noticia).

Antes (cuando bitacoras.com se caia mucho) para que me indexara solamente ejecutaba un javascript donde indicada la URL la pagina del ping, y automaticamente me hacia ping indexandome la noticia mas reciente (o conjunto de noticias), este script lo ejecutaba despues de colgar el post.

Pero ahora las cosas han cambiado en Bitacoras.com, han pasado ya unos 2 años que no entraba a Bitacoras.com y deje de actualizar mi antiguo blog, hace unas 2 semanas volvi a entrar a Bitacoras.com y me topo con que en mi perfil ya no existia mi antiguo blog, de tal modo que agregue mis 2 nuevos sitios, me aceptaron los sitios, pero no encuentro de que forma hacerle ping sin usar la opcion PING del sitio de bitacoras.com.

Quiero hacer el ping mas automatizado mediante javascript o PHP, pero la verdad no he deducido como :(....

Les palticare lo que he realizado para "intentar" hacer ping.

Accedi a la opcion PING (http://bitacoras.com/ping) y veo que nos re-direcciona a http://bitacoras.com/agregador/enviar, donde aparece un pequeno formulario, el cual invoca lo siguiente en html:
Código (html) [Seleccionar]
<form action="http://bitacoras.com/agregador/enviar" id="form-enviar" method="post">
<fieldset>
<legend>Indica la URL del blog o de la anotación</legend>
<input type="text" name="url" value="http://" class="text" style="width: 50%"  />
<select name="bitacora" style="width: 45%" id="bitacoras">
<option value="0">&#x2193; o elige una de tus bitácoras</option>
<option value="podcast.sie-group.net">http://podcast.sie-group.net</option>
<option value="lab.sie-group.net">http://lab.sie-group.net/</option>
</select>
</fieldset>

<input type="submit" name="enviar" value="Enviar" class="submit" id="boton-enviar"  />
<div id="loading" style="display: none;">
<img src="http://static2.bitacoras.com/images/icons/load.gif" alt="Cargando..."/>
El proceso puede tardar varios segundos, sé paciente...
</div>
<div>
<input type="hidden" name="token" value="1fa491a9f7ef9177fb3bedbc7bb77812" /></div>
</form>


Como vemos el formulario envia las variables a http://bitacoras.com/agregador/enviar mediante POST, en donde las variables son:
Variables:
- url --> debe contener la URL asi: http://sitio.com.
- bitacora --> debe contener la URL de la bitacora, de esta forma: sitio.com (omitimos http://).
- enviar --> debe contener: Enviar.
- token --> contiene un valor aleatorio generado por el sistema.


Asumiendo esto, y si hacemos una prueba manual, se asume que en un rango de tiempo no mayor a 1 minuto (los asumo, mas no me consta), el valor de la variable token debe estar disponible en el sistema para mandar el ping, asi que armo la URL manualmente y la pego al navegador, quedando dos formas de hacerlo:

// Forma 1
http://bitacoras.com/agregador/enviar/?url=http://misitio.com&bitacora=misitio.com&enviar=Enviar&token=1fa491a9f7ef9177fb3bedbc7bb77812

// Forma 2
http://bitacoras.com/agregador/enviar/url=http://misitio.com&bitacora=misitio.com&enviar=Enviar&token=1fa491a9f7ef9177fb3bedbc7bb77812


Y como resultado con ambas formas sale:

La URL que has indicado no es una URL válida. Comprueba que no contenga caracteres extraños y el dominio sea correcto...

Como ven ?, como se podria hacer manualmente ??...

Me interesa saber como hacerlo manualmente, de esta forma una vez sepa como, se puede hacer un codigo PHP que invoque sockets para hacer una consulta HTTP y obtener el valor de token, despues simplemente armamos la trama (URL) y hacemos la consulta completa.

Espero me haya explicado y me puedan ayudar !!

bye
#127
PHP / Ayuda: Marca de Agua Transparente !!
9 Marzo 2010, 15:11 PM
Hola:

Tengo un codigo que me permite insertarles una marca de agua a mis fotos, el problema es que mi imagen_marca_agua.png (mi logotipo) tiene color full, vaya, no es transparente... De modo que al colocarlo como marca de agua se denota mucho :( y me gustaria saber como poderle aplicar transparencia a la marca de agua.

Alguna idea ?

Este code hice para insertar la marca de agua en una imagen.

Código (php) [Seleccionar]
<?php
$mark
imagecreatefrompng("marca_de_agua.png" );
$imgimagecreatefrompng("uploads/imagen_subida.png");

# inserto marca de agua
imagecopy$img$mark, (imagesx($img)/2)-(imagesx($mark)/2), (imagesy($img)/2)-(imagesy($mark)/2), 00imagesx($mark), imagesy($mark) );

#escribo la imagen en una direccion especifica
imagepng($img"output/marcada.png"100 );

# limpio
imagedestroy($mark);
imagedestroy($img);
?>
#128
Hola:

Tengo un pequeno script en PHP que uso para enviar boletines de noticias, avisos, renocaviones, actualiciones, etc, etc... a los usuarios de mi Base de Datos, pero como son muchos y el SMTP me limita a solo 500 mails diarios, y ademas no me permite ejecutar un script PHP por mas de 1 minutos, tuve que modificar mi script para que me envie de 50 en 50, y asi alcanzar el limite de 500.

Pero curiosamente, algunas veces el script simplemente se frena y no me da ningun resultado, ya que cuando los 50 mails se envian correctamente, este me lo indica, pero a veces simplemente se queda sin mostrar mensaje :(.... Cabe mencionar que uso AJAX para el envio de los mails.

Las veces que falla, sucede una de estas dos situaciones:

1- No muestra resultado de satisfaccion y el script simplemente se frena.
2- Me muestra este error: "No recipient addresses found in header".

La funcion que uso para envio de mails.

Pastebind: http://pastebin.com/d369f3f37
Código (php) [Seleccionar]
<?php
function enviar_correo$to$asunto$modo$enlace$adjunto$from$log$link_custom )
{
$boundarymd5(time()); //valor boundary
$htmlalt_boundary$boundary"_htmlalt"//boundary suplementario
$subject=$asunto//titulo del correo

//cabeceras para enviar correo en formato HTML
$headers "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: multipart/mixed; boundary=\""$boundary"\"\r\n"//datos mixteados
$headers .= "From: "$from"\r\n"//correo del que lo envia

//incia cuerpo del mensaje que se visualiza
$cuerpo="--"$boundary"\r\n";
$cuerpo .= "Content-Type: multipart/alternative; boundary=\""$htmlalt_boundary"\"\r\n\r\n"//contenido alternativo: texto o html
$cuerpo .= "--"$htmlalt_boundary"\r\n";
$cuerpo .= "Content-Type: text/html; charset=iso-8859-1\r\n";
$cuerpo .= "Content-Transfer-Encoding: 8bits\r\n\r\n";

$cuerpo .= "Te escribimos para informarte que se a publicado una nueva noticia en el sitio <b>"$_SERVER['HTTP_HOST']. "</b>, ";
$cuerpo .= "gracias por preferir nuestra comunidad y esperamos que este nuevo <b>servicio informativo</b> te sea de ayuda para enterarte ";
$cuerpo .= "de una forma rapida y facil de las novedades de nuestro sitio web.";

$cuerpo .= "\r\n\r\n";
$cuerpo .= "--"$htmlalt_boundary"--\r\n\r\n"//fin cuerpo mensaje a mostrar

//archivos adjuntos
if( strcmp($adjunto"0") && strcmp($adjunto"vacio")  )
{
set_time_limit(600);
$archivo$adjunto;
$buf_typeobtener_extencion_stream_archivo($adjunto); //obtenemos tipo archivo

$fpfopen"uploads/".$archivo"r" ); //abrimos archivo
$buffread$fpfilesize("uploads/".$archivo) ); //leemos archivo completamente
fclose($fp); //cerramos apuntador;

$cuerpo .= "--"$boundary"\r\n";
$cuerpo .= "Content-Type: "$buf_type"; name=\""$archivo"\"\r\n"//envio directo de datos
$cuerpo .= "Content-Transfer-Encoding: base64\r\n";
$cuerpo .= "Content-Disposition: attachment; filename=\""$archivo"\"\r\n\r\n";
$cuerpo .= chunk_split(base64_encode($buf)). "\r\n\r\n";
}
$cuerpo .= "--"$boundary"--\r\n\r\n"

//funcion para enviar correo
set_time_limit(600); //establecemos tiempo de ejecucion scrtip a 10 minutos
if( mail($to$subject$cuerpo$headers) == FALSE )
return 0;
return 1;
}
?>

#129
Hola:

Tengo una imagen ya generada que llamo "mianuncio.jpeg", pero por cuestiones de visualizacion (dependiendo el width y height), la imagen quiero que se muestre segun sea, para esto cree varias dimenciones definidas, me cree un codigo PHP al cual le paso una variable y este invoca cerateimagefromjpeg(), en donde segun sea el width y height, elige la imagen:

Ejemplo: anuncios.php?size=160x600

En el codigo elige la imagen de 160x600, la mete a una variable, despues invoco la funcion imageceratefromjpeg( variable ), muestro la imagen, destruyo la variable y listo..

El Problema es que la imagen que se genera con imagecreatefromjpeg() tiene una calidad baja :S... Y la original (que es del mismo tamano) tiene una mejor calidad.

Código (php) [Seleccionar]
header('Content-Type: image/jpeg');

$sz= proteger_cadena($_GET["size"]);

if( !strcmp($sz, "160x600") )
$sz= "anuncio_160x600.jpg";
else if( !strcmp($sz, "468x60") )
$sz= "anuncio_468x60.jpg";
else if( !strcmp($sz, "120x600") )
$sz= "anuncio_120x600.jpg";
else
$sz= "anuncio_120x600.jpg";

$img= imagecreatefromjpeg($sz);

imagejpeg($img);
imagedestroy($img);
#130
PHP / Ejecutar script javascript en un mail ?
27 Diciembre 2009, 07:08 AM
Hola:

Tengo un sistema de envio de correos (mailing) que he programado, tengo la necesidad de monitorear mis mails, de forma que quiero detectar los despliegues que ha tenido un mail (apertura del mail) y clicks que reciva dicho mail.

Por ejemplo: envio un mail que tiene una IMAGEN en el contenido del mail, dicha imagen tambien posee un linka <a> hacia una web, si al usuario le interesa saber mas de lo que dice la imagen, pues de click sobre la imagen.

MI IDEA para monitorear (contar) las veces que un mail se abre/despliega y alguien da click, es que dentro del cuerpo del mail se incruste un script javascript, en donde dicho javascript envia una variable hacia una archivo PHP que tengo en mi servidor, dicha variable contiene un NUMERO, dicho numero oviamente esta registrado en mi Base de Datos, asi que, cuando el archivo PHP recive el ID, lo comprueba y si existe entonces toma en cuenta que se esta desplegando el mail, asi que actualizo mi base de datos indicando un incremento para saber que el mail fue desplegado.

Ya hice mis primeras pruebas enviando un mail a mi propio correo, y todo se envia bien, es mas, cuando veo el codigo HTML del correo, puedo ver que el script javascript esta hay... Pero en mi Base de Datos no se observa incremento :S....

Sera que el sistema de correo no permite la ejecucion del script javascrip ???....

Alguna idea ??

NOTA: si accedo directamente al archivo PHP indicandole "manualmente" el ID del mail, este realiza la actualizacion en la base de datos, pero no se produce esto cuando un mail se despliega en el correo :(.

bye
#131
PHP / Problema con funcion dentro de BBCode.
7 Diciembre 2009, 21:39 PM
Hola:

Tengo implementado en mi sistema una etiqueta BBCode personal, la cual llamo asi: [PLAY_MP3]ID[/PLAY_MP3], en donde el ID es un identificador en mi base de datos dentro de la tabla de archivos, en donde la idea es consultar dicho ID para posteriormente sacar la direccion completa donde se encuentra el archivo.mp3. Asi mismo, en el BBCode establezco un reproductor para que el archivo.mp3 pueda ser escuchado.

El Problema es que al llamar a la funcion mp3_file( $id ). esta no me regresa el archivo MP3 :(, sino que, solamente me retorna un 0 :(... Ya le estuve buscando y no entiendo porque :(.... Les dejo codigo:

BBcode Funcion
Esta funcion invoca el tag de [PLAY_MP3]ID[/PLAY_MP3] y a su vez llama a la funcion mp3_file( $id ).
Código (php) [Seleccionar]
<?php
function msg2msgtags$mensaje )
{
   
$cad_buscar= array(
   
'/\[play_mp3\](.*?)\[\/play_mp3\]/is'
   
);

$cad_remplazo= array(
'<object id="audioplayer_1" data="admin/addons/player.swf" style="outline-color: -moz-use-text-color; outline-style: none; outline-width: medium; visibility: visible;" name="audioplayer_1" type="application/x-shockwave-flash" height="24" width="450">
<param value="#FFFFFF" name="bgcolor">
<param value="transparent" name="wmode">
<param value="false" name="menu">
<param value="animation=yes&encode=no&initialvolume=60&remaining=yes&noinfo=yes&buffer=5&checkpolicy=no&rtl=no&bg=bbbbbb&text=333333&leftbg=CCCCCC&lefticon=333333&volslider=666666&voltrack=FFFFFF&rightbg=B4B4B4&rightbghover=999999&righticon=333333&righticonhover=FFFFFF&track=FFFFFF&loader=3c78a7&border=CCCCCC&tracker=DDDDDD&skip=666666&soundFile=href="http://www.podtrac.com/pts/redirect.mp3/http://podcast.sie-group.net/upload/noticias/'
mp3_file('$1'). '&playerID=audioplayer_1" name="flashvars">
</object>
<script type="text/&#8237;&#8236;&#8237;&#8236;&#8237;&#8236;&#8237;&#8236;javascript">AudioPlayer.embed("audioplayer_1", {soundFile:"http://www.podtrac.com/pts/redirect.mp3/http://podcast.sie-group.net/upload/noticias/'
mp3_file'$1' ). '"});</script>'
                
);

$mensajehtmlentities($mensajeENT_QUOTES);
$mensajepreg_replace$cad_buscar$cad_remplazo$mensaje );
$mensajehtml_entity_decode($mensajeENT_QUOTES);

return $mensaje;
}
?>


Funcion mp3_file()
Esta funcion recive un ID el cual toma y consulta en la base de datos de ARCHIVOS para obtener el campo de ARCHIVOS_NOMBRE, que tiene el nombre del mp3 a reproducir (retornar).
Código (php) [Seleccionar]
function mp3_file( $id )
{
$mp3= consultar_datos_general("ARCHIVOS", "ID='". $id. "'", "archivos_nombre");
// echo '['. $id. ']';  # la habilito para ver si efectivamente existe un id (o se envia), y pues SI
return $mp3;
}


Funcion consultar_datos_general()
Basicamente es una funcion simple y sencilla para minimizar escribir el codigo mysql_query repetidamente :S...
Código (php) [Seleccionar]
//funcion para consultar datos especificos en la BDD de CUALQUIERA
function consultar_datos_general( $bdt, $bdt_where, $var )
{
$cons= consultar_con( $bdt, $bdt_where ); //funcion que invoca consulta (mysql_query()).
$data= mysql_num_rows($cons);
if( $data )
{
$tmp= mysql_fetch_array($cons);
unset($data);
limpiar($cons);  //funcion que ejecuta mysql_free_result()
return $tmp[strtoupper($var)];
}
unset($data);
limpiar($cons); //funcion que ejecuta mysql_free_result()
return 0;
}
#132
Hola:

Por lo general cuando un juego en formato SWF que este peusto en paginas de juegos es muy bueno, siempre me lo bajo para tenerlo presente en la memoria usb y matar el tiempo..

Pero hoy me tope con un juego muuuuy bueno de Poker que me encanto, pero no consigo bajarme el SWF (flash), porque de alguna manera cifra o proteje el acceso y nombre dle swf :(, ya he realizado varias pruebas pero no he intentado hacerme del SWF :(

Aqui esta el codigo HTML y JS limpios que cargan el juego abriendo la hoja HTML desde su PC...

OJO: dejo link a pastebind del codigo completo por si se dificulta la visualizacion en el foro.

Pastebind: http://pastebin.com/f26db2d46

Html Code
Código (html4strict) [Seleccionar]
<html>
<head>

<title>Governor of Poker - Jugar al Governor of Poker - JuegosDiarios.com</title>
</head>

<body>

<script src="script.js"></script>
<script>
code__("%30%4B%42%46%41%43%58%24%43%53%62%64%3B%37%32%4F%47%64%31%23%73%7B%62%5F%6B%47%5F%6A%60%34%3F%36%43%4F%69%43%53%62%64%39%37%32%4F%47%27%2C%67%6C%4F%5B%66%68%30%33%3E%47%43%7F%77%43%53%62%64%3B%37%32%4F%47%64%31%26%63%60%77%43%53%62%64%3B%37%32%4F%47%64%36%40%32%3B%47%44%4E%32%45%21%45%45%3A%40%2D%3D%35%63%6A%29%39%3A%46%38%21%30%34%38%31%35%3F%31%34%3C%34%30%3C%26%20%6F%47%5F%6A%60%36%3F%36%43%4F%60%43%53%62%64%39%37%32%4F%47%62%4F%5B%66%68%30%33%3E%47%43%7F%47%5F%6A%60%35%3F%36%43%4F%39%22%64%70%74%7C%3E%2F%23%60%43%53%62%64%3A%37%32%4F%47%77%62%68%43%53%62%64%3A%37%32%4F%47%43%53%62%64%38%37%32%4F%47%64%22%69%43%53%62%64%38%37%32%4F%47%63%7E%47%5F%6A%60%36%3F%36%43%4F%69%43%53%62%64%39%37%32%4F%47%64%4F%5B%66%68%33%33%3E%47%43%4F%5B%66%68%30%33%3E%47%43%22%67%43%53%62%64%3A%37%32%4F%47%6D%23%74%43%53%62%64%34%37%32%4F%47%62%23%77%68%4F%5B%66%68%32%33%3E%47%43%6F%6F%77%4F%5B%66%68%30%33%3E%47%43%7A%47%5F%6A%60%35%3F%36%43%4F%2B%63%4F%5B%66%68%30%33%3E%47%43%6E%77%2F%6A%68%43%53%62%64%38%37%32%4F%47%73%64%2B%73%7B%62%6C%4F%5B%66%68%30%33%3E%47%43%7F%6C%2E%6F%47%5F%6A%60%34%3F%36%43%4F%66%23%7A%47%5F%6A%60%35%3F%36%43%4F%76%73%4F%5B%66%68%33%33%3E%47%43%4F%5B%66%68%32%33%3E%47%43%62%39%39%20%34%2C%3C%28%30%2E%24%49%48%39%72%4F%5B%66%68%30%33%3E%47%43%7C%47%5F%6A%60%37%3F%36%43%4F%47%5F%6A%60%35%3F%36%43%4F%76%34%2C%53%49%48%50%48%31%32%34%3C%24%48%49%4D%47%44%50%3D%38%3C%30%32%38%50%4D%56%41%41%24%4E%4D%49%45%31%69%43%53%62%64%3A%37%32%4F%47%76%4F%5B%66%68%33%33%3E%47%43%4F%5B%66%68%31%33%3E%47%43%2C%52%41%40%51%45%31%26%68%78%70%70%36%2B%2F%7B%73%77%22%6E%43%53%62%64%34%37%32%4F%47%43%53%62%64%39%37%32%4F%47%67%4F%5B%66%68%32%33%3E%47%43%7F%60%43%53%62%64%3B%37%32%4F%47%43%53%62%64%38%37%32%4F%47%72%4F%5B%66%68%33%33%3E%47%43%4F%5B%66%68%32%33%3E%47%43%7F%2A%63%4F%5B%66%68%32%33%3E%47%43%61%2B%6A%4F%5B%66%68%3C%33%3E%47%43%4F%5B%66%68%31%33%3E%47%43%6B%47%5F%6A%60%36%3F%36%43%4F%77%2F%68%47%5F%6A%60%34%3F%36%43%4F%47%5F%6A%60%37%3F%36%43%4F%68%79%6A%76%43%53%62%64%39%37%32%4F%47%43%53%62%64%39%37%32%4F%47%67%4F%5B%66%68%30%33%3E%47%43%61%47%5F%6A%60%35%3F%36%43%4F%77%2D%4B%47%5F%6A%60%36%3F%36%43%4F%72%43%53%62%64%39%37%32%4F%47%72%62%47%5F%6A%60%36%3F%36%43%4F%76%43%53%62%64%3A%37%32%4F%47%66%5C%47%5F%6A%60%36%3F%36%43%4F%6F%43%53%62%64%39%37%32%4F%47%72%22%77%77%6A%3B%63%4F%5B%66%68%32%33%3E%47%43%68%47%5F%6A%60%37%3F%36%43%4F%63%43%53%62%64%3A%37%32%4F%47%3D%6A%67%73%74%6C%6C%3A%24%22%32%38%50%4D%56%41%41%24%4E%4D%49%45%31%75%43%53%62%64%34%37%32%4F%47%43%53%62%64%38%37%32%4F%47%6C%4F%5B%66%68%33%33%3E%47%43%78%7D%20%5A%45%4C%59%41%3D%64%47%5F%6A%60%37%3F%36%43%4F%63%68%32%38%45%41%46%45%48%24%6E%4F%5B%66%68%30%33%3E%47%43%61%47%5F%6A%60%35%3F%36%43%4F%39%27%7F%73%66%53%63%43%53%62%64%38%37%32%4F%47%6D%4F%5B%66%68%31%33%3E%47%43%2B%24%73%7E%67%3D%2E%6C%74%78%74%3A%23%2B%77%7B%73%2E%66%47%5F%6A%60%38%3F%36%43%4F%47%5F%6A%60%35%3F%36%43%4F%63%43%53%62%64%3A%37%32%4F%47%73%68%47%5F%6A%60%37%3F%36%43%4F%47%5F%6A%60%34%3F%36%43%4F%76%43%53%62%64%3B%37%32%4F%47%43%53%62%64%3A%37%32%4F%47%73%22%67%43%53%62%64%3A%37%32%4F%47%6D%23%6E%43%53%62%64%34%37%32%4F%47%43%53%62%64%39%37%32%4F%47%67%4F%5B%66%68%32%33%3E%47%43%7F%2B%64%4F%5B%66%68%30%33%3E%47%43%4F%5B%66%68%33%33%3E%47%43%60%7D%66%7E%47%5F%6A%60%35%3F%36%43%4F%47%5F%6A%60%35%3F%36%43%4F%63%43%53%62%64%38%37%32%4F%47%6D%4F%5B%66%68%31%33%3E%47%43%7F%29%47%4F%5B%66%68%32%33%3E%47%43%7A%47%5F%6A%60%35%3F%36%43%4F%76%6E%4F%5B%66%68%32%33%3E%47%43%7E%47%5F%6A%60%36%3F%36%43%4F%62%50%4F%5B%66%68%32%33%3E%47%43%67%47%5F%6A%60%35%3F%36%43%4F%76%2E%7F%73%66%33%67%43%53%62%64%3A%37%32%4F%47%64%4F%5B%66%68%33%33%3E%47%43%6B%47%5F%6A%60%36%3F%36%43%4F%39%66%6F%77%78%64%68%36%2C%26%20%61%47%5F%6A%60%35%3F%36%43%4F%6A%43%53%62%64%34%37%32%4F%47%3D%6A%47%5F%6A%60%34%3F%36%43%4F%68%73%4F%5B%66%68%31%33%3E%47%43%2C%75%43%53%62%64%34%37%32%4F%47%43%53%62%64%38%37%32%4F%47%6C%4F%5B%66%68%33%33%3E%47%43%78%7D%3D%64%47%5F%6A%60%37%3F%36%43%4F%63%68%2C%66%67%6F%47%5F%6A%60%36%3F%36%43%4F%68%43%53%62%64%3A%37%32%4F%47%72%31%27%30%3C%34%30%3C%34%20%5B%4D%44%58%4C%3D%3A%30%30%2C%4C%45%45%43%48%58%39%34%34%34%20%58%5D%50%49%39%22%4F%5B%66%68%30%33%3E%47%43%7C%74%6C%4F%5B%66%68%33%33%3E%47%43%6F%47%5F%6A%60%34%3F%36%43%4F%70%43%53%62%64%3B%37%32%4F%47%43%53%62%64%3A%37%32%4F%47%6E%23%7C%2D%7F%6C%43%53%62%64%3A%37%32%4F%47%63%67%73%43%53%62%64%38%37%32%4F%47%76%4F%5B%66%68%31%33%3E%47%43%21%62%6C%4F%5B%66%68%30%33%3E%47%43%7F%6C%22%2C%54%4C%59%43%49%42%57%50%4D%43%45%31%26%68%78%70%70%36%2B%2F%7B%73%77%22%69%43%53%62%64%38%37%32%4F%47%63%7E%47%5F%6A%60%36%3F%36%43%4F%69%43%53%62%64%39%37%32%4F%47%64%4F%5B%66%68%33%33%3E%47%43%4F%5B%66%68%30%33%3E%47%43%22%67%43%53%62%64%3A%37%32%4F%47%6D%23%77%68%4F%5B%66%68%32%33%3E%47%43%6F%6F%77%4F%5B%66%68%30%33%3E%47%43%7A%47%5F%6A%60%35%3F%36%43%4F%2B%64%4F%5B%66%68%32%33%3E%47%43%7B%6A%6C%4F%5B%66%68%32%33%3E%47%43%4F%5B%66%68%30%33%3E%47%43%68%2B%43%53%62%64%3B%37%32%4F%47%6E%68%47%5F%6A%60%35%3F%36%43%4F%7C%2E%6F%63%43%53%62%64%3B%37%32%4F%47%3F%5C%35%5F%5C%76%43%53%62%64%3A%37%32%4F%47%64%53%52%43%53%62%64%39%37%32%4F%47%72%7F%47%5F%6A%60%37%3F%36%43%4F%47%5F%6A%60%36%3F%36%43%4F%6A%3D%5F%6C%43%53%62%64%3A%37%32%4F%47%63%67%73%43%53%62%64%38%37%32%4F%47%76%4F%5B%66%68%31%33%3E%47%43%4A%68%43%53%62%64%38%37%32%4F%47%73%64%26%3E%30%2B%45%41%46%45%48%3A%3C%23%4B%42%46%41%43%58%3A")
</script>
</body>
</html>


Script JS
Código (‭‬‭‬‭‬javascript) [Seleccionar]
function _decrypt(s)
{
var key=6;
var res="";

for(i=0;i<s.length;i++)
res+=String.fromCharCode(key^s.charCodeAt(i));

alert( 'Dato: '+res );
return res;
}

eval(_decrypt(unescape("%60sheroih%26bcet%7Fvr.u/%7Dcpgj.Ybcet%7Fvr.%21var%20key%20%3D%20%5B10%2C%2012%2C%204%5D%3B%21//%3Dpgt%26m%3B7%3Dpgt%26Ym%3B6%3Dpgt%26tcu%3B%21%21%3D%60it.o%3B6%3Do%3Au%28jcharn%3Do--/%7DYm%3Bmc%7F%5Dm--%5B%3Do%60.m8mc%7F%28jcharn/m%3B7%3Dtcu-%3BUrtoha%28%60tikEngtEibc.YmXu%28engtEibcGr.o//%3D%7Btcrsth%26tcu%3D%7B")));
eval(decrypt(unescape("%2Cbubgtekn%2C%60g%7F%5B_S%5B_S%5B%28%7F-%7Bhkcyiebp.%7Bvixa%28%7Ev%297y")));
eval(decrypt(unescape("%2C%24fyjcxmob%24dkw_S%5B_S%2Cs%25%7Fezel%24%60eovy%7Cp%28yje%7Fga%7Ca%28+%217Ir%25%3E41%2964%7F%212%3Ere%293Cdeom%2124%212%3FC_f%216%3C0%25%3FB6OK+k%212%3C%2128%212%3Bi%25%3E7%25%3E%3D7%2920k%217J%215N%5BS%291BSW%259F%25%3E%3C%25%3BB-%297B+-%29%25%3F%7D")));
eval(decrypt(unescape("%2C%24%20jqnopicj%20hcsS%5B_S%2Cs%25%7Fdkw_S%5B_S%2Cs%22ve%7Chaoa%28%23G_j%605%3F6CO+g%20%24%27i%23%29%25%3F%7D")));
eval(decrypt(unescape("%23.*%23bubgtekn%2C%60g%7F%5B_S%2Cs%25%7Fdkw_S%5B_%24w.%7Eap%60eci%2C/O%5Bfh23%3EGC%23c%2C%2C%23o+-%297y")));
eval(decrypt(unescape("%2C+*%26+fyjcxmob%24dkw_S%2Cs%25%7Fdkw_S%5B%28%7F*ritlmge%24+CSbd%3B72OG/k%28%20+m%27%25-%3Bq")));
eval(decrypt(unescape("%23.%20%26+%20jqnopicj%20hcsS%2Cs%25%7Fdkw_S%2Cs%22ve%7Chaoa%28%23G_j%608%3F6CO+g%20%24%27y%23%29%25%3F%7D")));
eval(decrypt(unescape("%2C+*%2C./%2Cbubgtekn%2C%60g%7F%2Cs%25%7Fezel%24%60eovy%7Cp%28yje%7Fga%7Ca%28+lc%7FW%25%3EGunescape%212Ow%25%3E1-%297B+-%29%25%3F%7D")));

function code__(s)
{
dgs(decrypt(unescape(s)));
}
#133
Actualice Link --- Julio 2013

Hola:

Les comparto mi manual de Instalacion de Gentoo Paso a Paso, basicamente es una guia practica rapida y sencilla de como instalar Gentoo desde Ceros, incluye soporte para instalarse Gentoo mediante CD o USB, descarga de paquetes y tips para Arreglar Dependencias o Enlaces Rotos (automaticamente), mantener tu Gentoo al dia, actualizado y seguro.

>> Descargar Manual Aqui <<
#134
Hola:

Actulamente codifique una pequena aplicacion que ofrece un servicio pequeno para empresas pequenas el cual consta permite llevar un control pequeno de notas, facturas, banca, etc.. basicamente se el usuario mete la informacion y el sistema la mantiene, en base a la informacion hago estadisticas y puedes tener el control de tus entradas y salidas, en si els istema funciona perfectamente, el problema ahora es el Sistema de Pago :(, ya que quiero implementar un apartado para que el cliente peuda hacer donaciones mediante Tarjeta de Creadito/Debido y Paypal.

Sobre PAYPAL pues ya he encontrado en el sitio web de paypal.com sobre el API y varios ejemplos de codigo en PHP, en pocas palabras NO me interesa mucho sobre PAYPAL, sino que, mi duda es sobre TARJETAS DE CREDITO/DEBIDO, me gustaria que alguien me aconseje sobre algun manual, explicaicon o ejemplos de codigo para guiarme un poco sobre como esta el proceso para pagos con tarjeta de credito/debido sobre PHP.

Por otro lado, en el servidor donde subi mi software que ya les mencione, tambien adquiri un Certificado SSL, ya que he visto que en muchos sitios donde hacen compras/ventas, al momento de pagar con la tarjeta de credito/debito se usa el certificado para proteger la informacion.

Gracias por su ayuda !!

bye bye
#135
Tengo una aplicacion en donde cierta parte del sistema se encarga de editar codigos fuente de archivos PHP subidos por el usuario. La idea del sistema es que el usuario pueda subir su archivo PHP y este pueda ser interpretado por el sistema, oviamente las cuestiones de seguridad estaran en manos del usuario ya que si el script php que suba el usuario contiene bugs, ya seria responsabilidad del usuario miso, porteriormente, si el usuario desea EDITAR su archivo ya subido en el sistema, realize una formita donde muestra el contenido del archivo PHP (textarea) y el usuario puede editarlo, el problema es que despues de que edita o hace las modificaciones y pulsa el boton GUARDAR, el nuevo archivo PHP (con el mismo nombre) es guardado con exito pero las lineas de codigo que presentan una comilla doble ", tienen antepuesto un slash o barra / y oviamente el archivo ya no puede ser mostrado por el sistema web debido a que ese slash o barra no permite ser interpretado :(

Para interpretar los script PHP del usuario, utilizo solamente: include( "folder/del/usuario/scripts/archivo.php" );

Aqui les dejo un poco de codigo.

Funciones
Código (php) [Seleccionar]

<?php
function proteger_cadena$cadena )
{
return htmlentities($cadenaENT_QUOTES);
}

function 
desproteger_cadena_src$cadena )
{
return html_entity_decode($cadenaENT_QUOTES);
}
?>


Formulario
Código (php) [Seleccionar]
<?php
//primero leemos el ID de la noticia que fue colgada como SCRIPT, despues se consultan los datos como: url del script y nombre
//despues se hace la apertura con FOPEN() en modo lenctura y se muestra en el formulario

$xconsultar_con"NOTICIAS""ID='"$ctl"'" ); //consultamos noticia
$buf_xmysql_fetch_array($x); //extraemos datos
$file_descfopen"../".$buf_x["ARCHIVOS_URL"].$buf_x["ARCHIVOS_NOMBRE"], "r" ); //abrimos archivo PHP
$msgfread$file_descfilesize("../".$buf_x["ARCHIVOS_URL"].$buf_x["ARCHIVOS_NOMBRE"]) ); //leemos todo el archivo a un buffer
fclose($file_desc); //cerramos archivo

//parte del formulario que muestra el contenido del script paa su edicion
echo "<td>Contenido:</td><tr>";
echo 
"<td><textarea name=\"mensaje_noticia\" class=\"estilo_03\">";
echo 
proteger_cadena($msg); //protegemos cadena
echo "</textarea></td><tr>";

echo 
"<td align=\"center\"><input type=\"submit\" class=\"boton_01\" value=\"Modificar Scriptin\"></td>";
?>


Sobre-escribiendo SCRIPT acutal por nueva modificacion.
Código (php) [Seleccionar]
<?php
$path
"../uploads/noticias/"//direccion de la carpeta
$file_editconsultar_datos_general"NOTICIAS""ID='"proteger_cadena($_GET["id_src"]). "'""archivos_nombre" ); //obtenemos NOMBRE del archivo PHP
$msgdesproteger_cadena_src($_POST["mensaje_noticia"]); //eliminamos las tags que estorben

//creamos arreglo para guardar informaion del cambio
$valores= array(
"id"=>"'"$_GET["id_src"]. "'",
"autor_mod"=>"'"$_SESSION["log_usr"]. "'",
"titulo"=>"'"proteger_cadena($_POST["titulo_noticia"]). "'",
"fecha_mod"=>"'"time(). "'" );

//escribimos los datos nuevos haciando la aprtura del mismo archivo existente PHP, pero truncado a
//0 para despues escribirle el buffer modifiado
$src_filefopen$path.$file_edit"w" ); //apertura de archivo
fwrite$src_file$msgstrlen($msg) ); //escritura de archivo
fclose($src_file); //cierre de archivo

unset($msg);

if( 
actualizar_bdd"NOTICIAS"$valores )==)
echo "Error en la Insercion de los Datos.";
else
echo "Datos Agregados con Exito.";
?>