Ver Mensaje Individual
  #42 (permalink)  
Antiguo 31/10/2015, 05:29
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 8 meses
Puntos: 214
Respuesta: No envia el email por fecha

Cita:
Iniciado por pilucho Ver Mensaje
me piensas cobrar por la auçyuda en este foro? si es asi esta mi correo en tu scrip de tu blog deja tu paypal o numero de cuenta y te deposito si es el caso, gracias por la ayuda seguire buscando como resolver llevo años y jamas he tenido estas respuestas, quiza los moderadores hayan cambiado las reglas, y despues de uff años vuelvo a entrar solo cuando lo necesito como es en esta oportunidad, estare atento a sus comentarios o email estimado mortiprogramador, muchas gracias
Pues no sería mala idea cobrar por todo el soporte dado,
pero no tengo esa intención, la idea era que el aprendizaje quedara...

Sugiero que a la próxima simplemente se informe en el tema
que se necesita un código funcional, y que no se tiene tiempo
para detallar el funcionamiento, con eso ambas partes van a la fija.

Finalmente, dejo esta solución.

Código SQL:
Ver original
  1. CREATE TABLE reminder_events (
  2. reminder_id BIGINT(20) NOT NULL AUTO_INCREMENT,
  3. reminder_name VARCHAR(255) NOT NULL DEFAULT '',
  4. reminder_desc text,
  5. reminder_date VARCHAR(8) NOT NULL DEFAULT '0',
  6. PRIMARY KEY (reminder_id),
  7. KEY reminder_id (reminder_id)
  8. );

database.inc.php
Código PHP:
Ver original
  1. <?php
  2. $mysql_link = mysql_connect("servidor", "usuario", "password");
  3. mysql_select_db("basededatos") or die("No se pudo seleccionar la base de datos");
  4. ?>

reminder_add.php
Código PHP:
Ver original
  1. <?php
  2. include('database.inc.php'); // Our database connectivity file
  3. if(empty($_POST))
  4. {
  5. ?>
  6. <html>
  7. <head><title>Agregar Recordatorio</title></head>
  8. <body>
  9. <form name="setup_reminder" action="reminder_add.php" method="post">
  10. <table border='0' align='center'>
  11. <tr>
  12. <td>Recordatorio:</td>
  13. <td>
  14. <input name="reminder_name" type="text" maxlength="255" />
  15. </td>
  16. </tr>
  17. <tr>
  18. <td>Detalle</td>
  19. <td>
  20. <textarea name="reminder_desc" rows="5" /></textarea>
  21. </td>
  22. </tr>
  23. <tr>
  24. <td>Fecha</td>
  25. <td>
  26. <select name="reminder_year">
  27. <?php
  28. $current_year = date("Y");
  29. for($counter=$current_year;$counter<=$current_year+2;$counter++)
  30. {
  31. echo("\n<option>$counter</option>");
  32. }
  33. ?>
  34. </select>
  35. <select name="reminder_month">
  36. <?php
  37. for($counter=1;$counter<=12;$counter++)
  38. {
  39. if($counter < 10)
  40. $prefix = "0";
  41. else
  42. $prefix = "";
  43. echo("\n<option>$prefix$counter</option>");
  44. }
  45. ?>
  46. </select>
  47. <select name="reminder_date">
  48. <?php
  49. for($counter=1;$counter<=31;$counter++)
  50. {
  51. if($counter < 10)
  52. $prefix = "0";
  53. else
  54. $prefix = "";
  55.  
  56. echo("\n<option>$prefix$counter</option>");
  57. }
  58. ?>
  59. </select>
  60. </td>
  61. </tr>
  62. <tr>
  63. <td> </td>
  64. <td>
  65. <input name="step" type="hidden" value="1" />
  66. <input name="submit" type="submit" value="add" />
  67. </td>
  68. </tr>
  69. </table>
  70. </form>
  71. </body>
  72. </html>
  73. <?php
  74. }
  75. else
  76. {
  77. $error_list = "";
  78. $todays_date = date( "Ymd" );
  79. $reminder_date = $_POST['reminder_year'].$_POST['reminder_month'].$_POST['reminder_date'];
  80. if( empty($_POST['reminder_name']) )
  81. $error_list .= "El recordatorio no tiene nombre<br />";
  82. if( !checkdate( $_POST['reminder_month'], $_POST['reminder_date'], $_POST['reminder_year'] ))
  83. $error_list .= "La fecha es incorrecta<br />";
  84. else if( $reminder_date <= $todays_date )
  85. $error_list .= "La fecha no es mayor a hoy<br />";
  86. if( empty( $error_list ) )
  87. {
  88. mysql_query( "INSERT INTO reminder_events(`reminder_name`, `reminder_desc`, `reminder_date`) VALUES('".addslashes($_POST['reminder_name'])."', '".addslashes($_POST['reminder_desc'])."', '".addslashes($reminder_date)."')" );
  89. Header("Refresh: 1;url=reminder_list.php");
  90. echo <<< _HTML_END_
  91. Recordatorio agregado
  92. _HTML_END_;
  93. }
  94. else
  95. {
  96. echo( $error_list );
  97. }
  98. }
  99. ?>

reminder_list.php
Código PHP:
Ver original
  1. <?php
  2. include('database.inc.php'); // Our database connectivity file
  3. if( empty($_GET['reminder_id']) )
  4. {
  5. ?>
  6. <html>
  7. <head><title>Lista de Recordatorios</title></head>
  8. <body>
  9. <table width="90%" border="0" align="center">
  10. <tr>
  11. <td colspan='3'><a href='reminder_add.php'>Agregar nuevo recordatorio</a></td>
  12. </tr>
  13. <?php
  14. $result = mysql_query( "SELECT * FROM reminder_events" );
  15. $nr = mysql_num_rows( $result );
  16. if(empty($nr))
  17. {
  18. echo("
  19. <tr>
  20. <td colspan='3'>No hay recordatorios</td>
  21. </tr>
  22. ");
  23. }
  24. while( $row = mysql_fetch_array( $result ))
  25. {
  26. $reminder_name = $row["reminder_name"];
  27. $reminder_date = substr($row["reminder_date"],0,4).'-'.substr($row["reminder_date"],4,2).'-'.substr($row["reminder_date"],6,2);
  28. $reminder_id = $row["reminder_id"];
  29. echo("
  30. <tr>
  31. <td width='60%'>$reminder_name</td>
  32. <td width='30%'>$reminder_date</td>
  33. <td width='10%'><a href='reminder_list.php?reminder_id=$reminder_id'>Borrar</a></td>
  34. </tr>
  35. ");
  36. }
  37. mysql_free_result( $result );
  38. ?>
  39. </table>
  40. </body>
  41. </html>
  42. <?php
  43. }
  44. else
  45. {
  46. mysql_query( "DELETE FROM reminder_events WHERE reminder_id='".addslashes($_GET['reminder_id'])."'" );
  47. Header("Refresh: 1;url=reminder_list.php");
  48. echo <<< _HTML_END_
  49. Recordatorio borrado
  50. _HTML_END_;
  51. }
  52. ?>

reminder_setup.php
Código PHP:
Ver original
  1. <?php
  2. include('database.inc.php');
  3. $number_of_days_before = 1;
  4. $email = "[email protected]";
  5. $reminder_details = "";
  6. $todays_date = date( "Ymd" );
  7. $year = substr($todays_date, 0, 4);
  8. $month = substr($todays_date, 4, 2);
  9. $date = substr($todays_date, 6, 2);
  10. $trigger_date = date("Ymd", mktime (0,0,0,$month,$date-$number_of_days_before,$year));
  11. $result = mysql_query( "SELECT * FROM reminder_events WHERE reminder_date <= $trigger_date ORDER BY reminder_date ASC" );
  12. $nr = mysql_num_rows( $result );
  13. while( $row = mysql_fetch_array( $result ) )
  14. {
  15. $year = substr($row["reminder_date"], 0, 4);
  16. $month = substr($row["reminder_date"], 4, 2);
  17. $date = substr($row["reminder_date"], 6, 2);
  18. $reminder_date = date("M j, Y", mktime (0,0,0,$month,$date,$year));
  19. $reminder_details .= "Event: ".$row["reminder_name"]."\n";
  20. $reminder_details .= "Date: ".$reminder_date."\n";
  21. $reminder_details .= $row["reminder_desc"]."\n\n";
  22. }
  23. mysql_free_result( $result );
  24. if( !empty( $nr ) )
  25. {
  26. $mailheader = "From: Sistema de Recordatorio <$email>\nX-Mailer: Recordatorio\nContent-Type: text/plain";
  27. mail("$email","Recordatorio","$reminder_details","$mailheader");
  28. mysql_query("DELETE FROM reminder_events WHERE reminder_date <= $trigger_date" );
  29. }
  30. ?>

Esta va sin brujería, en español, y con validaciones adicionales
en algunas secciones, y por supuesto, probada.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com