New question

Question:

Date: 24-10-2019 06:06:02 (In Spanish)

Mi boton submit no funciona, alguien puede ayudarme,Gracias[Unresolved]

Este es el código de mi form html:
----------------------------------------------------------------------------------------------------------------------------------------------------

<form name="sentMessage" id="contactForm" novalidate="novalidate" action="http://www.sieis.com.ar/enviar.php" method="post">
<div class="control-group">
<div class="form-group floating-label-form-group controls mb-0 pb-2">
<label>Nombre</label>
<input class="form-control" id="nombre" name="nombre" type="text" placeholder="Nombre" required="required" data-validation-required-message="Por favor ingrese su nombre.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="control-group">
<div class="form-group floating-label-form-group controls mb-0 pb-2">
<label>Email</label>
<input class="form-control" id="email" name="email" type="email" placeholder="Email" required="required" data-validation-required-message="Por favor ingrese una direccion de correo electrónicos.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="control-group">
<div class="form-group floating-label-form-group controls mb-0 pb-2">
<label>Telefono</label>
<input class="form-control" id="telefono" name="telefono" type="tel" placeholder="Teléfono" required="required" data-validation-required-message="Por favor ingrese un número de contacto.">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="control-group">
<div class="form-group floating-label-form-group controls mb-0 pb-2">
<label>Mensaje</label>
<textarea class="form-control" id="mensaje" name="mensaje" rows="5" placeholder="Mensaje" required="required" data-validation-required-message="Por favor ingrese el mensaje."></textarea>
<p class="help-block text-danger"></p>
</div>
</div>
<br>
<div id="success"></div>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-xl" id="sendMessageButton">Enviar</button>
</div>
</form>
----------------------------------------------------------------------------------------------------------------------------------------------------


Y este es el codigo de mi script php:
----------------------------------------------------------------------------------------------------------------------------------------------------

<?php
if(isset($_POST['email'])) {

// Debes editar las próximas dos líneas de código de acuerdo con tus preferencias
$email_to = "info@midominio.com.ar";
$email_subject = "Contacto desde el sitio web";

// Aquí se deberían validar los datos ingresados por el usuario
if(!isset($_POST['nombre']) ||
!isset($_POST['correo']) ||
!isset($_POST['telefono']) ||
!isset($_POST['mensaje'])) {

echo "<b>Ocurrió un error y el formulario no ha sido enviado. </b><br />";
echo "Por favor, vuelva atrás y verifique la información ingresada<br />";
die();
}

$email_message = "Detalles del formulario de contacto:\n\n";
$email_message .= "Nombre: " . $_POST['nombre'] . "\n";
$email_message .= "E-mail: " . $_POST['correo'] . "\n";
$email_message .= "Teléfono: " . $_POST['telefono'] . "\n";
$email_message .= "Comentarios: " . $_POST['mensaje'] . "\n\n";


// Ahora se envía el e-mail usando la función mail() de PHP
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);

echo "¡El formulario se ha enviado con éxito!";
}
?>
----------------------------------------------------------------------------------------------------------------------------------------------------


Desde ya muchas Gracias
Tags: HTML - PHP Votes: 0 - Answers: 3 - Views: 12 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 24-10-2019 11:17:46 Hola,

    Sería bueno que utilizaras los BBCodes para mostrar tu código en la página de manera adecuada.

    HTML
    <form name="sentMessage" id="contactForm" novalidate="novalidate" action="http://www.sieis.com.ar/enviar.php" method="post">
    <div class="control-group">
    <div class="form-group floating-label-form-group controls mb-0 pb-2">
    <label>Nombre</label>
    <input class="form-control" id="nombre" name="nombre" type="text" placeholder="Nombre" required="required" data-validation-required-message="Por favor ingrese su nombre.">
    <p class="help-block text-danger"></p>
    </div>
    </div>
    <div class="control-group">
    <div class="form-group floating-label-form-group controls mb-0 pb-2">
    <label>Email</label>
    <input class="form-control" id="email" name="email" type="email" placeholder="Email" required="required" data-validation-required-message="Por favor ingrese una direccion de correo electrónicos.">
    <p class="help-block text-danger"></p>
    </div>
    </div>
    <div class="control-group">
    <div class="form-group floating-label-form-group controls mb-0 pb-2">
    <label>Telefono</label>
    <input class="form-control" id="telefono" name="telefono" type="tel" placeholder="Teléfono" required="required" data-validation-required-message="Por favor ingrese un número de contacto.">
    <p class="help-block text-danger"></p>
    </div>
    </div>
    <div class="control-group">
    <div class="form-group floating-label-form-group controls mb-0 pb-2">
    <label>Mensaje</label>
    <textarea class="form-control" id="mensaje" name="mensaje" rows="5" placeholder="Mensaje" required="required" data-validation-required-message="Por favor ingrese el mensaje."></textarea>
    <p class="help-block text-danger"></p>
    </div>
    </div>
    <br>
    <div id="success"></div>
    <div class="form-group">
    <button type="submit" class="btn btn-primary btn-xl" id="sendMessageButton">Enviar</button>
    </div>
    </form>
    


    PHP
    <?php
    if(isset($_POST['email'])) {
    
    // Debes editar las próximas dos líneas de código de acuerdo con tus preferencias
    $email_to = "info@midominio.com.ar";
    $email_subject = "Contacto desde el sitio web";
    
    // Aquí se deberían validar los datos ingresados por el usuario
    if(!isset($_POST['nombre']) ||
    !isset($_POST['correo']) ||
    !isset($_POST['telefono']) ||
    !isset($_POST['mensaje'])) {
    
    echo "<b>Ocurrió un error y el formulario no ha sido enviado. </b><br />";
    echo "Por favor, vuelva atrás y verifique la información ingresada<br />";
    die();
    }
    
    $email_message = "Detalles del formulario de contacto:\n\n";
    $email_message .= "Nombre: " . $_POST['nombre'] . "\n";
    $email_message .= "E-mail: " . $_POST['correo'] . "\n";
    $email_message .= "Teléfono: " . $_POST['telefono'] . "\n";
    $email_message .= "Comentarios: " . $_POST['mensaje'] . "\n\n";
    
    
    // Ahora se envía el e-mail usando la función mail() de PHP
    $headers = 'From: '.$email_from."\r\n".
    'Reply-To: '.$email_from."\r\n" .
    'X-Mailer: PHP/' . phpversion();
    @mail($email_to, $email_subject, $email_message, $headers);
    
    echo "¡El formulario se ha enviado con éxito!";
    }
    


    Ok y ahora a la ayuda.

    Tu HTML está básicamente bien. Las etiquetas label están incompletas pero funciona.

    En el script PHP tienes muchos problemas. No voy a ahondar en seguridad pero deberías sanitizar y validar los datos del formulario. Revisa los filtros disponibles en PHP.

    Algo super importante es que NUNCA debes utilizar @ para suprimir errores. Utilizarlo te generará muchos dolores de cabeza a largo plazo.

    Tienes variables no declaradas y haces referencia a campos que no existen en tu formulario.

    Aquí está tu script corregido.

    <?php
    if (isset($_POST['email'])) {
    
    // Debes editar las próximas dos líneas de código de acuerdo con tus preferencias
        $email_to = 'info@midominio.com.ar';
        $email_subject = 'Contacto desde el sitio web';
    
    // Aquí se deberían validar los datos ingresados por el usuario
        if (!isset($_POST['nombre']) ||
            !isset($_POST['email']) ||
            !isset($_POST['telefono']) ||
            !isset($_POST['mensaje'])) {
    
            echo '<b>Ocurrió un error y el formulario no ha sido enviado. </b><br />';
            echo 'Por favor, vuelva atrás y verifique la información ingresada<br />';
            die();
        }
    
        $email_message = "Detalles del formulario de contacto:\n\n";
        $email_message .= "Nombre: " . $_POST['nombre'] . "\n";
        $email_message .= "E-mail: " . $_POST['email'] . "\n";
        $email_message .= "Teléfono: " . $_POST['telefono'] . "\n";
        $email_message .= "Comentarios: " . $_POST['mensaje'] . "\n\n";
    
        $email_from = $_POST['email'];
        
    // Ahora se envía el e-mail usando la función mail() de PHP
        $headers = 'From: ' . $email_from . "\r\n" .
                   'Reply-To: ' . $email_from . "\r\n" .
                   'X-Mailer: PHP/' . phpversion();
        mail($email_to, $email_subject, $email_message, $headers);
    
        echo '¡El formulario se ha enviado con éxito!';
    }
    


    Espero que te sirva.
      Votes: 0 - Link answer
     
  • Date: 28-10-2019 04:08:57 Cuando dices que tu botón no funciona, ¿a qué te refieres exactamente? No envía el formulario? Lo envía pero no manda los datos? Te abre una página en blanco o un error 404? Cada problema tiene una solución, pero hay que saber exactamente cuál es el problema, no puedes simplemente decir "no funciona".   Votes: 0 - Link answer
     
  • Date: 28-10-2019 19:58:44 Quita el @ de mail.

    Y en el primer if(isset($_POST['email']))

    el 'email' es el name del submit, si no me equivoco.
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In
 
frjcbbae garagebible.com