elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Recomendado] Preguntas Mas Frecuentes de PHP (scripts)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Respuesta Imprimir
Autor Tema: [Recomendado] Preguntas Mas Frecuentes de PHP (scripts)  (Leído 68,210 veces)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
Buscar carácteres inválidos en una cadena
« Respuesta #20 en: 14 Octubre 2004, 05:15 »

Segun Riven-Ward:
"
Buenas ;D

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 ;D), aquí va:

Código:
<?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.

Citar
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!"


En línea

:)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
Usar imágen para mostar cosas de PHP
« Respuesta #21 en: 14 Octubre 2004, 05:30 »

Riven-Ward dice: "

Bueno, ustedes conocerán las Librerías GD.

Son unas librerías (... xDD) para trabajar con imágenes. Por ejemplo, poner la IP del visitante en una imágen.

NOTA: No todos los host's aceptan GD... Pregunten con el administrador. Si no tienen GD, no pueden usar esto.

Les dejo un ejemplo que hice yo aqui, que muestra la fecha actual y la IP del visitante, con un fondo hecho en Photoshop ;D



Con ésta función que voy a poner, puedes elegir la fuente que quieras que tenga el texto que pondrás, la posición del texto, el ángulo (puedes ponerlo en distintos ángulos, p.e 90°) y el tamaño de fuente. Solo se pueden usar imágenes JPG y PNG. Bueno, no SOLO esas, pero son las mas usadas y las que mejor se ven. El Gif NO se puede usar a partir de la versión 1.6 del GD... Bueno, después de esta breve explicación, va el código:

Código:
<?php
header("Content-type: image/jpeg"); //El tipo de imágen
$im = "http://www.tuweb.com/imagen.jpg"; //Url COMPLETA de la imágen
$img = ImageCreateFromJpeg ($im);
$color = ImageColorAllocate ($img, 0, 0, 0);
/*
Color negro... El color está en formato RGB, puedes ver esto en el Paint, o el Photoshop.
El negro es el 0 0 0 y el blanco el 255 255 255
*/
$texto = "Hola, eres ".$REMOTE_ADDR;
ImageTTFText($img, 10, 0, 25, 95, $color, "/home/pagina/public_html/arial.ttf",$text);
/*
Pequeña explicación de esta función:
Estructura: array imagettftext ( resource imagen, int tamanyo, int angulo, int x, int y, int color, string archivo_fuente, string texto)
-> Sacado de php.net <-
La fuente debe estar en tu servidor, no es necesario que le usuario la tenga. Además, la fuente debe estar en su RUTA COMPLETA, como la que se indica arriba.
Debes cambiar la posición del texto y todo eso. Recuerda que puedes ver en que posición poner el texto con Paint, abajo sale el lugar en el que está el mouse. Te saldrá, p.e., 12,42: Ponlos en ese orden.
*/
ImageJpeg ($img); //Se muestra la imágen
ImageDestroy ($img); //Se libera la memoria y FIN :D
?>

Debo agregar que si la imágen es PNG, deben cambiar las siguientes funciónes:

Código:
header("Content-type: image/jpeg"); -> header("Content-type: image/png");

Código:
ImageCreateFromJpeg -> ImageCreateFromPng

Código:
ImageJpeg -> ImagePng

Creo que eso es todo... Para mayor información, ver la documentación de PHP.

Salu2!
"


En línea

:)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
Validar campos, funcion para regresar a formulario
« Respuesta #22 en: 24 Marzo 2005, 04:14 »

en un formulario que hice para unas personas, eran algunas 80 preguntas (son, aun no termino) uso esta funciona cada vez que le den al submit con algun campo que sea obligatorio y esté vacio.



Código:
<?php
function comprobar($mensaje) {
echo '<script language="javascript">alert("'.$mensaje.'\n\nFormulario para Egresados Honoríficos"); javascript:history.back(1)</script>';
}


?>
En línea

:)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
BBCODE, como? (Funcion)
« Respuesta #23 en: 6 Junio 2005, 21:39 »

Funcion para convertir los bbcodes q se utilizan en los foros y message board, para publicarlo en buro codigo html...

Código:
<?php
function BIs2cODE($texto) {
        $texto = nl2br($texto);
        $texto = wordwrap($texto, 150, "\n", 1);

        $texto = str_replace("[b]", "<b>", $texto);
        $texto = str_replace("[/b]", "</b>", $texto);
        $texto = str_replace("[i]", "<i>", $texto);
        $texto = str_replace("[/i]", "</i>", $texto);
        $texto = str_replace("[poem]", "<center><i>", $texto);
        $texto = str_replace("[/poem]", "</center></i>", $texto);
        $texto = str_replace("[u]", "<u>", $texto);
        $texto = str_replace("[/u]", "</u>", $texto);
        $texto = str_replace("[br]","<br>",$texto);
        $texto = str_replace("[strong]","<strong>",$texto);
        $texto = str_replace("[/strong]","</strong>",$texto);
        $texto = str_replace("[center]","<center>",$texto);
        $texto = str_replace("[/center]","</center>",$texto);
        $texto = str_replace("[marquee]", "<marquee>", $texto);
        $texto = str_replace("[/marquee]", "</marquee>", $texto);
        $texto = str_replace("[blink]", "<blink>", $texto);
        $texto = str_replace("[/blink]", "</blink>", $texto);
        $texto = str_replace("[strike]", "<strike>", $texto);
        $texto = str_replace("[/strike]", "</strike>", $texto);
        $texto = str_replace("[quote]", "<blockquote><span>Citado:</span><hr color=#A3CFD8>", $texto);
        $texto = str_replace("[list]","<ul type=square>",$texto);
        $texto = str_replace("[/list]","</ul>",$texto);
        $texto = str_replace("[list=1]","<ol type=1>",$texto);
        $texto = str_replace("[list=a]","<ol type=A>",$texto);
        $texto = str_replace("[list=A]","<ol type=A>",$texto);
        $texto = str_replace("[/list=1]","</ol>",$texto);
        $texto = str_replace("[/list=a]","</ol>",$texto);
        $texto = str_replace("[/list=A]","</ol>",$texto);
        $texto = str_replace("[*]","<li>",$texto);
        $texto = str_replace("[•]","<li>",$texto);

        $texto = eregi_replace("(^|[>[:space:]\n])([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])([<[:space:]\n]|$)","\\1<a href=\"\\2://\\3\\4\" target=\"_blank\">\\2://\\3\\4</a>\\5", $texto);

        $texto = eregi_replace("\\[color=([^\\[]*)\\]([^\\[]*)\\[/color\\]","<font color=\\1>\\2</font>",$texto);
        $texto = eregi_replace("\\[size=([^\\[]*)\\]([^\\[]*)\\[/size\\]","<font size=\\1>\\2</font>",$texto);
        $texto = eregi_replace("\\[font=([^\\[]*)\\]([^\\[]*)\\[/font\\]","<font face=\\1>\\2</font>",$texto);
        $texto = eregi_replace("\\[align=([^\\[]*)\\]([^\\[]*)\\[/align\\]","<p align=\\1>\\2</p>",$texto);

        $padrones[]     = "#\[img\]([^\[]*)\[/img\]#si";
        $remplanzantes[] = '<img src="\1" border=0 />';

        $padrones[]     = "#\[img=([^\[]*)x([^\[]*)\]([^\[]*)\[/img\]#si";
        $remplanzantes[] = '<img width="\1" height="\2" src="\3" border=0 />';

        $padrones[]     = "#\[flash=([0-9].*?){1}x([0-9]*?)\](.*?)\[/flash\]#si";
        $remplanzantes[] = '<OBJECT classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 codebase=http://active.macromedia.com/flash2/cabs/swflash.cab#version=6,0,0,0 ID=main WIDTH=\1 HEIGHT=\2><PARAM NAME=movie VALUE=\3><PARAM NAME=loop VALUE=false><PARAM NAME=menu VALUE=false><PARAM NAME=quality VALUE=best><EMBED src=\3 loop=false menu=false quality=best WIDTH=\1 HEIGHT=\2 TYPE=application/x-shockwave-flash PLUGINSPAGE=http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash></EMBED></OBJECT>';

        $padrones[]     = "#\[url\]([a-z]+?://){1}(.*?)\[/url\]#si";
        $remplanzantes[] = '<a href="\1\2" target="_blank">\1\2</a>';

        $padrones[]     = "#\[url\](.*?)\[/url\]#si";
        $remplanzantes[] = '<a href="http://\1" target="_blank">\1</a>';

        $padrones[]     = "#\[url=([a-z]+?://){1}(.*?)\](.*?)\[/url\]#si";
        $remplanzantes[] = '<a href="\1\2" target="_blank">\3</a>';

        $padrones[]     = "#\[url=(.*?)\](.*?)\[/url\]#si";
        $remplanzantes[] = '<a href="http://\1" target="_blank">\2</a>';

        $padrones[]     = "#\[email\](.*?)\[/email\]#si";
        $remplanzantes[] = '<a href="mailto:\1">\1</a>';

        $padrones[]     = "#\[email=(.*?){1}(.*?)\](.*?)\[/email\]#si";
        $remplanzantes[] = '<a href="mailto:\1\2">\3</a>';

        $texto = preg_replace($padrones, $remplanzantes, $texto);
        return $texto;
}
?>


Y se utiliza con el simple: BIs2cODE($variable);[/quote]
« Última modificación: 6 Junio 2005, 21:43 por Cuantico » En línea

:)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
Expresiones regulares (regex) para validar direccion de correo
« Respuesta #24 en: 23 Junio 2005, 05:12 »

Código:
^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+.[A-Za-z0-9_.]+[A-za-z]$
En línea

:)
Cuantico
qantic.net


Desconectado Desconectado

Mensajes: 1.829


no paiN? no gAIn! !.


Ver Perfil WWW
Re: Preguntas Mas Frecuentes de PHP (scripts)
« Respuesta #25 en: 25 Noviembre 2005, 22:20 »

si tiene version de php anterior a 4.3 y necesita usar session_regenerate_id, cree usted mismo la funcion

Código:
<?php
   if (!function_exists('session_regenerate_id')) {
       function php_combined_lcg() {
           $tv = gettimeofday();
           $lcg['s1'] = $tv['sec'] ^ (~$tv['usec']);
           $lcg['s2'] = posix_getpid();

           $q = (int) ($lcg['s1'] / 53668);
           $lcg['s1'] = (int) (40014 * ($lcg['s1'] - 53668 * $q) - 12211 * $q);
           if ($lcg['s1'] < 0)
               $lcg['s1'] += 2147483563;

           $q = (int) ($lcg['s2'] / 52774);
           $lcg['s2'] = (int) (40692 * ($lcg['s2'] - 52774 * $q) - 3791 * $q);
           if ($lcg['s2'] < 0)
               $lcg['s2'] += 2147483399;

           $z = (int) ($lcg['s1'] - $lcg['s2']);
           if ($z < 1) {
               $z += 2147483562;
           }

           return $z * 4.656613e-10;
       }

       function session_regenerate_id() {
           $tv = gettimeofday();
           $buf = sprintf("%.15s%ld%ld%0.8f", $_SERVER['REMOTE_ADDR'], $tv['sec'], $tv['usec'], php_combined_lcg() * 10);
           session_id(md5($buf));
           if (ini_get('session.use_cookies'))
               setcookie('PHPSESSID', session_id(), NULL, '/');
           return TRUE;
       }
   }
?>

Para probar:
Código:
<?php
   session_start();
   $sid = session_id();
   session_regenerate_id();
   echo "Old session ID: ", $sid, "\nNew session ID: ", session_id(), "\n";
?>
En línea

:)
Páginas: 1 2 [3] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Preguntas muy frecuentes
Windows
jbex 1 5,915 Último mensaje 29 Junio 2004, 08:04
por soplo
Preguntas frecuentes
Hardware
kapland 2 20,402 Último mensaje 29 Septiembre 2004, 04:13
por el-brujo
Preguntas Frecuentes [actualizado 05/27/05]
Grabadoras
+ enrique ZP 0 7,775 Último mensaje 28 Mayo 2005, 02:15
por + enrique ZP
Preguntas mas frecuentes(F.A.Q)
Análisis y Diseño de Malware
Kizar 1 3,475 Último mensaje 9 Octubre 2006, 17:42
por marian0
[CLON] 30 Clones web (pack) Scripts php [Recomendado]
PHP
Graphixx 9 9,382 Último mensaje 4 Enero 2013, 23:26
por Weeken
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines