Portegag2’s Weblog

Just another WordPress.com weblog

Archive for January, 2009

Finalizar las noticias

Posted by portegag2 on January 31, 2009

Cambiar la páginas a .php

Ver si el formato para la NOTICIA, está bien, y hacer pruebas para las noticias de GRD.

Hacer la página inicial.

Posted in fbgimnasia | Leave a Comment »

Trabajar el informe

Posted by portegag2 on January 30, 2009

Estoy intentado trabajar con la cadena que recibe el archivo /desarrollo/src/imprimir.php para buscando los table y los tr saber dónde estoy y así poder paginar la página.

Pero no consigo que me encuentre el primer “</table”;

Posted in comarca | Tagged: | Leave a Comment »

Paginación en informes

Posted by portegag2 on January 30, 2009

Poner la tabla de height=1200

Contador de filas y cada 15, en el caso de KOMARKA, cerrar la tabla y volver a insertar la cabecera y poner el contador a cero.

Posted in comarca | Tagged: , , , | Leave a Comment »

Mandar correos

Posted by portegag2 on January 30, 2009

Dos métodos para mandar correos la función nativa de PHP mail y la clase phpmailer.

  • Ventaja de funcion mail: más sencilla de programas.
  • Inconveniente función mail: el servidor de PHP tiene que tener instalado un servidor de correo, o no se envía.
  • Ventaja clase phpmailer: Puedes configurar el servidor de correo con lo que en pruebas en local, con la configuración de envío de un cliente de correos en el ordenador, envía.

Si quiero mandar un fichero adjunto mirar este post.

Función nativa PHP mail

Para mandar un correo se puede utilizar la función nativa mail.

El código sería más o menos así:

$destinatarios = $_POST['correo']
$asunto= “CLUB5S: Recordatorio de Clave de Acceso”;
$cuerpo = “La clave solicitada para el acceso al Club5S es: $clave”;
$remite=”euskalit@euskalit.net”;
$sheader=$sheader.”From:”.$remite.”\nReply-To:”.$remite.”\n”;
$sheader=$sheader.”X-Mailer:PHP/”.phpversion().”\n”;
$sheader=$sheader.”Mime-Version: 1.0\n”;
$sheader=$sheader.”Content-Type: text/html”;
mail($destinatarios, $asunto, $cuerpo, $sheader);

Clase class.phpmailer.php


require_once “includes/class.phpmailer.php”;

if(validar_email($email)){

$mail = new phpmailer();
$mail->PluginDir = “includes/”;
$mail->Mailer = “smtp”;
$mail->Host = “smtp.tudominio.com”;
$mail->SMTPAuth = true;
$mail->Username = “tuusuario”;
$mail->Password = “password”;
$mail->From = “$from”;
$mail->FromName = “Nombre destinatario”;
$mail->Timeout=120;
$mail->AddAddress($email);
if (validar_email($copia)) $mail->AddBCC($copia);
$cuerpo=”$TEXTO”;
$mail->Body = “$texto”;
$mail->AltBody =”$texto”;
$mail->Subject = “$gaia”;
$exito = $mail->Send();
$intentos=1;
$envia=1;


//////////////////////////////////////////
// Este bucle se pone por si acaso falla
// el envío del mail para que lo vuelva a intentar.
//////////////////////////////////////////

while((!$exito)&&($intentos<5)&&($mail->ErrorInfo!=”SMTP Error: Data not accepted”)){

if (ws_estoy_en_modo_depuracion()) ws_salida($mail->ErrorInfo);
sleep(5);
$exito = $mail->Send();
$intentos=$intentos+1;

}

Bug: Error si direcciones no válidas.

Si la direccion no es válida, y no valida puede ser “”, sigue intentándolo, generando los siguientes problemas:

  1. No se sabe por qué no se está mandando.
  2. Para corregir esto en el bucle de envíos controlar la variable $mail->ErrorInfo que es la que tiene el error. Yo he puesto la línea de código if (ws_estoy_en_modo_depuracion()) ws_salida($mail->ErrorInfo) como método standard de control de fallos.

  3. En bucles de envío puede hacer cascar al proceso por exceder el límite de tiempo ya que así tarda unos 20 segs en pasar de un envio al siguiente.

Es importante validar las direcciones de correo que se utilicen, sea en el AddAddress, AddBCC.

Funcion validar direccion de correo

function validar_email($str){

if (preg_match(‘/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/’,$str)) return true;

}

Posted in documentacion | Tagged: , , | 1 Comment »

Formatear texto

Posted by portegag2 on January 29, 2009

En un cuadro de texto se mete un texto, que se guarda en la BD y al recuperarse para mostrarse como texto plano, no se muestran los retornos de carro.

Con la funcion nl2br($cadena) se recuperan estos retornos.

Posted in documentacion | Tagged: | Leave a Comment »

Hacer

Posted by portegag2 on January 28, 2009

Experiencias 5S:

Hace mal la actualización del valor de EMPRESA.

Existe una variable de sesion que es $empresa así que hay que actualizar en la BD la variable $k_empresa y hacer esto en el INSERT y UPDATE, poniendo este nombre a la combo.

Del fichero: verregistro5s.php va a inc_modif_5s.php, inc_meter_5s.php inc_mostrar_5s.php

Hacerlo.

Posted in club5s | Leave a Comment »

Compromiso CLUB5S PROVEEDORES

Posted by portegag2 on January 26, 2009

Lo de proveedores sigue mal. No aparece opción de modificar y en cambio sí que deja modificar lo del tipo de proveedor y fase.

Está pensado para que la modificación sólo pueda hacerla

Posted in txoko | Leave a Comment »

Calendarios

Posted by portegag2 on January 26, 2009

Fuentes:

http://mgarcia.info/2008/12/29/calendario-para-mootools-y-jquery/

Pasos:

Para insertar este calendario hay que hacer:

En el fichero php que contiene el fichero:

Incluir

<script src=”calendar/mootools.v1.1.js” type=”text/javascript”></script>
<script src=”calendar/calendar.js” type=”text/javascript”></script>
<link href=’calendar/calendar.css’ rel=’stylesheet’ type=’text/css’>

Definir el campo fecha como:

<input value=”<?php echo $valordia;?>” class=”ncalendar” name=”iniciod” size=”10″ maxlength=”20″ type=”text”  autocomplete=’off’ />

En el fichero calendar.js

Para que encuentre las imágenes, indicarle el path de estas:

/* configuration */
if (!Config)
this.config = {
Lng: lng,
imgNext: ‘calendar/img/next.gif‘,
imgPrev: ‘calendar/img/prev.gif‘,
imgCancel: ‘calendar/img/close.gif‘,
maxDate: new Date(‘01/01/2030′),
minDate: new Date(‘01/01/1990′),
format: ‘d/m/y’
};

Otra opcion

Pasos:

Para insertar este calendario hay que hacer:

En el fichero php que contiene el fichero:

Incluir

<script language=’JavaScript’ type=’text/javascript’ src=’../jsc/popcalendar.js’></script>

Definir el campo fecha como:

<input type=’text’ name=’plazo’ id=’plazo’ class=’i400′ autocomplete=’off’ onClick=”popUpCalendar(this, this.form.plazo, ‘dd/mm/yyyy’);” >

Nota

El autocomplete=’off’ se pone porque es muy poco elegante cómo queda el que salgan las fechas anteriores.

Posted in documentacion | Leave a Comment »

VIRTUAL HOST

Posted by portegag2 on January 26, 2009

Para configurar un virtual host hay que hacer dos pasos:

Añadir en:  C:/AppServ/Apache2.2/conf/extra/httpd-vhosts.conf

<VirtualHost 127.0.0.1:80>
ServerAdmin localhost@w2s.com
DocumentRoot “C:\AppServ\www\portega\fbgimnasia
ServerName fbgimnasia
</VirtualHost>

<Directory “C:\AppServ\www\portega\fbgimnasia“>
Allow from all
</Directory>

Añadir en: C:/WINDOWS/system32/drivers/etc/hosts

127.0.0.1       fbgimnasia

Ha de ser esta dirección 127.0.0.1

Posted in documentacion | Tagged: , , | 1 Comment »

hacer

Posted by portegag2 on January 20, 2009

Confirmar que sólo se ven los inscritos por la empresa.

Hacer el panel de control: da errores y creo que tengo una versión vieja en local. Bajar la versión del servidor y poner las modificaciones que haya metido para las inscripciones.

Incluir el control de número total de inscritos.

ERROR: Ahora en la visualización del evento al mostrar las inscripciones de este, para los usuarios, muestra mal el ORGANIZADOR.

Posted in club5s | Leave a Comment »