FORM ja PHP

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ää :)
5806
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat

$to = $_get('email');

Äänestä

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

Äänestä

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

Äänestä
  • 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

    Äänestä

  • 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

    Äänestä

Kommentoi aloitusta


Tieto ei kulje kirjoitti:

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ää :)

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu