Autor
|
Tema: Scripts Php/MySQL (Leído 50,363 veces)
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Bueno, algunos de ustedes se podrán preguntar "Que #%!% son las EE.RR???", pues, son las "Expresiones Regulares", y sirven para encontrar tal cosa dentro de tal texto o variable, y ese tipo de cosas. Esto se usa, por ejemplo, para el BBCode, tal sea cambiar por <font color=tal>Algo</font> , etc... En este caso, se hará para reemplazar -> [url=http://www.algo.com]Algo[/url] por <a href=http://www.algo.com>Algo</a> . Para esta EE.RR se usará la función preg_replace, que reemplazará cualquier coincidencia con lo buscado. Se haría asi: <?php function bbcode ($text) { $text = preg_replace ("/\[url=(http://\/\/www\.([0-9a-z](.+))\.([a-z]{2,4}))\](.+)\[\/url\]/i","<a href=\\1>\\5</a>",$text); return $text; } $algo = "Hola!! Mi web es [url=http://www.elextremo.cl]ESTA[/url]"; $algo = bbcode ($algo); echo $algo; ?> Bueno, pueden parecer hasta letras chinas, pero aquí les explico que son cada una: El / del principio y el / del final indican el principio y el final de la expresion regular (valga la redundancia ). Ahora, para poner caracteres del tipo [ . / etc se debe poner una \ antes, para que reconozca que se está hablando de texto. Es por esto que hay un \[ url=http:// , que indica que al principio debe haber un [ url=http://. Sigue esto (http://\/\/www\.([0-9a-z](.+))\.([a-z]{2,4})) que, traducido al español, sería: cualquier dirección que empieze por http://www. y que esté seguido por cualquier caracter del 0 al 9 y de la A a la Z o otro caracter y que se puede repetir 1 o mas veces, y luego un . (punto) que debe de estar seguido por una palabra de 2 a 4 letras, solo con letras de la A a la Z. Después se pone \] que indicaría fin de [ url=http://. Luego se usa (.+) denuevo. El . (punto) es un comodín para todos los caracteres, y que se repita 1 o mas veces. Ahora está el cierre, que es \[\/url\], que equivaldría a [/url]. La i después del / indica que en el texto pueden haber mayúsculas y minúsculas. También se puede usar s, que indica que se pueden poner saltos de línea en el texto. Luego, se encontrarán con un \\1. Esto indica la primera coincidencia entre los paréntesis. Luego el \\5, que igual al que está arriba. Espero que se entienda, porque realmente fue muy complicado para mí explicar todo esto Salu2! PD: Siesque definitivamente no se entiende, porfavor envíame un IM para que trate de explicarlo mejor.
|
|
« Última modificación: 29 Septiembre 2004, 08:40 am por -Riven-Ward- »
|
En línea
|
Usuario Banneado
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Buenas La verdad no le veo mucho sentido a este script, pero bueh xDD A través del siguiente script, se revisa cada letra o carácter de una cadena y se le compara con cada row de un array. Si se es igual al row, osea, hay un carácter inválido, se da por falso. Esto lo hice hoy porque hoy mismo "descubrí" que se puede tratar a una cadena como un array... Y como un script vale mas que mil palabras (esta me la inventé yo ), aquí va: <?php $inv = array ( 0=>32, 1=>33 ); $str = "Hola amigo!"; $long = strlen ($str)-1; for ($i = 0; $i <= $long; $i++) { for ($x = 0; $x <= count($inv); $x++) { if (ord ($str[$i]) == $inv[$x]) { $malo = true; } } } if ($malo) { echo "Cadena con carácteres inválidos!"; } else { echo "Cadena correcta"; } ?> La función ord() es para obtener el ASCII de un carácter. Como podrán darse cuenta, en el array están los ASCII del espacio ( ) y del signo de exclamación ( ! ). Aquí les dejo la lista de carácteres ASCII, que podrían ser considerados inválidos. 32 -> (espacio) 33 -> ! 34 -> " 38 -> & 39 -> ' 40 -> ( 41 -> ) 42 -> * 45 -> - 46 -> . 47 -> / 58 -> : 59 -> ; 60 -> < 61 -> = 62 -> > 63 -> ? 91 -> [ 92 -> 93 -> ] 94 -> ^ 123 -> { 124 -> | 125 -> } 126 -> ~ Salu2!
|
|
« Última modificación: 13 Octubre 2004, 03:42 am por -Riven-Ward- »
|
En línea
|
Usuario Banneado
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Esta función sirve para que si tenemos un archivo de 1024 bytes, lo ponga así: 1 kb Sería así: <?php function tamano($arc) { if (file_exists ($arc)) { $tam = filesize ($arc); $un = array ("b","kb","mb"); $ex = $un[0]; $i = 1; while ($tam >= 1024 && $i < count($un)) { $tam /= 1024; $ex = $un[$i]; $i++; } return round ($tam,2)." ".$ex; } else { echo "El archivo no existe!"; } } ?> Aproxima el peso del archivo y luego, según el peso, le asigna la unidad, que es vista en el Array y pueden agregarle mas. Y lo llamas así: <?php echo tamano ("algo.noseque"); ?> Importante: El script y el archivo deben estar en la misma carpeta. Es muy útil para sección de descargas y ese tipo de cosas Salu2!
|
|
« Última modificación: 29 Noviembre 2004, 03:44 am por -Riven-Ward- »
|
En línea
|
Usuario Banneado
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Este script sirve para "explorar" los archivos de tu PC, y ir a los que se pueden ver... <?php function explorar ($car) { $tam = strlen ($car)-1; if ($car[$tam] != "/") { $car .= "/"; } $dir = opendir($car); echo "Haz click en el archivo al cual quieras ir<br>"; echo "<select multiple size=\"10\" onChange=\"window.location.href=this.options[this.selectedIndex].value\">"; while ($file = readdir($dir)) { echo "<option value=\"".$car.$file."\">".$file."</option>"; } closedir($dir); echo "</select>"; } if ($cual) { if (!is_dir ($cual)) { echo "El archivo no existe!"; } else { explorar ($cual); } } else { ?> <form action="<?=$PHP_SELF?>" method="post"> <input type="text" name="cual"> (Formato C:/)<br><br> <input type="submit" name="enviar" value="Explorar!"> </form> <?php } ?> OJO: Donde pones la Unidad o carpeta que quieres explorar, tienes que poner los slashes así: /, no así: \. Salu2!
|
|
|
En línea
|
Usuario Banneado
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Con este script puedes hacer contraseñas de X largo (tu eliges, 6 por default) que incluye mayúsculas (A-Z), minúsculas (a-z) y números (0-9). La razón por la cual los otros carácteres (?, !, >, etc...) no fueron incluídos, es porque en algunas partes no aceptan esos carácteres. Ejemplo de constraseña creada por este script: 4X0Tn1 <?php $largo = "6"; //Este es el largo del password, puede variar $invalidos = array (58,59,60,61,62,63,64,91,92,93,94,95,96); $i = "0"; while ($i < $largo) { mt_srand ((double) microtime()*1000000); $num = mt_rand (48,122); if (in_array ($num,$invalidos)){ continue; } else { echo chr ($num); } $i++; } ?> Espero que les sirva. Salu2!
|
|
|
En línea
|
Usuario Banneado
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.215
Do you like Mario? xDDDDDDDDDDDD
|
Hace tiempo que no posteaba aquí . Pero bueno, aquí les tengo la preciada función para colorear el código PHP, que viene en 'pack' con el código para que no te hagan XSS. Lo acabo de terminar asique quizás tenga algunas fallas, pero ya iré viendo . <style> body {font-family: Verdana; font-size: 10pt; background-color: #5791fb;} .codigo { border: #000000 1px solid; font-size: 10pt; font-family: Verdana; color: #000000; background-color: #EAECED; } </style> <?php function pintar ($cod) { $cod = htmlentities (stripslashes ($cod)); if (strstr ($cod, "[php]")) { $php = explode ("[php]", $cod); for ($i = 0; $i < count ($php); $i++) { $pos = strpos ($php[$i], "[/php]"); if (strstr ($php[$i], "[/php]")) { $codigo = substr ($php[$i], 0, $pos); $codigo = html_entity_decode($codigo) ; $codigo = "<div class=\"codigo\">".highlight_string ($codigo, 1)."</div>"; $n = substr ($php[$i], $pos + 6); $php[$i] = $codigo.$n; } } $cod = implode ("", $php); } $cod = str_replace (" ", "<br>", $cod); return $cod; } ?> El estilo del DIV lo saqué del SMF xDDDDDDD. Bueno, para el modo de uso les pongo un ejemplo: Hola, este es el primer post ;).
[php]<?php echo "xDDDDDDDD"; $tx = str_replace ("xD", "xD2", $tx); ?>[/php]
<h1>Hola</h1>
Salu2! Hagan un textarea para sacar de ahí el "post", y luego ponen eso. Se llama así: <?php echo pintar ($variable); ?> Recuerden que se abre/cierra asi:
. Salu2!
|
|
|
En línea
|
Usuario Banneado
|
|
|
chispita68
Desconectado
Mensajes: 39
|
Hola soy nuevo en esto del php y mysql, te pido un gran favor en que me enseyes y expliques como manejarlo, es muy importante para mi, he echo varias paginas web, pero lo que falta es usar bases de datos, y no se como empezar, por eso recurro a ti, espero tu respuesta.
|
|
|
En línea
|
Para sobrevivir, te aferras a todo lo que conoces y entiendes y lo llamas realidad.... Pero el conocimiento y la comprensión son ambiguos. La realidad puede ser una ilusión.... Todos los seres humanos viven con las creencias equivocadas ¿No es esa otra manera de ver las cosas?
|
|
|
Falso Positivo
|
Obtener puertos abiertosEs algo que me acaba de servir, busqué en mi historial de navegación la fuente pero tengo "navegación privada" en FF así que el que la vea me manda un PM y edito. <?php $servicios = array('http', 'ftp', 'ssh', 'telnet', 'imap', 'smtp', 'nicname', 'gopher', 'finger', 'pop3', 'www'); foreach ($servicios as $servicio) { $puerto = getservbyname($servicio, 'tcp'); echo $servicio . ": " . $puerto . "<br />\n"; } ?> :wq!
|
|
« Última modificación: 14 Junio 2010, 22:28 pm por Falso Positivo »
|
En línea
|
Don't worry, be hacked....
|
|
|
|
Mafmaestro
Desconectado
Mensajes: 68
|
Una pregunta, cuando se crea una pagina .php, hay alguna forma de ver lo que hay en en el campo <?php ------ ?>
Me explico, tenemos un archivo que se llama pepe.php, y contiene lo siguiente:
<html>
blalblalbla
</html>
<?php
blalbvlalblad
?>
Cuando esta pagina se publica en un servidor, la parte de codigo que esta entre los campos <?php i ?> no se ve en el codigo fuente. Ya se que es para que los hackers no puedan ver esta parte de codigo y no puedan desfacear la pagina web, pero, hay alguna forma de ver esta parte de codigo?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Scripts de ASP
Desarrollo Web
|
Cobac
|
9
|
10,319
|
10 Julio 2010, 23:02 pm
por alkonweb
|
|
|
ayuda para cargar scripts desde lineas de comando a MySQL
Java
|
ktty
|
1
|
7,025
|
24 Enero 2009, 08:04 am
por Chuidiang
|
|
|
MySQL.com (also MySQL France,Italy,Japan,Germany,etc) Hacked by TinKode & Ne0h
Bugs y Exploits
|
TinKode
|
1
|
3,663
|
27 Marzo 2011, 17:32 pm
por Tyrz
|
|
|
error 1130 mysql host localhost is no allowed to connect to mysql
Bases de Datos
|
josco
|
1
|
5,435
|
9 Enero 2012, 05:32 am
por Shell Root
|
|
|
Wireless networking watcher guardar en txt
Scripting
|
T.S.A
|
1
|
2,447
|
4 Agosto 2017, 13:27 pm
por Eleкtro
|
|