Mostrar Mensajes

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


Mensajes - FeDe

Páginas: [1] 2 3 ... 30
1
PHP / Re:comparar 2 string para ver si son anagramas
« en: 28 de Noviembre de 2015, 02:37:41 am »
Hola,

Me he tomado la libertad de hacer un pequeño script de 0 y está preparado para trabajar desde PHP CLI con los dos primeros parametros pasado por argumento $argv[1] y $argv[2] (obviamos $argv[0] que es el nombre del fichero). Les he dado el valor $first y $second (como primera y segunda palabra) para que puedas modificarlo fácilmente a un $_POST.
Es bastante más simple de lo que estabas planteando, te resumo un poco lo que realiza este pequeño script:

  • Primero:
    Comprueba si la longitud de los strings son lo mismo
  • Segundo:
    Convierte las cadenas en array (cada letra es un valor).
  • Tercero:
    Hacemos un sort para ordenar alfabéticamente ambos arrays.
  • Cuarto:
    Recorremos todos los valores del primer array y comparamos con el segundo array llamando a su valor correspondiente mediante el key del primer array. (al haber comprobado la longitud del ambas strings siempre vamos a tener los mismos valores para el primer array como para el segundo). Para cada valor del array recorrido comprobamos si las letras del primer y segundo array son diferentes, si es así retornamos falso sino, continuamos con el siguiente valor. Al finalizar devolvemos true, así, en caso de que no haya sido falso devolverá verdadero.
  • Quinto:
    Mostramos al usuario un mensaje tras haber hecho la comprobación.

Aquí el código:

<?php

	
$first $argv[1];
	
$second $argv[2];

	
function 
str2array($str) {
	
	
$tmp = [];
	
	
for(
$i=0;$i<strlen($str);$i++) {
	
	
	
$tmp[] = $str[$i];
	
	
}
	
	
return 
$tmp;
	
}
	
function 
compareArrayValues($origin$tocompare) {
	
	
foreach(
$origin as $k=>$v) {
	
	
	
$v2 $tocompare[$k];
	
	
	
if(
$v != $v2) return false;
	
	
}
	
	
return 
true;

	
}

	
if(
strlen($first) != strlen($second)) {
	
	
throw new 
ErrorException("Las palabras no coinciden en longitud.");
	
} else {
	
	

	
	
$s_first str2array($first);
	
	
sort($s_first);
	
	
$s_second str2array($second);
	
	
sort($s_second);

	
	
if(
compareArrayValues($s_first,$s_second)) {
	
	
	
echo 
"Sí, son anagramas.";
	
	
} else echo 
"No, no son anagramas";

	
}
	
echo 
PHP_EOL;

?>

2
PHP / Re:[AYUDA] Que diferencia hay entre estas formas de mostrar un echo()?
« en: 12 de Enero de 2012, 17:10:22 pm »
Mira por lo general casi no hay diferencia o amenos para mi que aun estudio no x'dddddddd !
yo cuando abro un echo o cualquier cosa que requiera las " o ' si habro con " le sigo con ellas ejemplo:

echo (" contenido id="1" ");

y cuando recojo alguna variable, session o X cosa la tomo haci:

echo (" contenido id=" '.$id.' " ");

por que si tomo todo con " o todo con ' me dara errores en el codigo, realmente supongo que es por eso.

ya todo resumido: lo que hacen las comillas dobles ( " ) es encerrar el texto plano y las comillas simples ( ' ) remplazar por variables

Perdón por el doble post, pero no puedo editar (ando con prisa)...

Te has equivocado totalmente, ese código daría error ^^

Ambas comillas permiten el agrupamiento de strings, y ambas permiten concatenar diferentes cadenas ya sean strings, integers o variables.

Lo única diferencia es la que dije en el POST anterior.

y si abres con dobles, cierras con dobles y luego no pongas '; si quieres poner comilla simple después debería ser:

echo "String 1 " . &#39;Concatenando con comillas simples como String 2&#39; . "Volvemos a comillas dobles con la string 3";

Jejeje!
Un abrazo ;D

3
PHP / Re:[AYUDA] Que diferencia hay entre estas formas de mostrar un echo()?
« en: 12 de Enero de 2012, 17:06:49 pm »
Buenas,

En este caso la diferencia no es ninguna, aunque la más correcta es la forma 2 concatenando la variable de tal forma que no pertenezca el string.

Si en vez de comillas dobles hubieses puesto comillas simples ( ' ) la diferencia está en que si lo pusieras de la primera forma te devolvería:

Citar
Ahora mostraré el típico Hola Mundo: $hola

y de la Forma 2 te devolvería:

Citar
Ahora mostraré el típico Hola Mundo: Hola Mundo!

Esas serían las diferencias jeje ^^

4
PHP / Re:Como poner que no se puedan publicar 2 veces la misma web en un top??
« en: 11 de Enero de 2012, 22:51:02 pm »
Yo usará mejor un contador de caracteres usando la función strlen por ejemplo:

function longitud($variable,$min=5)if(strlen($variable)>$min) return true; else return false; }

Por ejemplo! ^^

5
PHP / Re:[Ayuda] Esperar 5 minutos despues de comentar
« en: 11 de Enero de 2012, 17:47:58 pm »
Buenas,

Lo primero debes añadir en la tabla "comentarios" un valor llamado time_lastmsg por ejemplo, le voy a llamar así.
Y lo que vamos a hacer es comprobar el último comentario de la IP y sacaremos el TIME ; si la diferencia de time actual menos la de time, supera los 300 segundos (5 minutos por 60 segundos = 300 segundos) entonces le dejamos postear, sino le mandamos error.

<?php
require_once(&#39;funciones.php&#39;);


//Recibir
$contenido strip_tags($_POST[&#39;contenido&#39;]);
$nombre strip_tags($_POST[&#39;nombre&#39;]);
$ip $_SERVER[&#39;REMOTE_ADDR&#39;];

if($time = @mysql_result(mysql_query("SELECT time_lastmsg FROM comentarios WHERE ip=&#39;".$ip."&#39;"),0)) {
	
if(((
$now=time())-$time)>300) {
	
	
if(@
mysql_query("INSERT INTO comentarios (contenido,nombre,ip,time_lastmsg) VALUES (&#39;".$contenido."&#39;,&#39;".$nombre."&#39;,&#39;".$ip."&#39;,&#39;".$now."&#39;)")===true) echo &#39;<script>window.location="index.php"</script>&#39;; else echo &#39;No se pudo agregar comentario.<br />&#39;;
	
} else echo 
"Solo se permite un mensaje cada 5 minutos.";
        } else die(
"<b>Error MySQL:</b> ".mysql_error());

?>


Quedaría algo así, he optimizado un pelín el código con tu permiso jejeje ^^

Un abrazo :D

6
PHP / Re:Porque en un Sistema de Modulacion..
« en: 11 de Enero de 2012, 17:33:46 pm »
El Servlet es un "archivo" donde se almacenan todos los datos que se transfieren, es un método muy seguro ya que va a parte de la web.
Te recomiendo que le eches un vistazo: http://es.wikipedia.org/wiki/Java_Servlet

Con lo de vulnerabilidad, es un metodo mucho mas seguro, porque todo lo que se refiere a scripts van a parte, por lo que tu una página en php si que la podrías hackear, en cambio una en html no.



Pero en el momento que a JSP le metas un código malintencionado y te lo interprete en HTML, ya está la página "hackeada" como dices tú.
Te aconsejo que mires lo que es XSS y SQLi ; porque JSP también lo tiene, al igual que ASP y PHP ^^

Un abrazo :)

PD: Todas las páginas se devuelven en HTML, como bien ha dicho Carlos, el servidor se encarga de interpretar el código y devolverlo en HTML que es el "único" lenguaje que interpretan. Y eso pasa tanto en JSP como en ASP como en PHP.

7
Proyectos y búsqueda de equipos / Re:[Red Social] GreeBool
« en: 07 de Agosto de 2011, 09:48:34 am »
Como dice physlet,

Para una red social actual se queda muuuuuuuuuuuuuuy corta; JavaScript? Solo he visto al registrarte, el que comprueba los campos...
Lo demás para una Red Social que usan web 2.0 con el uso constante de JavaScript(Encores, Ajax, etc) eso es demasiado simple...

Si de verdad intentas hacer una red social metele caña al JavaScript , haz algo estable y novedoso y un consejo? Usa HTML5 es lo mejor que podrías usar :)

8
PHP / Re:[Ayuda]Desifrar Claves
« en: 25 de Julio de 2011, 09:27:30 am »
Buenas,

Si lo quieres hacer en un registro peudes pasarlo via POST (hidden) la contraseña pero vaya que si pones que repitan la contraseña 2 veces muy imbécil tiene que ser el tipo para que la ponga mal...

Oye que quieres decodificarla porque te da el venazo... pues creas una tabla llamada md5hashes, le metes id, master, hash y listo haces una consulta a la base de datos introduces la contraseña cifrada y original y cuando la quieras decodificar buscas el hash en la tabla y te devolverá el original... pero es un FAIL de seguridad así que tu sabrás!

un abrazote ;D

9
Minichat o MC / Y los famosos minichats v6, v7,v8,v9... ¿De dónde vienen?
« en: 23 de Julio de 2011, 18:27:09 pm »
Yo creo que ya es hora de aclarar de dónde vienen los Minichats por si alguien no lo sabe (que me parecen que son muuuuuuchos).

Y los famosos minichats v6, v7,v8,v9... ¿De dónde vienen?


Pues hoy explicaré de dónde viene, la historia se remonta hallá por el 2004...

Un gran chaval llamado .ek0. (dueño de www.habbohispano.com) que era uno de los más famosos en aquella época de Habbo, con relación intima con moderadores, managers y demás fue baneado injustamente con lo que decidió crearse un hotel llamado "KekoCity" el cual prometía ser bestial...
Mucha gente siguió a .ek0. ; uno de sus compañeros en HabboHispano, Serrico, le siguió creando una web fan de KekoCity, la primera de todas, el cual se juntó con Rottwailer (.:Rottwailer:. ,el cual pasó a llamarse Rott, o Alex) y contactaron con Imanol de PHPLibre (antiguamente TribunaLibre) la cual era un foro de PHP y ayuda como PHPeros.net por ejemplo, además de ser el portal oficial del Tagboard Tribuna Libre en esa época era Tribuna libre v2.6 (el cual adjuntaré más tarde)...

TribunaLibre v2.6 era un tagboard todo en PHP y que almacenaba datos y demás en  TXT, vaya no usaba SQL como base de datos...
Imanol realizando las futuras versiones del tagboard decidió colaborar con ellos para hacer un "chat" siendo el "SUPERTAGBOARD" y como era más que un tagboard pero menos que un chat decidieron llamarlo MiniChat...
Empezaron a sacar el TribunaLibre en SQL que se le llamaría TribunaLibre v3.12 BETA SQL (Adjuntaré el v3.12, pero la versión TXT ya que no he encontrado la SQL :( )
Cuando pasaron TribunaLibre a SQL totalmente ya sacaron la version 3.12 BETA SQL (seguía siendo beta, se supone que le iban a añadir algo más...)

Empezaron a editar TribunaLibre SQL y añadiendo "pijadas" y estilo Habbo, ya que no se disponia imágenes aún de KekoCity, además de que la mayoría de las personas que eran de KekoCity procedian de Habbo y se manejaban con él.
Cuando estaban acabando el MiniChat v6.0 (Versión más estable del MiniChat, la cual poco a poco fueron avanzando con nuevas cositas pero cosas limitadas) tuvieron todo, a Rott le dió por crear el Minichat v5.0, similar a MiniChat v6.0 pero sin SQL vamos, basado el v3.12 BETA.
Este chat añadia las nuevas funcionalidades de usuarios en linea, y cosas muy similares a  MCv6.0 pero mucho más limitado.
Este chat se fue difundiendo ya que lo publicó enseguida en demanda del Minichat v6.0, mucha gente lo quería para sus webfans de KC y posteriormente para Habbo...
Luego apareció el Minichat v6.0 publicamente pero en una versión BETA digamos que tenía muchos errores y fallos y la gente no se dió cuenta y fue al versión que conocéis todos...
La versión original no tenía todos estos fallos de seguridad (xD), algunos nos molestamos en reparar los errores y otros tan solo a ponerlo / editarlo.

Cuando ya se extendió la fama de los MiniChats añadieron muchísimos rangos (la mayoría no servian para nada , pero era novedoso) un día a una persona, en una web que no voy a nombre, por golfear,vacilar y tocar un poco las narices debajo del nick puso:
if($row["usuario"]=="Pepe") {
	
echo 
"<br><i><font style=\"font-size:8px;\">Soy *****on Grr ¿Alguno se ofrece voluntario?</font></i>";
}


(Lo siento por la expresión pero fue algo así lo que esa persona puso) ; (Las variables de usuario me las he inventado no recuerdo exactamente como era)

Sí, señoras y señores, se inventó el SUBNICK ; Cabe decir , y no es por presumir, que esa persona fui yo en una webfan de Habbo en mis días de aburrimiento, luega otras personas ya lo adaptaron a las tablas, sql y demás y lo pusieron en sus tagboards como opción VIP...

Y así fueron surgiendo los tagboards / minichat v121558020515.8 que existen ahora, las mil variaciones y todas iguales... ¡CON FALLOS DE SEGURIDAD! pero bueno si os gusta, que más da ¿no? jajaja

Enlace del Tribuna libre v2.6 ==)> http://www.mediafire.com/?t2pkw365rgr7akv
Enlace del Tribuna libre v3.12 BETA TXT ==)> http://www.mediafire.com/?w8hlwcwbf5h4u0i

Un post interesante es uno que hay en PHPEros:
http://www.phperos.net/foro/index.php?topic=1143.0

Tope -> Sucesor de Info-keko tras que Serrico al ayudar a ek0 en ekosoft no tenían tiempo.
Naveda -> Creador de PHPEros, creador de una web fan (otro chaval que fue bastante famoso) y que colaboró en algunas funciones con RoTT en su MC v5.3 SE (Special Edition)
FeDe -> BaDyDeejay

Después de daros el tostón aquí tenéis algo de conocimiento para el chat que muchos habéis usado y nunca habéis sabido su procedencia real.

PD: Si alguien no se cree la historia, puede ver el foro de phperos, preguntar a Tope, Serrico, Eko o simplemente comparar los archivos "centrales" (los que hacen las funciones) y aún estando el txt, los archivos y funciones son muy SIMILARES a los de TribunaLibre.

¡Un abrazo! :)

(Está publicado en otros foros bajo mi otro pseudónimo -> BaDyDeejay)

10
Tutoriales PHP / Re:Métodos GET y POST...
« en: 05 de Junio de 2011, 03:25:45 am »
Buenas,

No tenía ni idea de lo STDIO...
pero vamos tengo entendido que $_POST lo envia al navegador por header... por ello curl tiene la opción de enviar POST por las cabeceras header.
Y si analizas con Live HTTP Header (App para Firefox) un formulario enviado te aparecen en los resultados del header los datos enviados con el formulario, además de la cookie, el lenguaje del navegador, y todos los datos enviados por header! jejejeje

Un saludo :D

11
PHP / Re:[Ayuda] Mostrar Informacion De la base de datos Por ID
« en: 05 de Junio de 2011, 03:21:20 am »
ya que nadie lo explica y para evitar más problemas...

Simple imaginemos que captamos la id por $_GET (por ejemplo)

<?php

//Mi anti SQLi xD
foreach($_GET As $key => $valor) { //para cada valor de $_GET como $key tenga como valor $valor
$_GET[$key]=mysql_real_escape_string($valor); // evitamos posibles SQLi con mysql_real_escape_string
}
# Esto lo que hace es lo siguiente...
# Imaginemos que tenemos ?id=258
# $_GET = array("id" => 258);
# foreach dice que $key = "id"; $valor = 258; y decimos que $_GET[$key] ($_GET["id"]) sea mysql_real_escape_string(258);
# Fácil y sencillo no? Prosigamos...

if(isset($_GET["id"]) && !empty($_GET["id"])) { // si id está definido y no está vacío...

$query mysql_query("SELECT * FROM usuarios WHERE id=&#39;".$_GET["id"]."&#39;"); // ejecutamos una query de mysql con... SELECCIONAMOS TODO DE LA TABLA usuarios DONDE id SEA $_GET["id"]
while($array mysql_fetch_assoc($query)) { // mientras halla valores en $array (mysql_fetch_assoc...)
// mostramos la columna password para dicho usuario
echo $array["password"]; // por ejemplo jejeje 
}

}
?>


Si supiéramos perfectamente que solo hay un dato (como es este caso) podríamos haber evitado poner

while($array mysql_fetch_assoc($query)) { ... }

y poner directamente

$array mysql_fetch_assoc($query);

Espero haberlo solucionado jeje

un saludo :D


12
PHP / Re:Conexion en Mysql (DUDA)
« en: 05 de Junio de 2011, 03:11:54 am »
Buenas,

Pues como te han dicho por ahí es con doble conexion y dónde vayas a hacer las querys se identifica el socket de conexión me explico con un ejemplo.

<?php
$socketsql1 
mysql_connect("localhost","root","pwd");
$socketsql2 mysql_connect("192.168.1.25","root","pwd");
@
mysql_select_db("dbname1",$socketsql1);
@
mysql_select_db("dbname2,$socketsql2);
?>


y para el query...

<?php
mysql_query
("SELECT * FROM tabla",$socketsql1); // para el primero
mysql_query("SELECT *FROM tabla"$socketsql2); // para el segundo
?>


Espero haber aclarado tu duda ^^

13
PHP / Re:duda al actualizar fecha date
« en: 05 de Junio de 2011, 03:06:48 am »
Buenas,

  $sql mysql_query("UPDATE clientes SET expiredate=&#39;".date("Y-m-d"mktime(000date("m")+".$creditos."date("d"), date("Y")))."&#39;, changed=&#39;".date(&#39;Y-m-d H:i&#39;)."&#39;, changedby=&#39;".$_SESSION["loginuser"]."&#39; WHERE id=&#39;".$userid."&#39;") or die ("Error editing user");

Este código está mal....
el código sería:
$sql mysql_query("UPDATE clientes SET expiredate=&#39;".date("Y-m-d")."&#39; changed=&#39;".date("Y-m-d H:i")."&#39;, changedby=&#39;".$_SESSION["loginuser"]."&#39; WHERE id=&#39;".$userid."&#39;");
if(
$sql==true) { echo "Perfecto."; } else { echo "Error SQL:<br>".mysql_error(); }

14
PHP / Re:[Ayuda]Pequeño Problema
« en: 01 de Junio de 2011, 23:53:25 pm »
Son valores que añade el editor web.

Con Dreamweaver puedes quitarlo facilmente y si mal no recuerdo (no estoy seguro) con Notepad ++ también puedes. :)

15
PHP / Re:Validar hora militar como numero entero!!
« en: 01 de Junio de 2011, 23:03:17 pm »
Buenas,

No entiendo bien tu pregunta pero por el contexto tengo dos posibilidades y las dos las voy a aclarar, si no es ninguna de las dos, por favor explícate de otro forma para poder entenderte correctamente jeje.

1. Para pasar la hora actual (o la hora con dos puntos) sin los dos puntos podría ser:

1.1 Hora actual:
<?php
$hora 
date("h");
$minuto date("m");
$horamilitar $hora.$minuto;
?>


1.2 Pasar cualquier cadena con una hora separada por :
<?php

$string 
"20:40";
$horamil str_replace(":","",$string); // Devolveria 2040
?>


2. Comprobar si hora militar no tiene : y además está entre el intervalo "0000" y "2359".

<?php

$string 
"23:59";
$sep explode(":",$string);
$count count($sep);
if(
$count || $string || $string 2359 || strlen($string) != 4) {
print 
"Error en la hora";
} else {
// Aqui la ejecucion
}
?>


No creo que deba explicar los códigos ya que son muy simples jeje
Pero de todas formas si alguien tiene alguna duda por favor que no dude en preguntar :D

Páginas: [1] 2 3 ... 30