Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]formularz kontaktowy dołącza IP
Forum PHP.pl > Forum > Przedszkole
artm
Mam problem. Mam stronę na której jest zamieszczony formularz kontaktowy do wysyłania maili.
Problem jest w tym że konkurencja lub źli ludzie robią sobie żarty korzystając z niego.

Czy jest szansa by ktoś zmodyfikował mi gotowy formularz tak aby dołączał adres IP osoby wysyłającej mail z formularza?
Mogę go tu wkleić? Proszę o pomoc.
wookieb
  1. $_SERVER['REMOTE_ADDR'];

A Wklej.
artm
Kod
<?php
if (count($_POST))
{
    ////////// USTAWIENIA //////////
    $email = 'adresemail@gmail.com';    // Adres e-mail adresata
    $subject = 'wiadomość';    // Temat listu
    $message = 'Dziękujemy za wiadomość. ';    // Komunikat
    $error = 'Wystąpił błąd podczas wysyłania formularza. Spróbuj jescze raz.';    // Komunikat błędu
    $charset = 'iso-8859-2';    // Strona kodowa
    //////////////////////////////
    
    $head =
        "MIME-Version: 1.0\r\n" .
        "Content-Type: text/plain; charset=$charset\r\n" .
        "Content-Transfer-Encoding: 8bit";
    $body = '';
    foreach ($_POST as $name => $value)
    {
        if (is_array($value))
        {
            for ($i = 0; $i < count($value); $i++)
            {
                $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value[$i]) : $value[$i]) . "\r\n";
            }
        }
        else $body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";
    }
    echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
}
else
{
?>
<form action="?" method="post">

<form action="<? echo $PHP_SELF; ?>" method="post">

Imię i Nazwisko:&nbsp;<input rows="5" cols="12" name=Imie_Nazwisko><br>
Twój e-mail:&nbsp;<input rows="1" cols="12" name=e-mail><br>
Treść wiadomości:&nbsp;<textarea rows="9" cols="52" name=Pytanie></textarea>

<input type=submit name=submit value=wyślij></div>
</form>
<?php
}
?>
wookieb
zamiast
Kod
$body = '';

daj
Kod
$body = 'IP: '.$_SERVER['REMOTE_ADDR']."\r\n";
artm
wielkie dzięki wookieb exclamation.gif bardzo mi pomogłeś
BoczekZG
Problem rozwiązałem / Do usunięcia ten post.
opty
a czy pomogl by mi ktos to samo zrobic tutaj:

<section class="form">
<a name="form"></a>
<?
if ($_POST['page'] > 0) {
if (($_POST['key'] > 0) AND ($_POST['key'] == $_SESSION['captchaPage'])) {
$tresc = "Witaj,\n
\n
Na stronie " .$config['conf_nazwa']. " wypełniono formularz kontaktowy.\n
\n
Oto podane w formularzu dane:\n
\n
" .$_POST['k_osoba']. "\n
" .$_POST['k_email']. "\n
" .$_POST['k_telefon']. "\n
" .$_SERVER['REMOTE_ADDR'] . "\n\n"
\n
" .$_POST['k_tresc'];
$msg = 'Dziękujemy za wysłaną wiadomość';
$tematUTF = "=?UTF-8?B?".base64_encode($config['conf_mail_subject'])."?=";
$arEmaile = explode(',', $config['conf_mail_address']);
foreach($arEmaile AS $dummy => $adresat) {
mail($adresat, $tematUTF, $tresc, "From: " .$_POST['k_email']. "\nContent-Type: text/plain; charset=utf-8");
}
$_SESSION['captchaPage'] = rand(1000,9999);
} else {
$msg = 'Podano błędny kod zabezpieczający. Wiadomość NIE została wysłana!';
}
?>
<div class="msg"><?= $msg; ?></div>
<?
} else {
$_SESSION['captchaPage'] = rand(1000,9999);
$captchaKey = $_SESSION['captchaPage'] * 2 + 51;
?>
<form action="index.php#form" id="contact-form" method="post" name="kontakt">
<p>Jeżeli mają Państwo pytania, zapraszamy do wypełnienia formularza kontaktowego.</p>
<fieldset>
<label>
<span>Imię i nazwisko: *</span>
<input class="required" type="text" id="k_osoba" name="k_osoba" />
</label>
<label>
<span>Twój e-mail:*</span>
<input class="required" type="email" id="k_email" name="k_email" />
</label>
<label>
<span>Telefon:</span>
<input type="text" id="k_telefon" name="k_telefon" />
</label>
<label>
<span>Kod:*</span>
<input maxlength="4" class="short required" type="text" id="k_kod" name="key" /> <img src="http://easycms.net.pl/verificationimage.php?key=<?= $captchaKey; ?>" alt='kod weryfikacyjny' />
</label>
</fieldset>
<fieldset>
<label>
<span>Wiadomość:*</span>
<textarea class="required" cols="1" rows="1" id="k_tresc" name="k_tresc"></textarea>
</label>
<label class="longlabel">
<button type="submit">wyślij</button>
<input type="hidden" name="page" value="<?= $tresc['tresc_id']; ?>" />
<span id="error">Wypełnij wszystkie wymagane pola!</span>
</label>
<label id="req">* pola wymagane</label>
</fieldset>
</form><!-- /kontakt -->
<? } ?>
</section>


z gory dziekuje
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.