Archive for php
Junio 3, 2008 at 10:12 am · Filed under php

Dado que el otro dÃa expliqué de una forma rápida cómo enviar emails a través de la función mail(), hoy voy a comentar con más detalle su uso.
La estructura general es la siguiente:
mail ($destino, $asunto, $mensaje, $cabeceras);
La dirección de destino se puede indicar de cualquiera de las siguientes formas:
mail(’nombre@empresa.com’);
mail(’nombre1@empresa.com, nombre2@empresa.com’);
mail(’Nombre <nombre@empresa.com>’);
mail(’Nombre1 <nombre1@empresa.com>, Nombre2 <nombre2@empresa.com>’);
Para indicar el asunto:
$asunto = ‘El asunto no debe exceder los 70 caracteres ni tener saltos de linea’;
Respecto al mensaje:
$mensaje = “Aqui va el contenido a enviar, para crear saltos de linea escribimos \n”;
Las cabeceras son las que más miga tienen, tenemos 4 opciones, podemos utilizar solamente una, o las 4 a la vez (separándolas con saltos de lÃnea).
//Dirección del remitente
From: Web <nombre@empresa.com>
//Dirección a quien responder
Reply-To: Nombre <nombre@empresa.com>
//Dirección a quien enviar una copia del mensaje
BCC: Nombre <nombre@empresa.com>
//Cabecera para enviar el email cómo HTML
Content-Type: text/html; charset=iso-8859-1
Y poco más, con esto ya queda explicada con más detalle la función mail(), que la disfrutéis ;P
Mayo 20, 2008 at 13:08 pm · Filed under javascript, php

Hoy voy a añadir un cachito de código más a lo dicho el otro dÃa sobre cómo enviar un formulario por php.
Esta vez quiero crear un formulario de contacto general en el que el usuario seleccione entre varias opciones a que departamento de la empresa quiere dirigirse y según el elegido, los datos se enviarán a una dirección de email o a otra.

Ej. Información se enviará el email a info@empresa.com
   Compras se enviará el email a compras@empresa.com
Explicado esto, me pongo manos a la obra.
Recuerda: escribo el post teniendo en cuenta que ya sabes enviar un formulario de contacto con php.
Para mostrar los departamentos al usuario lo hago a través de un Grupo de opciones.
Para ello ponemos todos los input del tipo “radio” que nos hagan falta, pero teniendo en cuenta que deben llevar el mismo “name” (para asà ser un grupo, y no botones de opción separados). Â
   <input type=”radio” name=”Departamento” value=”informacion@empresa.com” id=”Departamento_0″  /> Informacion
   <input type=”radio” name=”Departamento” value=”compras@empresa.com” id=”Departamento_1″ /> Compras
Â
Podemos agregar las opciones que queramos, teniendo en cuenta que la id debe ser correlativa.. empezando por “Departamento_0“ y continuando “Departamento_1, Departamento_2,..” (Departamento es el “name” que tiene mi grupo de opciones, tú puedes poner el que quieras).Â
Â
Y por último, en la propiedad “value” tenemos que escribir el email de cada opción.
Â
Vale, ya tenemos el grupo de opciones con sus respectivos emails, ahora vamos a conseguir que se envie a la dirección que corresponda.
Â
Antes agregábamos el email ‘a pelo‘ en la función mail() para que nos enviara nuestro formulario, pues esta vez lo vamos a poner a través de una variable. El código quedarÃa asÃ:
Â
$email = $_POST['Departamento'];
mail($email, $subject, $msg, “FROM: formulario@empresa.com<formulario@empresa.com>\n”);
En la variable $email recogemos la dirección de email que ha seleccionado el usuario y la pasamos cómo dirección de destino a la función mail() y.. ualá! mensaje enviado a donde querÃamos!
Â
Cómo extra voy a escribir una función javascript que nos validará que se haya seleccionado una opción, ya que si no tenemos ninguna seleccionada el formulario se enviarÃa al infinito y más allá.. xD
Â
function validarDepartamento(){
var valor=0;
for(i=0; ele=document.NameDelFormulario.elements[i]; i++){
  if (ele.type==’radio’)
  if (ele.checked){valor=1;break;}
}
if (valor==1){
  document. NameDelFormulario.submit();
}else{
  alert(’Seleccione el departamento al que desea enviar el email.’);
  return;
}
}
Para validar las opciones, creamos un bucle que recorre todos los “input radio” de nuestro form (acuérdate de cambiar NameDelFormulario por el “name” real que tiene tu formulario) y cuando llegue a uno seleccionado se detiene y devuelve el envÃo del formulario. Si no hay ninguno seleccionado, muestra un alerta al usuario pidiendole que seleccione uno.
Â
A que es sencillo?
Mayo 13, 2008 at 10:19 am · Filed under css, php

A la hora de aplicar estilos a una página nos podemos ahorrar muchos quebraderos de cabeza si utilizamos PHP junto con nuestro CSS.
A mi me encanta poner tooooodo el css en una hoja de estilos aparte, asà que voy a explicar (más o menos) cómo usar php en nuestra hoja de estilo.
1º Enlazamos la hoja de estilos a nuestra cabecera.
<link rel=”stylesheet” type=”text/css” href=”estilo.php” />
Atención: tiene que tener extensión .php sino no tirará ni para atrás el php que introduzcamos.
2º Creamos la hoja de estilo. Para que los navegadores reconozcan los estilos, hay que especificar al principio del todo la cabecera del documento cómo CSS.
<?php header(”Content-type: text/css”); ?>
Acordaros que el nombre que le hemos asignado es estilo.php.
Y listo.. ya puedes meter todo el php que quieras..
Para que quede un poquito más claro voy a crear un pequeño ejemplo de cómo conseguir que se cambie el color de fondo de forma aleatoria utilizando php y css por supuesto.
Mi hoja de estilo quedarÃa asÃ:
<?php header(”Content-type: text/css”);
//Creo un array con varios colores
$color[0]=’#ff0000′;
$color[1]=’#00ff00′;
$color[2]=’#0000ff’;
// Elijo un color aleatorio
$i=rand(0,2);
?>
/* indico donde quiero que aparezca el color aleatorio */
body { background-color: <?=$color[$i]?>;}
Y poco más que explicar, el archivo del ejemplo lo podéis ver aqui. Que bonito.. xD
Por cierto: Lo que he hecho con los colores, eso de elegir uno aleatorio, lo podéis hacer con una imagen, en vez de especificar el color, ponéis la ruta de la imagen. Y en lugar de añadirla a la propiedad background-color, la metéis en background-image y..
ualá! en un momento tenéis una cabecera de esas tan modernas que cambian cuando entras en la página ^^
Mayo 8, 2008 at 12:40 pm · Filed under php

Bueno, inauguro mi pequeña biblioteca de código con una función que utilizo muuuuuuuy a menudo!
Es una forma ‘fácil y  sencilla’ de enviar un formulario mediante php.. pego el código y voy explicando..
 // dentro del if tendremos que colocar el formulario, cada input debe tener su ‘name’ para poder enviar el contenido. Â
// al pulsar el botón enviar la acción del formulario se hará en la misma página, sin tener que llamar a una externa  Â
    Â
     <?php if (!isset($_POST['email'])) { ?>
  Â
      <form action=”<?=$_SERVER['PHP_SELF']?>” method=”post”>
      <h1>Formulario de contacto</h1>
      <p>Nombre:</p>
      <p><input name=”nombre” type=”text” id=”nombre” /></p>
      <p>Teléfono:</p>
      <p><input name=”telefono” type=”text” id=”telefono” /></p>
      <p>Email:</p>
      <p><input name=”email” type=”text” id=”email” /></p>
      <p>Mensaje:</p>
      <p><textarea name=”mensaje” rows=”6″ cols=”50″ id=”mensaje”></textarea></p>
      <p><input type=”reset” value=”borrar” /> <input type=”submit” value=”enviar” /></p>
      </form>
     Â
     <?php }else{
Â
// la variable mensaje almacena el contenido del email (los datos del formulario)
// la variable subject indica el asunto que tendrá nuestro mensaje
// y con la función mail enviamos el mensaje, los parámetros son: dirección de envio, asunto, mensaje, cabeceras (en mi caso pongo el remitente).
Â
$msg= “”;
$msg= “Mensaje del formulario de contacto de nnatali.com”;
$msg.= “\nNombre: “. $_POST['nombre'];
$msg.= “\nEmail: “.$_POST['email'];
$msg.= “\nTelefono: “. $_POST['telefono'];
$msg.= “\nMensaje: \n”.$_POST['mensaje'];
$remitente = $_POST['email'];
$subject = “Mensaje enviado desde nnatali.com por: “.$_POST['nombre'];
mail(’unanatali@gmail.com’, $subject, $msg, “FROM: $remitente”);
?>
// una vez se haya enviado el email correctamente, aparecerá un texto personalizable para que el usuario sepa que ha llegado bien a su destino : )
  Â
   <p><strong>Mensaje enviado.</strong><br />
Su mensaje se ha enviado correctamente, gracias por ponerse en contacto con nosotros</p>
<? } ?> Â Â
Â
Â
Y más o menos está explicadito.. si añades más campos al formulario acuérdate de añadirlos también en la variable $mensaje con su correspondiente ‘name’

Â
Para validarlo lo más fácil es:
1. Abrir el Dreamweaver.
2. Seleccionar el botón Submit.
3. Clicar en Inspector de etiquetas > Comportamientos.
(Si no lo tienes en el lateral, muestralo desde el menú Ventana > Inspector de etiquetas)
4. Seleccionar Validar formulario.
Â
Y tachán! En un momentito lo tienes válidado para que no se te cuelen emails en blanco.
Â
Hay formas mucho más curradas para validar y más especializadas, algún dÃa las explicaré ^^