Foros del Web » Programando para Internet » PHP »

envio de correo con php y mysql

Estas en el tema de envio de correo con php y mysql en el foro de PHP en Foros del Web. Hola a todos, tengo un problema y me gustaria que me ayuden con su experiencia, tratare de explicarme de la forma mas sencilla posible, bueno ...
  #1 (permalink)  
Antiguo 07/10/2011, 19:14
 
Fecha de Ingreso: abril-2011
Mensajes: 15
Antigüedad: 13 años
Puntos: 0
envio de correo con php y mysql

Hola a todos, tengo un problema y me gustaria que me ayuden con su experiencia, tratare de explicarme de la forma mas sencilla posible, bueno resulta lo siguiente, a un cliente le hice un panel donde desde su pagina web entran a un panel donde ellos pueden generar una orden de servicio, los datos del cliente quedan guardados en la BD y el cliente desde la pagina web puede ver el estatus de su equipo (si esta listo o no), el dueño de la tienda me pidio que cuando ellos hagan el cambio de estatus mande un correo electronico avisando al cliente que ya esta listo su equipo y puede pasarlo a buscar, no se si sea muy largo pero voy a colocar como esta diseñado el panel:

aqui el codigo del cuerpo:

Código HTML:
<div id="container">
    <div class="hidden"><!-- the modal box container - this div is hidden until it is called from a modal box trigger. see cleanity.js for details -->
    <div id="sample-modal"><h2 style="font-size:160%; font-weight:bold; margin:10px 0;">Modal Box Content</h2><p>Place your desired modal box content here</p></div>
    </div><!-- end of hidden -->
    <div id="header">
      <div id="top">
      <h1><a href="#">Telecomunicaciones Fams</a></h1>
      <p id="userbox">Hola <strong><?php echo $row_rsUsuarios['nombre']; ?> </strong>|<a href="logout.php"> Salir</a> <br />
      <small><?php include('fecha.php') ?> - <?php include('hora.php') ?></small></p>
      <span class="clearFix"></span>
      </div>
      <ul id="menu">
        <li><a href="indexl.php">PRINCIPAL</a></li>
        <li class="selected"><a href="ordenes.php">ORDENES DE REPARACION</a></li>
      </ul>
      <span class="clearFix"></span>
    </div><!-- end of #header -->

<div id="content">
	<div id="content-top">
    <h2>Panel de Administracion</h2>
      <a href="indexl.php" id="topLink">Volver</a> 
      <span class="clearFix"></span>
    </div><!-- end of div#content-top -->
      <div id="left-col">
          <div class="box">
              <h4 class="yellow">Menu</h4><!--end of div.box-container --></div><!-- end of div.box --><!--end of div.box --><!-- end of div.box -->
      </div> <!-- end of div#left-col -->
      
      <div id="mid-col">
      
      	<div class="box">      
      		<h4 class="white">Cambio de Status</h4>
        <div class="box-container">
        <form name="form" action="<?php echo $editFormAction; ?>" method="POST">
          <p>Nº de Orden: <input name="ordenID" type="text" id="ordenID" value="<?php echo $row_rsReparaciones['ordenID']; ?>" readonly="readonly" /></p>
          <p>Fecha de Entrada: <?php echo $row_rsReparaciones['fechaEN']; ?></p>
          <p>Fecha de Reparación: <input name="fechaRE" type="text" id="fechaRE" /></p>
          <p>Nombre: <?php echo $row_rsReparaciones['Nombre']; ?></p>
          <p>Marca: <?php echo $row_rsReparaciones['marca']; ?></p>
          <p>Modelo: <?php echo $row_rsReparaciones['modelo']; ?></p>
          <p>Serial: <?php echo $row_rsReparaciones['serial']; ?></p>
          <p>Fallas: <?php echo $row_rsReparaciones['fallas']; ?></p>
          <p>Estado Físico: <?php echo $row_rsReparaciones['estado_fisico']; ?></p>
          <p>Accesorios: <?php echo $row_rsReparaciones['accesorios']; ?></p>
          <p>Nº de Celular: <?php echo $row_rsReparaciones['n_celular']; ?></p>
          <p>Nº de Bloqueo: <?php echo $row_rsReparaciones['n_bloqueo']; ?></p>
          <p>Nº de Contacto: <?php echo $row_rsReparaciones['n_contacto']; ?></p>
          <p>Email: <?php echo $row_rsReparaciones['correo']; ?></p>
          <p>Recibido por: <?php echo $row_rsReparaciones['recibido_por']; ?></p>
          <p>Trabajo Realizado: <input name="trabajo_realizado" type="text" id="trabajo_realizado" /></p>
          <p>Reparado por: <input name="reparado_por" type="text" id="reparado_por" /></p>
          <p>Monto de la Reparación: <input name="monto_reparacion" type="text" id="monto_reparacion" /></p>
          <p>Estatus: <select name="estatus" id="estatus">
            <option selected="selected">seleccione el estatus</option>
            <option value="EN REPARACION">EN REPARACION</option>
            <option value="REPARADO">REPARADO</option>
            <option value="NO TIENE REPARACION">NO TIENE REPARACION</option>
            <option value="ESTREGADO">ENTREGADO</option>
          </select></p>
          <p>&nbsp;</p>
          <p><input name="" type="submit" value="Actualizar Orden" /></p>
          <input type="hidden" name="MM_update" value="form" />
        </form>
        </div>
        <!-- end of div.box-container -->
      	</div><!-- end of div.box --><!-- end of div.box -->
      
      </div><!-- end of div#mid-col -->
      
      <div id="right-col"><!-- end of div.box --><!-- end of div.box -->            
      </div><!-- end of div#right-col -->     
      
      <span class="clearFix">&nbsp;</span>     
</div><!-- end of div#content -->
<div class="push"></div>
</div><!-- end of #container -->

<div id="footer-wrap"></div> 
esta es la direccion de la pagina web: [URL="http://www.telefams.com"]http://www.telefams.com[/URL]

lo que quiero es que cuando el cliente actualize el estatus con el email que esta en la base de datos se envie un correo diciendole que su equipo ya esta listo.

por favor sean condecendientes conmigo, estoy muy nuevo con php!
  #2 (permalink)  
Antiguo 07/10/2011, 19:15
 
Fecha de Ingreso: abril-2011
Mensajes: 15
Antigüedad: 13 años
Puntos: 0
Respuesta: envio de correo con php y mysql

ah se me olvidaba, aqui esta el codigo PHP antes del cuerpo de la pagina:

Código PHP:
Ver original
  1. <?php require_once('../Connections/telefams.php'); ?>
  2. <?php
  3. if (!isset($_SESSION)) {
  4. }
  5. $MM_authorizedUsers = "admin,dataentry";
  6. $MM_donotCheckaccess = "false";
  7.  
  8. // *** Restrict Access To Page: Grant or deny access to this page
  9. function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
  10.   // For security, start by assuming the visitor is NOT authorized.
  11.   $isValid = False;
  12.  
  13.   // When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
  14.   // Therefore, we know that a user is NOT logged in if that Session variable is blank.
  15.   if (!empty($UserName)) {
  16.     // Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
  17.     // Parse the strings into arrays.
  18.     $arrUsers = Explode(",", $strUsers);
  19.     $arrGroups = Explode(",", $strGroups);
  20.     if (in_array($UserName, $arrUsers)) {
  21.       $isValid = true;
  22.     }
  23.     // Or, you may restrict access to only certain users based on their username.
  24.     if (in_array($UserGroup, $arrGroups)) {
  25.       $isValid = true;
  26.     }
  27.     if (($strUsers == "") && false) {
  28.       $isValid = true;
  29.     }
  30.   }
  31.   return $isValid;
  32. }
  33.  
  34. $MM_restrictGoTo = "login.php";
  35. if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {  
  36.   $MM_qsChar = "?";
  37.   $MM_referrer = $_SERVER['PHP_SELF'];
  38.   if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
  39.   if (isset($_SERVER['QUERY_STRING']) && strlen($_SERVER['QUERY_STRING']) > 0)
  40.   $MM_referrer .= "?" . $_SERVER['QUERY_STRING'];
  41.   $MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
  42.   header("Location: ". $MM_restrictGoTo);
  43.   exit;
  44. }
  45. ?>
  46. <?php
  47. if (!function_exists("GetSQLValueString")) {
  48. function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
  49. {
  50.   if (PHP_VERSION < 6) {
  51.     $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  52.   }
  53.  
  54.   $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
  55.  
  56.   switch ($theType) {
  57.     case "text":
  58.       $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  59.       break;    
  60.     case "long":
  61.     case "int":
  62.       $theValue = ($theValue != "") ? intval($theValue) : "NULL";
  63.       break;
  64.     case "double":
  65.       $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
  66.       break;
  67.     case "date":
  68.       $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
  69.       break;
  70.     case "defined":
  71.       $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
  72.       break;
  73.   }
  74.   return $theValue;
  75. }
  76. }
  77.  
  78. $editFormAction = $_SERVER['PHP_SELF'];
  79. if (isset($_SERVER['QUERY_STRING'])) {
  80.   $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
  81. }
  82.  
  83. if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form")) {
  84.   $updateSQL = sprintf("UPDATE reparaciones SET fechaRE=%s, trabajo_realizado=%s, reparado_por=%s, monto_reparacion=%s, estatus=%s WHERE ordenID=%s",
  85.                        GetSQLValueString($_POST['fechaRE'], "text"),
  86.                        GetSQLValueString($_POST['trabajo_realizado'], "text"),
  87.                        GetSQLValueString($_POST['reparado_por'], "text"),
  88.                        GetSQLValueString($_POST['monto_reparacion'], "text"),
  89.                        GetSQLValueString($_POST['estatus'], "text"),
  90.                        GetSQLValueString($_POST['ordenID'], "int"));
  91.  
  92.   mysql_select_db($database_telefams, $telefams);
  93.   $Result1 = mysql_query($updateSQL, $telefams) or die(mysql_error());
  94.  
  95.   $updateGoTo = "indexl.php";
  96.   if (isset($_SERVER['QUERY_STRING'])) {
  97.     $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
  98.     $updateGoTo .= $_SERVER['QUERY_STRING'];
  99.   }
  100.   header(sprintf("Location: %s", $updateGoTo));
  101. }
  102.  
  103. $colname_rsUsuarios = "-1";
  104. if (isset($_SESSION['MM_Username'])) {
  105.   $colname_rsUsuarios = $_SESSION['MM_Username'];
  106. }
  107. mysql_select_db($database_telefams, $telefams);
  108. $query_rsUsuarios = sprintf("SELECT * FROM usuarios WHERE usuario = %s", GetSQLValueString($colname_rsUsuarios, "text"));
  109. $rsUsuarios = mysql_query($query_rsUsuarios, $telefams) or die(mysql_error());
  110. $row_rsUsuarios = mysql_fetch_assoc($rsUsuarios);
  111. $totalRows_rsUsuarios = mysql_num_rows($rsUsuarios);
  112.  
  113. $colname_rsReparaciones = "-1";
  114. if (isset($_GET['ordenID'])) {
  115.   $colname_rsReparaciones = $_GET['ordenID'];
  116. }
  117. mysql_select_db($database_telefams, $telefams);
  118. $query_rsReparaciones = sprintf("SELECT * FROM reparaciones WHERE ordenID = %s", GetSQLValueString($colname_rsReparaciones, "int"));
  119. $rsReparaciones = mysql_query($query_rsReparaciones, $telefams) or die(mysql_error());
  120. $row_rsReparaciones = mysql_fetch_assoc($rsReparaciones);
  121. $totalRows_rsReparaciones = mysql_num_rows($rsReparaciones);
  122. ?>
  #3 (permalink)  
Antiguo 08/10/2011, 03:56
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 17 años, 6 meses
Puntos: 32
Respuesta: envio de correo con php y mysql

Hola Flabio.

Me ha gustado la página, tiene un buen diseño pero te pregunta una cosa ¿Este código lo has hecho tu? te lo pregunto porque si has hecho todo eso, ¿como te quedas atascado en enviar un simple email?

Mirando por encima tu código, ya que es algo extenso y por pereza, te diré que en cuanto hagas la actualización en la base de datos del estado del equipo, envias un email, usando la funcion mail de php... es así de simple, lo que no veo en el código es donde se hace esta actualización.

He visto que hay un update en la bd, pues ponlo justo abajo del mysql_query

Saludos.
  #4 (permalink)  
Antiguo 08/10/2011, 15:22
 
Fecha de Ingreso: abril-2011
Mensajes: 15
Antigüedad: 13 años
Puntos: 0
Respuesta: envio de correo con php y mysql

hola gogupe, no es tan sencillo, vuelvo y te digo estoy muy nuevo en base de datos y php, la actualizacion del registro lo hice con el asistente de formulario de actualizacion de registro que da dreamweaver, lo otro es que al al pedir la peticion a la base de datos el me muestra los datos del cliente y el empleado lo que hace es insertar la fecha de reparacion, el trabajo realizado, el monto de la reparacion, etc... a lo que voy es que al llamar esos datos en donde esta incluida la direccion email del cliente se envie el correo al cliente avisandole que su equipo esta listo! seria de gran ayuda algun ejemplo! con respecto a lo de envio de email desde formulario de contacto eso ya lo se hacer!

Etiquetas: correo, mysql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:16.