<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DSM :: Diseño y Programación Web</title>
	<atom:link href="http://www.dsm-web.es/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dsm-web.es</link>
	<description>Diseño, Maquetación, Programación de páginas Web</description>
	<lastBuildDate>Wed, 24 Feb 2010 23:11:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Mi nueva adquisición Dell Vostro 1510</title>
		<link>http://www.dsm-web.es/2009/01/07/mi-nueva-adquisicion-dell-vostro-1510/</link>
		<comments>http://www.dsm-web.es/2009/01/07/mi-nueva-adquisicion-dell-vostro-1510/#comments</comments>
		<pubDate>Wed, 07 Jan 2009 19:23:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Varios]]></category>
		<category><![CDATA[asus]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[ordenador]]></category>
		<category><![CDATA[portátil]]></category>

		<guid isPermaLink="false">http://www.dsm-web.es/?p=142</guid>
		<description><![CDATA[Después de muchas vueltas &#8230;&#8230;&#8230;&#8230;. de pensarlo durante bastante tiempo, por fin he cambiado de portátil. He pasado de un Asus (no me acuerdo bien del modelo) a un Dell Vostro 1510. No es que estuviera descontento con el Asus pero con la caña que le he metido casi tenía la pantalla colgando, y ya [...]]]></description>
			<content:encoded><![CDATA[<p>Después de muchas vueltas &#8230;&#8230;&#8230;&#8230;. de pensarlo durante bastante tiempo, por fin he cambiado de portátil.</p>
<p>He pasado de un Asus (no me acuerdo bien del modelo) a un Dell Vostro 1510. No es que estuviera descontento con el Asus pero con la caña que le he metido casi tenía la pantalla colgando, y ya que cambio de portátil pues cambio de modelo para ir probando.</p>
<p>Llevo una semana con él y la verdad es que estoy contento con la compra, el servicio de venta y atención al público.</p>
<p>Ya os iré contando &#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dsm-web.es/2009/01/07/mi-nueva-adquisicion-dell-vostro-1510/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lectura y escritura de archivos de texto con PHP</title>
		<link>http://www.dsm-web.es/2008/08/30/lectura-y-escritura-de-archivos-de-texto-con-php/</link>
		<comments>http://www.dsm-web.es/2008/08/30/lectura-y-escritura-de-archivos-de-texto-con-php/#comments</comments>
		<pubDate>Sat, 30 Aug 2008 11:15:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[editar ficheros de texto con PHP]]></category>
		<category><![CDATA[escribir en ficheros de texto con PHP]]></category>
		<category><![CDATA[leer ficheros de texto con PHP]]></category>

		<guid isPermaLink="false">http://www.dsm-web.es/?p=88</guid>
		<description><![CDATA[Mucha gente me comenta los problemas que les supone la lectura y escritura de archivos de texto con PHP, así que nada voy a poner un pequeño ejemplo que espero que sea útil para todo aquel que quiera ponerse con ello. Tendremos que tener un fichero que contenga el contenido a editar, en este caso archivo.txt, [...]]]></description>
			<content:encoded><![CDATA[<p>Mucha gente me comenta los problemas que les supone la lectura y escritura de archivos de texto con PHP, así que nada voy a poner un pequeño ejemplo que espero que sea útil para todo aquel que quiera ponerse con ello.</p>
<p>Tendremos que tener un fichero que contenga el contenido a editar, en este caso archivo.txt, que se encuentra en el mismo directorio que el archivo .php que pongo a continuación. Si lo poneis en otro directorio tendréis que escribir la ruta hacia el archivo.</p>
<p><span id="more-88"></span></p>
<p>Creo un archivo donde incluyo el código PHP, seguido va el código HTML que contiene un textarea que muestra el contenido del archivo para poder editarlo.</p>
<pre><code class="php">&lt;?php
if(isset($_POST['boton'])){
  // si magic quotes esta activo con stripslashes quitamos los caracteres
  //de escape que aparecen
  if (get_magic_quotes_gpc()){$texto = stripslashes($_POST['texto']);}

  // intentamos abrir el archivo
  // la w: abre el archivo para escritura desde el inicio del archivo,
  //si este existe borra su contenido sino lo intenta crear
  @ $fp = fopen("archivo.txt", 'w');
  if(!$fp){
    echo '&lt;p style="color: #ff0000"&gt;
            &lt;strong&gt;No se pudo abrir el archivo
            &lt;/strong&gt;
            &lt;/p&gt;';
    exit;
  }
// para escribir en el archivo,
//strlen($texto) nos da la longitud de la cadena del archivo
fwrite($fp, $texto, strlen($texto));
fclose($fp);
}
// para leer el contenido del archivo
$archivo = file_get_contents("archivo.txt");
?&gt;
</code></pre>
<p>&#8230; va seguido &#8230;</p>
<pre><code class="html">&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
&lt;title&gt;.: EDIT FILE :.&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id="contenido"&gt;
  &lt;strong&gt;Archivo&lt;/strong&gt;
  &lt;form method="post" action="&lt;?php echo $_SERVER['PHP_SELF'];?&gt;"&gt;
    &lt;textarea cols="80" rows="40" name="texto"&gt;
	  &lt;?php echo $archivo;?&gt;
    &lt;/textarea&gt;
    &lt;br /&gt;
    &lt;input type="submit" name="boton" value="Guardar"&gt;
  &lt;/form&gt;

&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</code></pre>
<p>Hasta aquí es todo el código necesario para hacer lo que queremos, leer y editar el archivo.</p>
<p>La función <em>fopen </em>se utiliza para abrir el archivo, se le pueden pasar cuatro parámetros pero normalmente se usan sólo dos, la ruta hacia el archivo (en este caso el nombre del archivo ya que esta en el mismo directorio) y el otro dice que hacer con el archivo (en este caso w).</p>
<p>Las opciones más comunes son:</p>
<ul>
<li>r     Lectura, empezando desde el inicio del archivo.</li>
<li>r+   Lectura y escritura empezando desde el inicio del archivo.</li>
<li>w    Escritura empezando desde el inicio. Si el archivo existe borra su contenido, sino lo crea.</li>
<li>w+  Lectura y escritura empezando desde el inicio. Si el archivo existe borra su contenido, sino lo crea.</li>
<li>x     Escritura empezando desde el inicio. Si existe no se abre y se genera una advertencia.</li>
<li>x     Lectura y escritura empezando desde el inicio. Si existe no se abre y se genera una advertencia.</li>
<li>a     Adjunción ,escritura desde el final del archivo. Si no existe lo crea.</li>
<li>a+   Adjunción ,escritura y lectura desde el final del archivo. Si no existe lo crea.</li>
<li>b     Binario, se usa en combinación con los otros, se usa para los sistemas que distinguen entre archivos binarios y los de texto (pe, windows).</li>
<li>t      En combinación con los otros, unicamente para windows. Nose recomienda su uso, primero hay que adaptar el código para que funcione con la opción b.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.dsm-web.es/2008/08/30/lectura-y-escritura-de-archivos-de-texto-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Envío de e-mails con PHP &#8211; Part.3</title>
		<link>http://www.dsm-web.es/2008/08/28/envio-de-e-mails-con-php-part3/</link>
		<comments>http://www.dsm-web.es/2008/08/28/envio-de-e-mails-con-php-part3/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 14:08:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[boletín de noticias]]></category>
		<category><![CDATA[emails]]></category>
		<category><![CDATA[envio de emails desde base de datos]]></category>
		<category><![CDATA[envio de mails desde PHP]]></category>
		<category><![CDATA[PHPMailer]]></category>

		<guid isPermaLink="false">http://www.dsm-web.es/?p=79</guid>
		<description><![CDATA[Esta vez, vamos a realizar el envío utilizando direcciones almacenadas en una base de datos (mysql), por lo tanto, no necesitaremos ningún formulario previo para recoger datos ya que los sacaremos de la BBDD. Suponemos que tenemos una tabla que contiene la información necesaria, en este caso con el email y el nombre nos vale, [...]]]></description>
			<content:encoded><![CDATA[<p>Esta vez, vamos a realizar el envío utilizando direcciones almacenadas en una base de datos (mysql), por lo tanto, no necesitaremos ningún formulario previo para recoger datos ya que los sacaremos de la BBDD.</p>
<p>Suponemos que tenemos una tabla que contiene la información necesaria, en este caso con el email y el nombre nos vale, con una consulta sacamos a un array el nombre y el email de los destinatarios del mensaje. De manera que tenemos:</p>
<p><span id="more-79"></span></p>
<pre><code>&lt;?php
require ($_SERVER['DOCUMENT_ROOT']."/classes/class.phpmailer.php");
require ($_SERVER['DOCUMENT_ROOT']."/classes/language/phpmailer.lang-es.php");

//conexión a la base de datos
$link = mysql_connect("host","usuario_BBDD", "password");
mysql_select_db("base_de_datos", $link)

//Consulta a la Base de Datos
$sql  = "SELECT nombre, email FROM agenda";
$result = mysql_query($sql);

$mail = new PHPMailer(); //instanciamos un obeto de la clase
$mail-&gt;From     = info@prueba.com; //ponemos el mail del remitente
$mail-&gt;FromName = Administración Prueba;
$mail-&gt;CharSet  = "utf-8";// también podemos elegir la codificación
//de carácteres, para visualizar correctamente el mensaje

/*en la variale $body guardamos el texto en HTML, así podremos dar estilo
a nuestros mails*/
$body = "Aquí va en contenido del email en formato HTML";

/* en la variale $text_body guardamos el texto en formato plano, de esta manera
si el cliente de correo no lee formato HTML mostrará el mensaje en
formato de texto*/
$text_body .= "Aquí va en contenido del email en texto plano\r\n";

//Ahora recorremos en un con un bucle el contenido de la consulta
while($row = mysql_fetch_assoc ($result)){
    $mail-&gt;Body    = $body;
    $mail-&gt;AltBody = $text_body;
    $mail-&gt;AddAddress($row["email"], $row["nombre"]);
    $mail-&gt;Body    = $body;
    $mail-&gt;AltBody = $text_body;
    $mail-&gt;Subject = "Mensaje para ...". $row["nombre"]; //el asunto del mensaje
    if(!$mail-&gt;Send()){
       echo "No se ha podido enviar a ".$row["email"];
    } 

    // limpiamos las direcciones para realizar un único envio por email, 
    //sino en el siguiente bucle se enviaría de nuevo
    $mail-&gt;ClearAddresses();
}
?&gt;
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.dsm-web.es/2008/08/28/envio-de-e-mails-con-php-part3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Envío de e-mails con PHP &#8211; Part.2</title>
		<link>http://www.dsm-web.es/2008/08/25/envio-de-e-mails-con-php-part2/</link>
		<comments>http://www.dsm-web.es/2008/08/25/envio-de-e-mails-con-php-part2/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 19:02:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[archivos adjuntos en formularios]]></category>
		<category><![CDATA[envio de formularios con php]]></category>
		<category><![CDATA[envio de mails con php]]></category>
		<category><![CDATA[formulario para adjuntar archivos]]></category>
		<category><![CDATA[hacer formulario con archivos adjuntos de manera sencilla]]></category>
		<category><![CDATA[juego de caracteres en mails]]></category>
		<category><![CDATA[mail()]]></category>
		<category><![CDATA[PHPMailer]]></category>

		<guid isPermaLink="false">http://www.dsm-web.es/?p=36</guid>
		<description><![CDATA[Ya hemos visto como funciona la clase PHPMailer, ahora vamos a ver como adjuntar un archivo. Como se ve no cambia mucho, sólo hay que escribir un par de líneas más. Se supone que ya se han subido los archivos al servidor. La estructura es la siguiente: Cambiamos un poco el archivo form_contacto.php: &#60;form id=&#8221;id&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Ya hemos visto como funciona la clase PHPMailer, ahora vamos a ver como adjuntar un archivo.</p>
<p>Como se ve no cambia mucho, sólo hay que escribir un par de líneas más.</p>
<p>Se supone que ya se han subido los archivos al servidor.</p>
<p><span id="more-36"></span></p>
<p>La estructura es la siguiente:<br />
Cambiamos un poco el archivo form_contacto.php:<br />
&lt;form id=&#8221;id&#8221; action=&#8221;enviar.php&#8221;  method=&#8221;post&#8221; enctype=&#8221;multipart/form-data&#8221;&gt;<br />
Nombre: &lt;input type=&#8221;nombre&#8221; value=&#8221;" /&gt;<br />
Apellidos: &lt;input type=&#8221;apellidos&#8221; value=&#8221;" /&gt;<br />
Email: &lt;input type=&#8221;email&#8221; value=&#8221;" /&gt;<br />
Consulta: &lt;input type=&#8221;consulta&#8221; value=&#8221;" /&gt;<br />
Archivo: &lt;input type=&#8221;file&#8221; name=&#8221;archivo&#8221; /&gt;<br />
&lt;/form&gt;</p>
<p>Creamos el archivo enviar.php que es que va a llamar a la clase PHPMalier y va a realizar el envio:<br />
/*<br />
* Si por ejemplo hemos creado la carpeta classes en raíz,<br />
*hacemos el require poniendo la ruta absoluta hacia la clase<br />
* Estoy suponiendo que el archivo enviar.php (este archivo) esta en raíz<br />
*/<br />
require ($_SERVER['DOCUMENT_ROOT'].&#8221;/classes/class.phpmailer.php&#8221;);<br />
require ($_SERVER['DOCUMENT_ROOT'].&#8221;/classes/language/phpmailer.lang-es.php&#8221;);</p>
<p>$mail = new PHPMailer(); //instanciamos un objeto de la clase<br />
$mail-&gt;From     = $_POST['email']; //ponemos el mail del remitente<br />
$mail-&gt;FromName = $_POST['nombre'].&#8221; &#8220;. $_POST['apellidos'];<br />
$mail-&gt;CharSet  = &#8220;utf-8&#8243;;// también podemos elegir la codificación<br />
//de carácteres, para visualizar correctamente el mensaje<br />
$mail-&gt;AddAddress(&#8220;dsm@dsm-web.es&#8221;, &#8220;Administrador&#8221;);// emails de destino<br />
$mail-&gt;Subject = &#8216;Consulta desde la web&#8230;&#8217;; //el asunto del mensaje</p>
<p>/*en la variale $body guardamos el texto en HTML, así podremos dar estilo<br />
a nuestros mails*/<br />
$body .= &#8220;&lt;p style = &#8216;font-size:12px&#8217;&gt;Contenido de la consulta:&lt;br /&gt;&#8221;;<br />
$body .= &#8220;Nombre y Apellidos: &#8220;.$_POST['nombre'].&#8221; &#8220;.$_POST['apellidos'].&#8221; &lt;br /&gt;<br />
 Correo Electrónico: &#8220;.$_POST['email'].&#8221; &lt;br /&gt;<br />
 Consulta: &#8220;.$_POST['consulta'].&#8221; &lt;/p&gt;&#8221;;</p>
<p>/* en la variale $text_body guardamos el texto en formato plano, de esta manera<br />
si el cliente de correo no lee formato HTML mostrará el mensaje en<br />
formato de texto*/<br />
$text_body .= &#8220;Contenido de la consulta:\r\n&#8221;;<br />
$text_body .= &#8220;Nombre y Apellidos: &#8220;.$_POST['nombre'].&#8221; &#8220;.$_POST['apellidos'].&#8221; \n<br />
 Correo Electrónico: &#8220;.$_POST['email'].&#8221; \n<br />
 Consulta: &#8220;.$_POST['consulta'].&#8221; \n&#8221;;</p>
<p>$mail-&gt;Body    = $body;<br />
$mail-&gt;AltBody = $text_body;<br />
// Podemos controlar el tipo de archivos que se pueden adjuntar<br />
/* Aquí teneis los tipos de archivo más comunes<br />
$tipos = array(&#8220;application/rar&#8221;,<br />
&#8220;application/x-rar-compressed&#8221;,<br />
&#8220;application/arj&#8221;,<br />
&#8220;application/excel&#8221;,<br />
&#8220;application/gnutar&#8221;,<br />
&#8220;application/octet-stream&#8221;,<br />
&#8220;application/pdf&#8221;,<br />
&#8220;application/powerpoint&#8221;,<br />
&#8220;application/postscript&#8221;,<br />
&#8220;application/plain&#8221;,<br />
&#8220;application/rtf&#8221;,<br />
&#8220;application/vocaltec-media-file&#8221;,<br />
&#8220;application/wordperfect&#8221;,<br />
&#8220;application/x-bzip&#8221;,<br />
&#8220;application/x-bzip2&#8243;,<br />
&#8220;application/x-compressed&#8221;,<br />
&#8220;application/x-excel&#8221;,<br />
&#8220;application/x-gzip&#8221;,<br />
&#8220;application/x-latex&#8221;,<br />
&#8220;application/x-midi&#8221;,<br />
&#8220;application/x-msexcel&#8221;,<br />
&#8220;application/x-rtf&#8221;,<br />
&#8220;application/x-sit&#8221;,<br />
&#8220;application/x-stuffit&#8221;,<br />
&#8220;application/x-shockwave-flash&#8221;,<br />
&#8220;application/x-troff-msvideo&#8221;,<br />
&#8220;application/x-zip-compressed&#8221;,<br />
&#8220;application/xml&#8221;,<br />
&#8220;application/zip&#8221;,<br />
&#8220;application/msword&#8221;,<br />
&#8220;application/mspowerpoint&#8221;,<br />
&#8220;application/vnd.ms-excel&#8221;,<br />
&#8220;application/vnd.ms-powerpoint&#8221;,<br />
&#8220;application/vnd.ms-word&#8221;,<br />
&#8220;application/vnd.ms-word.document.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.wordprocessingml.document&#8221;,<br />
&#8220;application/vnd.ms-word.template.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.wordprocessingml.template&#8221;,<br />
&#8220;application/vnd.ms-powerpoint.template.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.presentationml.template&#8221;,<br />
&#8220;application/vnd.ms-powerpoint.addin.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.ms-powerpoint.slideshow.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.presentationml.slideshow&#8221;,<br />
&#8220;application/vnd.ms-powerpoint.presentation.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.presentationml.presentation&#8221;,<br />
&#8220;application/vnd.ms-excel.addin.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.ms-excel.sheet.binary.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.ms-excel.sheet.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet&#8221;,<br />
&#8220;application/vnd.ms-excel.template.macroEnabled.12&#8243;,<br />
&#8220;application/vnd.openxmlformats-officedocument.spreadsheetml.template&#8221;,<br />
&#8220;audio/*&#8221;,<br />
&#8220;image/*&#8221;,<br />
&#8220;video/*&#8221;,<br />
&#8220;multipart/x-zip&#8221;,<br />
&#8220;multipart/x-gzip&#8221;,<br />
&#8220;text/richtext&#8221;,<br />
&#8220;text/plain&#8221;,<br />
&#8220;text/xml&#8221;);<br />
*/</p>
<p>if($_FILES['archivo']['type'] == &#8216;application/msword&#8217;){<br />
$mail-&gt;AddAttachment($_FILES['archivo']['tmp_name'],$_FILES['archivo']['name']);<br />
}</p>
<p>if(!$mail-&gt;Send()){<br />
   echo &#8220;Error en el envio &#8220;.$mail-&gt;ErrorInfo. &#8220;&lt;br&gt;&#8221;;<br />
}else{<br />
   echo &#8220;Envio realizado con éxito&#8221;;<br />
}</p>
<p>// Si tenemos un bucle donde recorremos por ejemplo emails guardados en<br />
//una base de datos,<br />
// limpiamos las direcciones para realizar un único envio por email<br />
$mail-&gt;ClearAttachments();<br />
$mail-&gt;ClearAddresses();<br />
$mail-&gt;ClearBCCs();</p>
<p>En el siguiente POST explicaré como enviar mails desde una base de datos, pudiendo darle formato HTML, al cuerpo del mensaje.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dsm-web.es/2008/08/25/envio-de-e-mails-con-php-part2/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Envío de e-mails con PHP</title>
		<link>http://www.dsm-web.es/2008/08/22/envio-de-emails-con-php/</link>
		<comments>http://www.dsm-web.es/2008/08/22/envio-de-emails-con-php/#comments</comments>
		<pubDate>Fri, 22 Aug 2008 18:32:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[envio de formularios con php]]></category>
		<category><![CDATA[envio de mails con php]]></category>
		<category><![CDATA[juego de caracteres en mails]]></category>
		<category><![CDATA[mail()]]></category>
		<category><![CDATA[PHPMailer]]></category>

		<guid isPermaLink="false">http://www.dsm-web.es/?p=1</guid>
		<description><![CDATA[Voy a comentar como funciona la clase de PHP PHPMailer, es una clase que funciona muy bien para el envío de mails y facilita mucho el trabajo, sobre todo los problemas de juego de carácteres y evitar que envíen los mails a la carpeta spam. Pasos a seguir: Descargamos la clase: http://sourceforge.net/project/showfiles.php?group_id=26031 Creamos una carpeta [...]]]></description>
			<content:encoded><![CDATA[<p>Voy a comentar como funciona la clase de PHP PHPMailer, es una clase que funciona muy bien para el envío de mails y facilita mucho el trabajo, sobre todo los problemas de juego de carácteres y evitar que envíen los mails a la carpeta spam.</p>
<p>Pasos a seguir:</p>
<ul>
<li>Descargamos la clase: <a href="http://sourceforge.net/project/showfiles.php?group_id=26031">http://sourceforge.net/project/showfiles.php?group_id=26031</a></li>
<li>Creamos una carpeta en el servidor llamada classes y subimos vía FTP lo siguiente:
<ul>
<li>el archivo class.phpmailer.php</li>
</ul>
<ul>
<li>la carpeta languages</li>
</ul>
</li>
</ul>
<p><a href="http://sourceforge.net/project/showfiles.php?group_id=26031"></a></p>
<p><span id="more-1"></span></p>
<p>La estructura es la siguiente:<br />
Creamos el archivo form_contacto.php e incluimos el formulario que se quiera, como ejemplo:</p>
<pre><code>&lt;form id="id" action="enviar.php"  method="post"&gt;
Nombre: &lt;input type="nombre" value="" /&gt;
Apellidos: &lt;input type="apellidos" value="" /&gt;
Email: &lt;input type="email" value="" /&gt;
Consulta: &lt;input type="consulta" value="" /&gt;
&lt;/form&gt;

</code></pre>
<p>Creamos el archivo enviar.php que es que va a llamar a la clase PHPMalier y va a realizar el envio:</p>
<pre><code>&lt;?php
require ($_SERVER['DOCUMENT_ROOT']."/classes/class.phpmailer.php");
require ($_SERVER['DOCUMENT_ROOT']."/classes/language/phpmailer.lang-es.php");

$mail = new PHPMailer(); //instanciamos un obeto de la clase
$mail-&gt;From     = $_POST['email']; //ponemos el mail del remitente
$mail-&gt;FromName = $_POST['nombre']." ". $_POST['apellidos'];
$mail-&gt;CharSet  = "utf-8";// también podemos elegir la codificación
//de carácteres, para visualizar correctamente el mensaje
$mail-&gt;AddAddress("admin@prueba", "Administrador");// emails de destino
$mail-&gt;AddBCC("info@prueba.com", "Admin");// emails de destino con copia oculta
$mail-&gt;Subject = 'Consulta desde la web...'; //el asunto del mensaje

/*en la variale $body guardamos el texto en HTML, así podremos dar estilo
a nuestros mails*/
$body .= "&lt;p style = 'font-size:12px'&gt;Contenido de la consulta:&lt;br /&gt;";
$body .= "&lt;p style = 'font-size:12px'&gt;
  Nombre y Apellidos: ".$_POST['nombre']." ".$_POST['apellidos']." &lt;br /&gt;
  Correo Electrónico: ".$_POST['email']." &lt;br /&gt;
  Consulta: ".$_POST['consulta']." &lt;br /&gt;";

/* en la variale $text_body guardamos el texto en formato plano, de esta manera
si el cliente de correo no lee formato HTML mostrará el mensaje en
formato de texto*/
$text_body .= "Contenido de la consulta:\r\n";
$text_body .= "Nombre y Apellidos: ".$_POST['nombre']." ".$_POST['apellidos']." \n
  Correo Electrónico: ".$_POST['email']." \n
  Consulta: ".$_POST['consulta']." \n";

$mail-&gt;Body    = $body;
$mail-&gt;AltBody = $text_body;
if(!$mail-&gt;Send()){echo "Error en el envio&lt;br&gt;";}else{echo "Envio realizado con éxito";}

// Si tenemos un bucle donde recorremos por ejemplo emails guardados en
//una base de datos,
// limpiamos las direcciones para realizar un único envio por email
$mail-&gt;ClearAddresses();
$mail-&gt;ClearBCCs();
?&gt;</code></pre>
<p>En el siguiente POST explicaré como enviar datos adjuntos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dsm-web.es/2008/08/22/envio-de-emails-con-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

