Eli tämä saattaapi olla helpohko ongelma arvon raadille.
Olen tehnyt muutaman erilaisen koe/harjoitus koodauksen, mutta en saa lomakkeelta tarvittavia tietoja siirtymään php:lle.
Lomake/selain kyllä siirty action koodilla testi.htm:stä -> testi.php:lle. Mutta testi.php ei osaa ottaa lomakkeelle syötettyä tietoa ylös. (tai testi.htm-lomake ei osaa sitä lähettää testi.php:lle. en tiedä)
Eli ongelmani on seuraavanlainen:
Olen yrittänyt saada www-sivuiltani lähetettyä sähköpostin itselleni. Ja ainut "copy paste" koodaus jolla olen siinä onnistunut, on tämä:
ONGELMANI onkin, että miten saan yllä olevan $to arvoa (eli email tunnuksen) muutettua yhdessä tällä form-koodilla ?
(Koodauksen tarkoitus olisi, että vierailija voisi kirjoittaa oman maili tunnuksen ja saisi sitten sivustoltani postin..)
Nimimerkillä:
30v ukko jolla kokemusta php-koodauksesta 2päivää :)
FORM ja PHP
5
741
Vastaukset
- näin mene..
$to = $_get('email');
- keksa
testi.html
testilomake
testi.php
Lisäksi sun pitäis tarkistaa, että email sisältää vain sallittuja merkkejä ja että se on validi email-osoite. Toiseksi lomakkeen avulla voisi nyt spämmätä mitä haluaa sähköpostiosotteita roskapostilla - keksa
testi.html
testilomake
testi.php
Lisäksi sun pitäis tarkistaa, että email sisältää vain sallittuja merkkejä ja että se on validi email-osoite. Toiseksi lomakkeen avulla voisi nyt spämmätä mitä haluaa sähköpostiosotteita roskapostilla- alkuperäinen.
Alkuun ISO KIITOS sinulle, antamasi koodaus toimi!! Tosin vain ilman php-koodin yläosaa. Eli ilman tätä:
//onko email muuttuja POST-arrayssä?
if(!isset($_POST['email']))
{
//ei oo. takas lomakeeseen
header("Location: http://www.munsivut.com/test.html");
exit();
}
Nyt laitoin roskapostittamisen ehkäisyksi tällaiset koodit:
//TÄMÄN ALKUUN
session_start();
$to = $_POST['email'];
$subject = "Terve";
$body = "Moro";
$from = "From: Sinun Testi";
//TÄMÄN
if (isset($_SESSION["form_time"]) and $_SESSION["form_time"] > time()) die ("Virhe: Roskapostittamisen ehkäisyksi on sallittua lähettää vain yksi viesti per 10 minuuttia.");
if (mail($to, $subject, $body, $from)) {
// JA TÄMÄN
$_SESSION["form_time"] = time() 60 * 10;
echo("Viesti lähti.");
} else {
echo("No eipä lähteny.");
}
exit();
?>
Lisäksi olen ajatellut laittaa lähetäjän ip-numeron body osan loppuun Meneeköhän se näin (?):
$body = "Moro" "Lähettäjän IP-numero: " . getenv("REMOTE_ADDR");
Onkohan jotain vielä mitä tulisi huomioida? Esim. miten saa tehtyä sellaisen, että roskapostin ehkäisyksi vierekkäin on kaksi eri laatikkoa, joihin pitää kirjoittaa SAMA sana.
Esim näin:
Laatikko1: Kissa
Laatikko2: Kissa
= SAMAT sanat ja viesti lähti
Laatikko1: Aipina
Laatikko2: Istui
= ERI sanat ja viesti ei lähde alkuperäinen. kirjoitti:
Alkuun ISO KIITOS sinulle, antamasi koodaus toimi!! Tosin vain ilman php-koodin yläosaa. Eli ilman tätä:
//onko email muuttuja POST-arrayssä?
if(!isset($_POST['email']))
{
//ei oo. takas lomakeeseen
header("Location: http://www.munsivut.com/test.html");
exit();
}
Nyt laitoin roskapostittamisen ehkäisyksi tällaiset koodit:
//TÄMÄN ALKUUN
session_start();
$to = $_POST['email'];
$subject = "Terve";
$body = "Moro";
$from = "From: Sinun Testi";
//TÄMÄN
if (isset($_SESSION["form_time"]) and $_SESSION["form_time"] > time()) die ("Virhe: Roskapostittamisen ehkäisyksi on sallittua lähettää vain yksi viesti per 10 minuuttia.");
if (mail($to, $subject, $body, $from)) {
// JA TÄMÄN
$_SESSION["form_time"] = time() 60 * 10;
echo("Viesti lähti.");
} else {
echo("No eipä lähteny.");
}
exit();
?>
Lisäksi olen ajatellut laittaa lähetäjän ip-numeron body osan loppuun Meneeköhän se näin (?):
$body = "Moro" "Lähettäjän IP-numero: " . getenv("REMOTE_ADDR");
Onkohan jotain vielä mitä tulisi huomioida? Esim. miten saa tehtyä sellaisen, että roskapostin ehkäisyksi vierekkäin on kaksi eri laatikkoa, joihin pitää kirjoittaa SAMA sana.
Esim näin:
Laatikko1: Kissa
Laatikko2: Kissa
= SAMAT sanat ja viesti lähti
Laatikko1: Aipina
Laatikko2: Istui
= ERI sanat ja viesti ei lähde>Laatikko1: Kissa
>Laatikko2: Kissa
>= SAMAT sanat ja viesti lähti
formiin:
php tarkistus:
if (!isset($_POST['laatikko1']) || !isset($_POST['laatikko2']) || $_POST['laatikko1'] 1= $_POST['laatikko2']) {
die('Virhe!');
} else {
....
}
About noin kun nopeesti tässä väsyneenä miettii
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1292063
Noniin rakas
Annetaanko pikkuhiljaa jo olla, niin ehkä säilyy vienot hymyt kohdatessa. En edelleenkään halua sulle tai kenellekään mi1051876Kumpi vetoaa enemmän sinuun
Kaivatun ulkonäkö vai persoonallisuus? Ulkonäössä kasvot vai vartalo? Mikä luonteessa viehättää eniten? Mikä ulkonäössä?841659Lasten hyväksikäyttö netissä - Joka 3. nuori on saanut seksuaalisen yhteydenoton pedofiililtä
Järkyttävää! Lapsiin kohdistuva seksuaalinen hyväksikäyttö verkossa on yhä pahempi ongelma. Ulkolinja: Lasten hyväksikäy641524Multa sulle
Pyörit 24/7 mielessä, kuljet mun mukana, mielessä kyselen sun mielipiteitä, vitsailen sulle, olen sydän auki, aitona. M331192- 821148
Nainen, olen tutkinut sinua paljon
Salaisuutesi ei ole minulle salaisuus. Ehkä teimme jonkinlaista vaihtokauppaa kun tutkisimme toisiamme. Meillä oli kumm561132- 1101093
Mies, eihän sulla ole vaimoa tai naisystävää?
Minusta tuntuu jotenkin, että olisit eronnut joskus, vaikka en edes tiedä onko se totta. Jos oletkin oikeasti edelleen s471066Onko sulla empatiakykyä?
Etkö tajua yhtään miltä tämä tuntuu minusta? Minä ainakin yritän ymmärtää miltä sinusta voisi tuntua. En usko, että olet441013