Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/07/2019, 16:38
Avatar de satjaen
satjaen
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jaén (Andalucía)
Mensajes: 893
Antigüedad: 11 años, 7 meses
Puntos: 10
Email no funciona

Hola tengo un problema en los formularios de contacto que no los recibo. He cambiado de servidor windows a linux. La version de php es 5.6.40. El error es:



Código HTML:
TypeError: data.error_msg is null<anonymous> mails.js:157
    jQuery 4
form.html


Código:
<script src="js/mails.js"></script>

 <form action="#">
                  <div class="form-group left">
                    <label class="sr-only" for="name">Nombre</label>
                    <input type="text" class="form-control" id="name" name="name" placeholder="Nombre" required />
                  </div>
                  <div class="form-group">
                    <label class="sr-only" for="phone5">Teléfono</label>
                      <input type="tel" pattern="^\d{3}\d{3}\d{3}$" class="form-control" id="phone4" name="phone" placeholder="Teléfono (123456789)" required />
                  </div>
                  <div class="form-group">
                    <label class="sr-only" for="msg">Mensaje</label>
                    <textarea class="form-control" id="msg" name="msg" placeholder="Mensaje" rows="4" required ></textarea>
                  </div>
                  <div class="form-group" style=" font-size:13px">
                    <input type="checkbox" required /> Acepto la <a href="#" target="_blank">política de privacidad.</a>                    </div>  
                  <button class="btn btn-warning" type="submit">Enviar</button>
                </form>
mails.js


Código HTML:
$('#wsForm form').on('submit', function(){
            $.ajax({
              method: "POST",
              url: "msg.php",
              data: $(this).serialize(),
              dataType: 'json'
            }).done(function( data ) {
            if(!data.error)
            {
                $('#wsForm').html('<div class="form"><div class="text-center">Gracias, pronto le llamaremos!</div></div>')
            }
            else
            {
                $('<div class="alert alert-danger" role="alert">' +
                        data.error_msg.message +
                         '</div>').prependTo('#wsForm');
            }
          });
          return false;
        });
msg.php
Código HTML:
<?
$return = array();

$to      = 'micorreo@micorreo';
$subject = 'the subject';
$headers = 'From: micorreo@micorreo' . "\r\n" .
        'Content-type: text/html' . "\r\n" .
    'Reply-To: micorreo@micorreo' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

$message = 'New message from the site<br/><br/>';
if($_REQUEST['name'])
    $message .= 'Name: '.$_REQUEST['name']."<br/>";
if($_REQUEST['phone'])
    $message .= 'Phone: '.$_REQUEST['phone']."<br/>";
if($_REQUEST['msg'])
    $message .= 'Message: '.$_REQUEST['msg'].'<br/>';

$success = mail($to, $subject, $message, $headers);
if (!$success) {
    $return['error'] = true;
  $return['error_msg'] = error_get_last();
}


die(json_encode($return));
Gracias

Última edición por satjaen; 13/07/2019 a las 17:10