Kirjaudu sisäänKäyttäjätunnusSalasana
Kirjaa minut aina sisään automaattisesti    
Rekisteröidy
Rekisteröidy
Kirjaudu sisään tarkistaaksesi yksityiset viestit
Kirjaudu sisään tarkistaaksesi yksityiset viestit
Arkku.net Foorumin päävalikko » Ohjelmointi

Lähetä uusi viesti   Vastaa viestiin
Poistettu Siirry sivulle 1, 2, 3  Seuraava
Näytä edellinen aihe :: Näytä seuraava aihe  
Kirjoittaja Viesti
Poistettu
Vieras





LähetäLähetetty: 16.2.2006 17:07    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Elekaz
-


Liittynyt: 04 Mar 2005
Viestejä: 467
Paikkakunta: Helsinki

LähetäLähetetty: 16.2.2006 22:13    Viestin aihe: Vastaa lainaamalla viestiä

Koodi:
<?php
//otetaan post muuttujat ja lisätään ne muuttujiin jossa //$muuttuja=jos_post_olemassa?post_arvo:jos_ei_olemassa
$otsikko=$_POST['Otsikko']?$_POST['Otsikko']:"";
$palaute=$_POST['palaute']?$_POST['palaute']:"";      
if(!empty($otsikko) && !empty($palaute)){
$kohdeosoite= "nobody@example.com";//maili johon lähtee
$headers = 'From: webmaster@example.com' . "\r\n" .
   'Reply-To: webmaster@example.com' . "\r\n" .
   'X-Mailer: PHP/' . phpversion();

if(mail($kohdeosoite, $otsikko, $palaute, $headers)){
   echo "Palaute lähetettiin onnistuneesti";
}else{
   echo "Palautteen lähettäminen ei onnistunut";
}
}else{
   if($_POST['send'])echo "Täytä molemmat kentät";
   echo "<form method=\"post\" action="tiedostonnimi.php">";
   echo "<table>";
   echo "<tr><td>Otsikko:</td></tr>";
   echo "<tr><td><input type=\"text\" name=\"Otsikko\" maxlength=\"50\" value=\"$Otsikko\" /></td></tr>";
   echo "<tr><td>Uutinen:</td></tr>";
   echo "<tr><td><textarea name=\"palaute\">$palaute</textarea></td></tr>";
   echo "<tr><td><input type=\"submit\" name=\"send\" value=\"Lähetä\" /></td></tr>";
   echo "</table>";
   echo "</form>";
}
?>

En ole varma miten tuo mail funktio toimii kun en ole sitä ennen käyttänyt mutta tuo on kopioitu täältä joten luulisin sen toimivan. Kun pistät tuon koodi pätkän johonkin php sivuun niin se antaa sinulle lomakkeen, kun painat lähetä napista niin se päivittää sivun ja tarkistaa että molemmat kentät on täytetty. Jos ei ole niin näytetään lomake uudelleen ja jos on niin lähetetään palaute.

Edit: muokkasin koodia
_________________
Using windows is like having sex without condom.


Viimeinen muokkaaja, Elekaz pvm 17.2.2006 17:50, muokattu 1 kertaa
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Lähetä sähköposti Käy lähettäjän sivustolla
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 9:08    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Elekaz
-


Liittynyt: 04 Mar 2005
Viestejä: 467
Paikkakunta: Helsinki

LähetäLähetetty: 17.2.2006 15:49    Viestin aihe: Vastaa lainaamalla viestiä

Koodi:
echo "<tr><td><textarea name=\"palaute\" rows=\"6\" cols=\"60\">$palaute</textarea></td></tr>";
Muuta tuo textarea rivi ylläolevanlaiseksi. Parempi tapa mielestäni olisi käyttää css:sää tuon koon määrittelemiseen.
_________________
Using windows is like having sex without condom.
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Lähetä sähköposti Käy lähettäjän sivustolla
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 16:07    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu

Viimeinen muokkaaja, Poistettu pvm 17.2.2006 17:38, muokattu 3 kertaa
Takaisin alkuun
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 17:23    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 17:38    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu

Viimeinen muokkaaja, Poistettu pvm 17.2.2006 18:14, muokattu 2 kertaa
Takaisin alkuun
Elekaz
-


Liittynyt: 04 Mar 2005
Viestejä: 467
Paikkakunta: Helsinki

LähetäLähetetty: 17.2.2006 17:47    Viestin aihe: Vastaa lainaamalla viestiä

mzlla kirjoitti:
Mielestäni HTML on parempi paikka tekstiruudun koon määrittelyyn, toimii ehkä useammilla selaimilla, ja jos sivustolla ei ole muuta CSS:ää niin miksi pitäisi tuon takia lisätä.

Koodissa on kaksi virhettä, joiden takia se ei ehkä toimi.

1. HTML:n form-tagissa on määritelty pakolliseksi parametriksi action, eli sen tulisi olla muotoa: <form method=\"post\" action=\"tämän.sivun.tiedoston.nimi.php\">

2. Siinä tutkitaan että täyttääkö annettu otsikko ja palaute ns. true-ehdon, eli että onko niiden arvo joku merkkijono, mutta 0 tai välilyönti esimerkiksi ei kelpaa.

Varmista vielä, että olet kopioinut toisen ja kolmannen rivin samalle riveille, muuten tulee parse erroria tai jotain ihme ongelmia. <?php:n jälkeinen rivi on siis:

//otetaan post muuttujat ja lisätään ne muuttujiin jossa $muuttuja=jos_post_olemassa?post_arvo:jos_ei_olemassa

Jep mutta jos käyttää muuta css:sää niin se on parempi paikka mielestäni niille.

1. Toimii minulla ihan hyvin. Olen jättänyt tuon pois kun en ole jaksanut laittaa sitä tyhjänä, tämä siis sen takia että on helpompi muuttaa tiedoston nimeä.

Ja tosiaankin rivit
//otetaan post muuttujat ja lisätään ne muuttujiin jossa
ja
$muuttuja=jos_post_olemassa?post_arvo:jos_ei_olemassa
ovat samalla rivillä mutta ne eivät mahdu viestissä samalle riville joten se automaattisesti mennyt seuraavalle riville

Edit: Ja kyllähän sen tiedoston nimen saa funkitolla $_SERVER['SCRIPT_NAME'] esimerkiksi.
_________________
Using windows is like having sex without condom.
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Lähetä sähköposti Käy lähettäjän sivustolla
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 18:10    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Elekaz
-


Liittynyt: 04 Mar 2005
Viestejä: 467
Paikkakunta: Helsinki

LähetäLähetetty: 17.2.2006 19:12    Viestin aihe: Vastaa lainaamalla viestiä

Ota isot kirjaimet pois name attribuutin arvosta(esim name=\"Palaute\" muotoon name=\"palaute\").
_________________
Using windows is like having sex without condom.
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Lähetä sähköposti Käy lähettäjän sivustolla
Poistettu
Vieras





LähetäLähetetty: 17.2.2006 19:34    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Astpolvijarvi
-


Liittynyt: 19 Tam 2006
Viestejä: 58
Paikkakunta: Polvijärvi

LähetäLähetetty: 18.2.2006 21:47    Viestin aihe: Vastaa lainaamalla viestiä

Miten tuon palaute jutun sais html:llä ilman tuota php:tä silleen et se lähetä juttuki toimis?
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Käy lähettäjän sivustolla
Eiskis
-


Liittynyt: 04 Hel 2006
Viestejä: 18
Paikkakunta: Turku

LähetäLähetetty: 18.2.2006 22:36    Viestin aihe: Vastaa lainaamalla viestiä

Astpolvijarvi kirjoitti:
Miten tuon palaute jutun sais html:llä ilman tuota php:tä silleen et se lähetä juttuki toimis?


Ei mitenkään. HTML:ää käytetään vain rakenteen ja ulkoasun merkkaamiseen.
_________________
eiskis.net
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti Käy lähettäjän sivustolla
Poistettu
Vieras





LähetäLähetetty: 19.9.2006 16:29    Viestin aihe: Poistettu Vastaa lainaamalla viestiä

Poistettu
Takaisin alkuun
Ksis
-


Liittynyt: 24 Tam 2006
Viestejä: 1
Paikkakunta: Oulu

LähetäLähetetty: 14.12.2006 16:11    Viestin aihe: Vastaa lainaamalla viestiä

en ole paljon perehtynyt tuohon php:n toimintaan mutta itselläni on toimiva palautelaatikko näin.

Tämä .html sivulle(minulla palaute.html)
Koodi:

<form action="palaute.php" method="post">
<table width="400" border="0" align="center">
<tr>
  <td>
    <font face="comic sans ms" color="white" size="+1">
Nimesi:<br><input type="text" name="nimi" size="60">
    </font>
  </td>
</tr>

<tr>
  <td>
    <font face="comic sans ms" color="white" size="+1">
E-mailisi:<br><input type="text" name="email" size="60">
    </font>
  </td>
</tr>

<tr>
  <td>
    <font face="comic sans ms" color="white" size="+1">
Viestisi:<br><textarea name="viesti" cols="45" rows="4"></textarea>
    </font>
  </td>
</tr>
<tr>
  <td align="center"><input type="submit" value="Lähetä posti"> <input type="reset" value="Tyhjennä kentät"></td>
</tr>
</table>
</form>

jätin tuosta muun html muotoilun pois.

Tämä .php tiedostoon(minulla palaute.php)
Koodi:

<table width="400" align="center">
<tr>
 <td align="center">
<?php
$posti = array
  (
  nimi=>$_POST['nimi'],
  email=>$_POST['email'],
  viesti=>$_POST['viesti']
  );

foreach ($posti as $arvo)
{
  if (empty($arvo))
  {
  die("Kirjoita nimesi, e-mailisi ja viestisi!");
  }
}

$osoite = "(tähän osoite johon posti menee)";
$otsikko = "Palautetta kotisivulta";
$viesti = "Nimi: ".$_POST['nimi']."
E-mail: ".$_POST['email']."
Viesti: ".$_POST['viesti']."";

mail ($osoite, $otsikko, $viesti, "From: Kotisivut");

echo "Kiitos palautteestasi!";
?>
 </td>
</tr>
</table>


elikkäs tuo toimii ainakin minulla, jos tuosta on mitään apua niin mukava juttu Smile
Takaisin alkuun
Näytä käyttäjän tiedot Lähetä yksityinen viesti
Näytä edelliset viestit:   
Lähetä uusi viesti   Vastaa viestiin    Arkku.net Foorumin päävalikko » Ohjelmointi Kaikki ajat ovat GMT + 3 tuntia
Siirry sivulle 1, 2, 3  Seuraava
Sivu 1 Yht. 3

 
Siirry:  
Et voi kirjoittaa uusia viestejä tässä foorumissa
Et voi vastata viesteihin tässä foorumissa
Et voi muokata viestejäsi tässä foorumissa
Et voi poistaa viestejäsi tässä foorumissa
Et voi äänestää tässä foorumissa