martes, 22 de diciembre de 2015

Php - Envio de correo con php

Codigo para enviar correos desde formulario html que llama a archivo php.
Para ello creamos un formulario en html, de la siguiente forma:

<html>
<head>
<title>Envio de correo</title>
</head>
<body>
<form action="enviarcorreo.php" method="post">
<input type="text" name="asunto"/>
<textarea name="cuerpo"></textarea>
<input type="submit" value="Enviar"/>
</form>
</body>
</html> 
 En el codigo html creamos el formulario que llama al archivo php que procesara los datos y creara el email a enviar, creamos un campo para el asunto y otro para el cuerpo del mensaje.
 <?php
$asunto=$_POST['asunto'];
$cuerpo=$_POST['cuerpo'];
 if (isset($asunto) && !empty($asunto) && isset($cuerpo) && !empty($cuerpo)){
  $destino="correo@gmail.com";
  $desde="From:"."ticoticotaa";
  mail($destino,$asunto,$cuerpo,$desde);
echo "Correo enviado con exito";
}else{
 echo"Problemas al enviar correo";
}
?>
En el archivo php tomamos las variables pasadas desde el formulario y creamos el email.
El codigo es autoexplicativo, espero os sea de utilidad.
Saludos.

viernes, 4 de diciembre de 2015

Php - Ejemplo pasar datos de Formulario a Factura

En este ejemplo, creamos un formulario con los datos necesarios para crear una factura,
este ejemplo se podria preparar para que tomara los datos de una base de datos, se vera mas adelante
El codigo seria asi:

<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html"/>
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" />   

<title>Formulario</title>
</head>
<body>
<h3>Ejemplo de formulario para</h3>
<h1>introducir datos Factura</h1>
<form  action="0012b.php" method="POST" class="form-horizontal" role="form">
        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Nombre empresa:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="nombreempresa"> <br>
        </div>
                    <label for="usuario" class="col-sm-3 control-label">Cif empresa:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="cifempresa"> <br>
        </div>
                    <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Direccion empresa:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="direccionempresa"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Nombre cliente:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="nombrecliente"> <br>
        </div>
                    <label for="usuario" class="col-sm-3 control-label">Codigo cliente:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="codigocliente"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Cif cliente:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="cifcliente"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Direccion cliente:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="direccioncliente"> <br>
        </div>
                    <label for="usuario" class="col-sm-3 control-label">Codigo Postal:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="codigopostal"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Fecha:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="fecha"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Localidad:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="localidad"> <br>
        </div>
                    <label for="usuario" class="col-sm-3 control-label">Provincia:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="provincia"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Num Factura:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="numerofactura"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Articulo:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="detalle"> <br>
        </div>
        </div>
                        <div class="form-group">
            <label for="usuario" class="col-sm-3 control-label">Importe base:</label>
      <div class="col-sm-2">
            <input class="form-control"type="text" name="base"> <br>
        </div>
        <input value="enviar" class="btn btn-default"type="submit">
        </div>
</form>
</body>
</html>


Creo un formulario, he introducido en la cabecera "HEAD" del archivo un enlace a bootstrap,
es un framework de css que facilita el formato de nuestra web.
En el formulario se introducen los datos y se pasan estos mediante el metodo POST.
Seguidamente se abre la pagina con la factura, dicha pagina tiene codigo para darle el estilo
necesario, normalmente esto se hace con CSS, pero aun no lo hemos visto, mas adelante pondre
una introduccion a CSS.
El codigo de la web que recibe los datos es:
<?php
//variables tomadas del formulario
$nombreempresa=$_POST['nombreempresa'];
$cifempresa=$_POST['cifempresa'];
$direccionempresa=$_POST['direccionempresa'];
$nombrecliente=$_POST['nombrecliente'];
$codigocliente=$_POST['codigocliente'];
$direccioncliente=$_POST['direccioncliente'];
$numerofactura=$_POST['numerofactura'];
$codigopostal=$_POST['codigopostal'];
$fecha=$_POST['fecha'];
$localidad=$_POST['localidad'];
$provincia=$_POST['provincia'];
$cifcliente=$_POST['cifcliente'];
$detalle=$_POST['detalle'];
$base=$_POST['base'];
$iva=$base*0.21;
$total=$base+$iva;
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html"/>
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" /> 
    <title>Factura</title>
</head>
<body>
 <div class="table-responsive">
<table class="table">
     <tr>
      <td><small><strong><?php echo $nombreempresa; ?></strong></small></td>
    </tr>
    <tr>
      <td><small>N.I.F: <?php echo $cifempresa; ?></small></td>
    </tr>
    <tr>
      <td><small><?php echo $direccionempresa; ?></small></td>
    </tr>
</table>

 <div class="table-responsive">
<table class="table">
    <th>Factura Nº <?php echo $numerofactura; ?></th>
    <tr>
        <td><strong>Fecha</strong>: <?php echo $fecha; ?></td>  
    </tr>
        <tr>
        <td><strong>Fecha Vencimiento</strong>: 26/10/2016</td>  
    </tr>
</table>
 <div class="table-responsive">
<table class="table">
    <th>Cliente</th>
    <tr>
      <td><strong>Id. Cliente</strong>: <?php echo $codigocliente; ?></td>     
    </tr>
    <tr>
      <td><strong>Cliente</strong>:<?php echo $codigocliente; ?> </td>     
    </tr>
    <tr>
        <td><strong>N.I.F</strong>: <?php echo $cifcliente; ?></td> 
    </tr>
    <tr>
      <td><strong>Domicilio</strong>: <?php echo $direccioncliente; ?></td> 
    </tr>
      <tr>
    <td><strong>C&oacute;digo Postal</strong>: <?php echo $codigopostal; ?></td>
  </tr>
  <tr>
    <td><strong>Localidad</strong>: <?php echo $localidad; ?></td>
  </tr>
    <tr>
    <td><strong>Provincia</strong>: <?php echo $provincia; ?></td>
  </tr>
  <tr>
    <td><strong>Pa&iacute;s</strong>: ESPAÑA</td>
    <td></td>
  </tr>
</table>   
      <table class="table">
      <tr>
    <th  colspan="4" class="center">Concepto</th>
    <th  class="center">Importe Total</th>
  </tr>
  <tr>
    <td colspan="4" class="center">
    <?php echo $detalle; ?>
    </td>
    <td class="center"><?php echo $base; ?></td>  </tr>   
</table>
<table class="table">
      <tr>
         <th>Base Imponible</th>
    <th>IVA 21 %</th>
    <th>Total</th>
  </tr>

      <tr>
      <td class="left"><?php echo $base; ?> €
    </td>
    <td class="left"><?php echo $iva; ?> €</td>
    <td class="left"><?php echo $total; ?> € </td>
  </tr>
</table>

<table class="table">
    <tr>
    <td colspan="3" class="left">Modalidad de pago: <strong>DOMICILIACION BANCARIA </strong> </td>
    </tr>
</table>
</div>
</body>
</html>

En este segundo codigo se toman los datos pasados por el metodo POST del formulario anterior,
despues pongo estos datos en variables situadas al principio del archivo.
Esas variables las vamos introduciendo entre el codigo HTML para que aparezcan donde queremos.
El codigo es autoexplicativo como ejemplo muy basico, se puede mejorar introduciendo acceso a
bases de datos de articulos, clientes, etc.

El ejemplo de esta pequeña introduccion esta en la web de Ejemplos.