Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  mis sellel formil viga on? (algaja php-s) märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
alecoqprem
Kreisi kasutaja
alecoqprem

liitunud: 28.07.2005




sõnum 12.06.2008 00:16:12 mis sellel formil viga on? (algaja php-s) vasta tsitaadiga

tegin sellise php vormi:

<?php
if ( !empty($_POST["sisu"]) ) {
mail("info@raidoweb.com","täidetud avaldus","
Kirja saatis sulle ".$_POST['saatja']."
Sisu:
".$_POST['sisu']);
echo "Täname kiri on edukalt saadetud. Vastme teile esimesel võimalusel.";
} else {
?>
<form action="" method="post"><br>

<table width="488" border="0">
  <tr>
    <td width="160">Pilt autost:</td>
    <td width="24">&nbsp;</td>
    <td width="282"><input type="file" name="Pilt_autost"  value="" class='text_box'></td>
  </tr>
  <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Auto mark:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja">;</td>
  </tr>
  <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Mudel:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
  <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Keret&uuml;&uuml;p:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
  <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Muud lisad:</td>
    <td>&nbsp;</td>
    <td><textarea name="Muud_lisad" rows=4 cols=25 ></textarea></td>
  </tr>
   <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Omaniku nimi passis:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
   <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Teie nimi:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
   <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>E-mail:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
   <tr>
    <td colspan="3" height="10"></td>
    </tr>
  <tr>
    <td>Telefon:</td>
    <td>&nbsp;</td>
    <td><input type="text" name="saatja"></td>
  </tr>
   <tr>
    <td colspan="3" height="10"></td>
    </tr>
</table>


<input type="submit" value="Saada!"><br>
</form>
<?php
}
?>


aga miskipärast ei tööta. Oskab keegi öelda, mis seal viga on?
Aitäh.
Kommentaarid: 29 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 24
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.06.2008 00:31:02 vasta tsitaadiga

action ju puudu
tal pole määratletud et mida ta tegema peaks
lisaks pole sul ju form'is ühtegi elementi nimega "sisu"
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
DoS
HV veteran
DoS

liitunud: 19.08.2002




sõnum 12.06.2008 01:34:39 vasta tsitaadiga

Sul on seal vigu veel, näiteks enamustel inputidel on nimeks saatja.
Võta aga http://www.w3schools.com/php/default.asp ette ja tee põhitõed selgeks (seal kirjutab $_POST'ist ka)
Kommentaarid: 50 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 47
tagasi üles
vaata kasutaja infot saada privaatsõnum
alecoqprem
Kreisi kasutaja
alecoqprem

liitunud: 28.07.2005




sõnum 12.06.2008 15:59:00 vasta tsitaadiga

nüüd sain asja põhimõtteliselt tööle, kuid üks lihtne küsimus veel, et kuidas kuvada saadetavas e-mailis kõik need täidetud väljad?

Kood on hetkel selline:

<?php
if ( !empty($_POST["saatja"]) ) {
mail("info@raidoweb.com","hinnapäring","
Kirja saatis sulle ".$_POST['saatja']."
Sisu:
".$_POST['field_1']);
echo "Täname kiri on edukalt saadetud.!";
} else {
?>
<form action="" method="post">
<table>
<tr><td>Pilt autost:</td><td><input type="file" name="pilt" style="width:250px;" /></td></tr>
<tr><td>Auto mark:</td><td><input type="text" name="field_1" style="width:250px;" /></td></tr>
<tr><td>Mudel:</td><td><input type="text" name="field_2" style="width:250px;" /></td></tr>
<tr><td>Keretüüp:</td><td><input type="text" name="field_3" style="width:250px;" /></td></tr>
<tr><td>Valmistusaasta:</td><td><input type="text" name="field_4" style="width:250px;" /></td></tr>
<tr><td>Teie nimi: </td><td><input type="text" name="saatja" style="width:250px;" /></td></tr>
<tr><td>E-mail: </td><td><input type="text" name="field_19" style="width:250px;" /></td></tr>
<tr><td>Telefon: </td><td><input type="text" name="field_20" style="width:250px;" /></td></tr>
<tr><td></td><td><input type="submit" value="Saada" class="send"/></td></tr>
</table>
</form>
<?php
}
?>


hetkel saadab ta kirjas ainult field_1, kui üritasin neid fielde juurde tekitada, muutus kood vigaseks. Ühesõnaga, kuidas korrektselt nii teha, et saadetav e-mail kuvaks kõiki täidetud välju?

(andke andeks mu asjaoskamatus, kuid ühe käe sõrmi on liiga palju selleks, et lugeda kokku mu kokkupuuted php-ga icon_razz.gif )
Kommentaarid: 29 loe/lisa Kasutajad arvavad:  :: 2 :: 1 :: 24
tagasi üles
vaata kasutaja infot saada privaatsõnum
Hexor
HV vaatleja

liitunud: 12.06.2004




sõnum 12.06.2008 16:16:22 vasta tsitaadiga

.$_POST['field_1']."<br />".$_POST['field_2']."<br />".
jne

Et need reavahetused ka meilis näha oleks määra meili vorming ära ehk siis:

mail('info@raidoweb.com', 'hinnapäring', $SISU_SIIA, "From: Selle saatis sulle <".$_POST['saatja'].">\n" ."MIME-Version: 1.0\n" ."Content-type: text/html; charset=iso-8859-1")
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 12.06.2008 16:23:25 vasta tsitaadiga

php:
  1. <?php
  2. if ( !empty($_POST["saatja"]) )
  3. {
  4.         mail("info@raidoweb.com","hinnapäring","
  5.         Kirja saatis sulle ".$_POST['saatja']."
  6.         Sisu: \n".
  7.         "Auto mark: ".$_POST['field_1']."\n".
  8.         "Mudel: ".$_POST['field_2']."\n".
  9.         "Keretüüp: ".$_POST['field_3']."\n".
  10.         "Valmistusaasta: ".$_POST['field_4']."\n".
  11.         "E-mail: ".$_POST['field_5']."\n".
  12.         "Telefon: ".$_POST['field_6']."\n");
  13.         echo "Täname kiri on edukalt saadetud.!";
  14. }
  15. else
  16. {
  17. ?>
  18. <form action="" method="post">
  19. <table>
  20. <tr><td>Pilt autost:</td><td><input type="file" name="pilt" style="width:250px;" /></td></tr>
  21. <tr><td>Auto mark:</td><td><input type="text" name="field_1" style="width:250px;" /></td></tr>
  22. <tr><td>Mudel:</td><td><input type="text" name="field_2" style="width:250px;" /></td></tr>
  23. <tr><td>Keretüüp:</td><td><input type="text" name="field_3" style="width:250px;" /></td></tr>
  24. <tr><td>Valmistusaasta:</td><td><input type="text" name="field_4" style="width:250px;" /></td></tr>
  25. <tr><td>Teie nimi: </td><td><input type="text" name="saatja" style="width:250px;" /></td></tr>
  26. <tr><td>E-mail: </td><td><input type="text" name="field_5" style="width:250px;" /></td></tr>
  27. <tr><td>Telefon: </td><td><input type="text" name="field_6" style="width:250px;" /></td></tr>
  28. <tr><td></td><td><input type="submit" value="Saada" class="send"/></td></tr>
  29. </table>
  30. </form>
  31. <?php
  32. }
  33. ?>


hästi lihtlabane kood, mida ma tegelikkuses ei kasutaks

pildi lisamist emailile ei hakanud praegu tegema, selle jaoks on sul vaja hulga rohkem uurida failidega emaili saatmise kohta, ehk ka leida tutorial selle jaoks
tegemist siiski küllalt keerulise teemaga
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
morgoth
HV kasutaja
morgoth

liitunud: 14.01.2004




sõnum 13.06.2008 14:48:00 vasta tsitaadiga

Väike headerite injection ning saad saata maile suvalistele aadressidele :p
Kommentaarid: 11 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 10
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  mis sellel formil viga on? (algaja php-s)
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.