Domanda

Can anyone help me, please. I have this code and I don't know why I've got these errors.

"Undefined index name, email and message"

I've tried to add an action in form :

<form action="?" method="post"> but doesn't work.

<?php
$to = 'myemail@something.else';
$subject = 'From Site';

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$header = '$email';

if ($_POST) {
    mail($to, $subject, $message, $header);
}
?>

<html>
    <fieldset>
        <legend>Contactat US</legend>
        <form method="post">
            <label for="name">Name:</label><br>
            <input type="text" name="name" id="name" /><br>
            <label for="email">E-mail:</label><br>
            <input type="text" name="email" id="email" /><br>               
            <label for="message">Message:</label><br>
            <textarea id="message" name="message" id="message" cols="42" rows="9"></textarea><br><br>
            <input type="submit" value="Send" />                
        </form> 
    </fieldset>
</html>
È stato utile?

Soluzione

if(isset($_POST['email'])){
    $to = 'myemail@something.else';
    $subject = 'From Site';

    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];

    $header = '$email';

    mail($to, $subject, $message, $header);
}

Altri suggerimenti

REPLACE TO THIS:

 if(isset($_POST['email'])){
        $to = 'myemail@something.else';
        $subject = 'From Site';

        $name = filter_input(INPUT_POST, 'name');
        $email = filter_input(INPUT_POST, 'email');
        $message = filter_input(INPUT_POST, 'message');

        $header = '$email';

        mail($to, $subject, $message, $header);
    }

if you consult the post array directly, you may have difficulties. And you see a warning in some editors. (as example Netbeans IDE)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top