Mar
01
2009
0

Error en sentencia PHP Warning: eregi() REG_BADB

Estaba implementando un formulario con validación y tenía que validar un número en un rango, utilicé la función eregi()

y en el error log apareció:

PHP Warning: eregi() [function.eregi]: REG_BADBR in line …….

Esto pasó porque el cuantificador (número) tiene que estar dentro del rango entre 0 y 255 enteros sin signo, porque parece que permite hasta 8 bits en binario y en decimal equivale al rango {0,255}

La solución es utilizar otra función como pregmatch.

Written by doutdex in: PHP | Tags:
Jan
19
2009
0

Como crear servidor y cliente web service SOAP en PHP NuSOAP con archivo adjunto

ntroducción a SOAP:

“SOAP (siglas de Simple Object Access Protocol) es un protocolo estándar que define cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio de datos XML. Este protocolo deriva de un protocolo creado por David Winer en 1998, llamado XML-RPC. SOAP fue creado por Microsoft, IBM y otros y está actualmente bajo el auspicio de la W3C. Es uno de los protocolos utilizados en los servicios Web.” by Wikipedia

Para PHP existen algunas librerías para SOAP, actualmente una de las más utilizadas es NuSOAP porque es más madura con respecto al resto pero sólo soporta SOAP 1.1, sin embargo, existen otras librerías somo:

– Extensión SOAP para PHP5  (reciente agregada de dentro de php5)

– Pear SOAP (PHP5 y PHP4)

– WSO2 (reciente con buen futuro)

– NuSOAP (PHP5 y PHP4) ya no está muy mantenida porque cumple su propósito específicamente para SOAP 1.1, no soporta 1.2, pero actualmente la mayoría de los servicios están en SOAP 1.1, también se debe considerar que las nuevas librerías no soportan a la versión 1.1 sino desde 1.2 en adelante, por lo que es conveniente realizar una revisión acerca de cuales serán los servicios a los cuels me voy a conectar o a qué tipos de cliente voy a servir.

(more…)

Written by doutdex in: PHP | Tags: ,
Oct
07
2008
0

Como leer (parsear) archivos XML iso-8859-1 en PHP con SimpleXMLElement UTF-8

[lang_en]Bueno aquí luego de estar medio día tratando de parsear un archivo XML con SimpleXMLElement, finalmente:

Tengo un Xml con iso-8859-1, entonces la idea es leer el archivo con PHP, parsearlo y proceder a imprimir algunos datos en pantalla utilizando el arreglo generado del arbol Xml.

El ejemplo de XML:

< ?xml version="1.0" encoding="iso-8859-1"?>
<graficos>
<grafico id="idgrafo1">
    <titulo>Título Gráfico 1</titulo>
    <subtitulo>Subtítulo grafo 1</subtitulo>
    <fuente>Fuente grafo 1</fuente>
    <datos>
        <dato>
            <x>110</x>
            <y>111</y>
        </dato>
        <dato>
            <x>120</x>
            <y>100</y>
        </dato>
    </datos>
</grafico>
 
<grafico id="idgrafo2">
    <titulo>Título Gráfico 2</titulo>
    <subtitulo>Subtítulo grafo 2</subtitulo>
    <fuente>Fuente grafo 2</fuente>
    <datos>
        <dato>
            <x>210</x>
            <y>211</y>
        </dato>
        <dato>
            <x>220</x>
            <y>200</y>
        </dato>
    </datos>
</grafico>
</graficos>
[/lang_en]

(more…)

Written by doutdex in: PHP,xml | Tags: ,
Oct
05
2008
1

Explorador de archivos en PHP (File manager)

Agrega o modifica archivos desde el Browser sin tener que estar usando FTP

eXtplorer

http://i2.wp.com/extplorer.sourceforge.net/extplorer.png?resize=411%2C259

eXtplorer is a web-based File Manager. You can use it to

  • browse directories & files on the server and
  • edit, copy, move, delete files,
  • search, upload and download files,
  • create and extract archives,
  • create new files and directories,
  • change file permissions (chmod) and much more… (more…)
Written by doutdex in: open source,PHP | Tags:
Oct
01
2008
0

Expresiones regulares con PHP

Bueno luego de estar buscando algunas expresiones útiles aquí les dejo algunas funciones que utilizo para validar algunos datos que provienen de formularios:

   
 /**
    * Función que valida un campo de tipo email
    * var: campo de texto a validar
    * Devuelve FALSE no cumple y TRUE si cumple
    */
 
   function valida_email($var){
      if(!ereg("([A-Za-z0-9_.-]+@[A-Za-z0-9_.-]+\.[A-Za-z0-9_-]+)",$var)) {
        return false;
      }else{
        return true;
      }
    }

(more…)

Written by doutdex in: PHP | Tags: ,
May
15
2008
0

Función para Importar archivo (parser) a (from) CSV a variable PHP

Este código fue extraído de otro blog que ha sido probado y funciona correctamente.

“This is a snippet of code that I had posted on another of my websites and in doing some cleanup it really fits better here.
(more…)

Written by doutdex in: PHP | Tags: ,
May
05
2008
0

Función para listar directorios y archivos recursivamente PHP

[lang_en]Para utilizar llamar a la función para que liste a partir de ./ (donde se encuentra el archivo php)

listar_directorios_ruta("./");
 
<code>function listar_directorios_ruta($ruta){
// abrir un directorio y listarlo recursivo</code>[/lang_en] <a href="http://www.doutdex.com/blog/2008/05/05/funcion-para-listar-directorios-y-archivos-recursivamente-php/#more-101" class="more-link">(more...)</a>
Written by doutdex in: PHP | Tags: ,
Apr
29
2008
0

Funciones PHP

uniqid(pre,bol)

Genera un identificador único basado en la hora actual del sistema expresada en microsegundos con una longitud de 13 caracteres.

(more…)

Written by doutdex in: PHP | Tags: ,
Apr
29
2008
3

Cómo Enviar un email de texto o html con (usando) php sendmail

Para enviar un email usando php, se puede utilizar sendmail que debe estar configurado en el archivo de configuración php.ini.

Configuración para usar mail()

Aignar el puerto SMTP y establecer un email sendmail_from

Descomentar

SMTP = localhost
 
smtp_port = 25
 
sendmail_from = admin@miemail.com

A continuación, describo los parámetros de la función de php mail para enviarlo:

mail($destinatario, $titulo, $mensaje,$cabecera)

[/lang_en] (more…)

Written by doutdex in: PHP | Tags: ,
Mar
23
2008
0

Comparación (Comparing) PHP and Perl

PHP Perl
file.php file.cgi
scripts in <?php..?> whole file is script
Puede incluir raw HTML must print all output
NO es necesario indicar el interprete Primera línea ruta interprete es #!/var/bin/perl
(more…)
Written by doutdex in: Perl,PHP | Tags: , , ,
Oct
22
2007
2

Upload file (cargar archivo) PHP

Validaciones en upload.php

&lt; ?php
//Limita el tamaño máximo del archivo que se sube a 10M, en código upload.php
 
//to lowerCase
//Para dejar todo en minúsculas
$tipo_archivo= strtolower($tipo_archivo);
 
  //Valida para saber si el archivo esta en el directorio temporal (directorio temporal revisa php.ini)
   if (!($HTTP_POST_FILES['doc_file']['tmp_name']!='')){
 
   echo 'without file'; //cuando se carga mal un archivo
   exit();
}
 
 //validación para verificar la extensión del archivo
 //TODO
 //validación para limitar el tamaño del archivo
 if (($tamano_archivo &gt; $filesize_limit_upload)) {
  echo "The file size is upper the limit, the max size allowed is $filesize_limit_upload bytes";
  exit();
 }
 
 if (move_uploaded_file($HTTP_POST_FILES['doc_file']['tmp_name'], $dir_base_uploadDoc.$doc_filename)){
 
 }else{
  print("Some error can´t complete your requirement");
  exit();
 }
 
?&gt;

Problems while uploading the document (problemas al tratar de cargar el archivo):

Warning: fread(): supplied argument is not a valid stream resource in

Warning: fclose(): supplied argument is not a valid stream resource in

Chech (Revisar) php.ini

upload_max_filesize = 2M;
post_max_size = 8M;

También revisar las siguientes variables (Also check if):

(post_max_size > upload_max_filesize).

Written by doutdex in: PHP | Tags: , ,
Oct
22
2007
0

Configuración de php.ini (seguro)

Pasos para seguridad al utilizar PHP en un servidor que está en internet (sitio público).

1. Deshabilitar las URL remotas para funciones que manejen archivos:
1. allow_url_fopen = Off
2. Register Globals
1. register_globals = Off (more…)

Written by doutdex in: PHP | Tags: