Jump to content
GSForum - Segélyvonal

PHP-s ûrlap bõvítése


papys
 Share

Recommended Posts

papys

Sziasztok kéne egy kis segítség mert elakadtam

egy meglévõ kapcsolatfelvétel ûrlapomból akarok csinálni egy másikat, de sokkal bõvebbet. meg is csináltam de nem akarja elküldeni emailben és a hibajelzõ is csak két mezõben mûködik. pedig mindent az eredetirõl másoltam és úgy is írtam a bõvítéseket. :Sír:

Link to comment
Share on other sites

arpsoft

Kód?

Link to comment
Share on other sites

papys

<?

session_start();

$cansend=$HTTP_POST_VARS['cansend'];

if($cansend==1) {

require 'contact_setting.inc';

$mailTo = "$mailto";

$mailSubject="From ".$HTTP_POST_VARS["txtname"];

$name=$HTTP_POST_VARS["txtname"];

$email=$HTTP_POST_VARS["txtemail"];

$phone=$HTTP_POST_VARS["txtphone"];

$megye=$HTTP_POST_VARS["txtmegye"];

$varos=$HTTP_POST_VARS["txtvaros"];

$forgertek=$HTTP_POST_VARS["txtforgertek"];

$hitelertek=$HTTP_POST_VARS["txthitelertek"];

$tema=$HTTP_POST_VARS["txttema"];

$comment=$HTTP_POST_VARS["txtcomment"];

 

$mailbody="Name :".$name;

$mailbody=$mailbody."\nEmail :".$email;

$mailbody=$mailbody."\nPhone: ".$phone;

$mailbody=$mailbody."\nMegye :".$megye;

$mailbody=$mailbody."\nVaros :".$varos;

$mailbody=$mailbody."\nForgertek :".$forgertek;

$mailbody=$mailbody."\nHitelertek :".$hitelertek;

$mailbody=$mailbody."\nTema :".$tema;

$mailbody=$mailbody."\nComments :".$comment;

 

if(mail($mailTo,$mailSubject,$mailbody))

{

$status="<div style='font-size:11pt;color:red;font-weight:bold;'>Köszönjük, hogy kitöltötte az ûrlapot! Rövidesen felvesszük Önnel a kapcsolatot.<br><br></div></center>";

}

else

{

$status="<center><br><br><br><div style='font-size:11pt;color:red;font-weight:bold;'>Hiba az ûrlap küldése közben. Kérem próbálja meg késõbb.</div></center>";

}

}

?>

 

 

<script language="JavaScript">

function validate()

{

if(trim(document.form1.txtname.value) == "")

{

alert("Kérem adja meg a nevét");

document.form1.txtname.focus();

return false;

}

if(trim(document.form1.txtemail.value) == "")

{

alert("Kérem adja meg az e-mail címét");

document.form1.txtemail.focus();

return false;

}

if( !isEmail(document.form1.txtemail.value) )

{

alert("Ön valószínüleg nem valós e-mail címet adott meg");

document.form1.txtemail.focus();

document.form1.txtemail.select();

return false;

}

phoneno = document.form1.txtphone.value;

len = phoneno.length;

if(len > 0)

{

for(i=0;i<len;i++)

{

x = phoneno.substr(i,1)

if( !( (x >= '0' && x <= '9') || x == '-') )

{

alert("Kérem adja meg a telefonszámát");

document.form1.txtphone.focus();

return false;

}

}

}

faxno = document.form1.txtfax.value;

len = faxno.length;

if(len > 0)

{

for(i=0;i<len;i++)

{

x = faxno.substr(i,1)

if( !( (x >= '0' && x <= '9') || x == '-') )

{

alert("Kérem adja meg a fax számát");

document.form1.txtfax.focus();

return false;

}

}

}

if(trim(document.form1.txtmegye.value) == "")

{

alert("Kérem adja meg, hogy melyik megyébõl keresett meg");

document.form1.txtmegye.focus();

return false;

 

}

if(trim(document.form1.txtvaros.value) == "")

{

alert("Kérem adja meg, hogy melyik városból keresett meg");

document.form1.txtvaros.focus();

return false;

 

}

if(trim(document.form1.txtforgertek.value) == "")

{

alert("Kérem adja meg az ingatlan forgalmi értékét");

document.form1.txtforgertek.focus();

return false;

 

}

 

if(trim(document.form1.txthitelertek.value) == "")

{

alert("Kérem adja meg a felvenni kívánt hitel összegét");

document.form1.txthitelertek.focus();

return false;

 

}

if(trim(document.form1.txttema.value) == "")

{

alert("Kérem adja meg a témát");

document.form1.txttema.focus();

return false;

}

 

document.form1.cansend.value=1;

 

return true;

}

function isEmail(emailstr)

{

dotchar = emailstr.indexOf(".");

atchar = emailstr.indexOf("@");

dotlast = emailstr.lastIndexOf(".");

spacechar = emailstr.indexOf(" ");

len = emailstr.length;

if( (dotchar == -1) || (atchar == -1) || (spacechar != -1) || (dotlast < atchar) || (dotlast == len - 1) )

{

return false;

}

else

{

return true;

}

}

function trim(str)

{

ch = '';

for(i=0;i<str.length;i++)

{

cha = str.charAt(i);

if(cha != ' ')

{

ch = ch + cha;

}

}

return ch;

}

</script>

Link to comment
Share on other sites

Mezofi

Ezzel a sorral sosem fogja elküldeni:

if(mail($mailTo,$mailSubject,$mailbody))

Szerintem valahogy így kellene:

mail($mailTo,$mailSubject,$mailbody);

:)

Következõ hiba:

Így szól az email küldésének vizsgálata a progidban:

if($cansend==1) {

Nyilván csak akkor küld email-t ha a $cansend értéke 1! Ugye?

A form végén hidden inputban (rejtett inputban) megadtad az értéket 0-nak

<input type="hidden" name="cansend" value="0">

Hát így sosem kerül sor a feltétel teljesülésére!

A helyes sor a következõ, és utána már küldi is az emailt, persze a tartalmat nem ellenõriztem.

<input type="hidden" name="cansend" value="1">

;)

Sajnos a jávához nem értek, de azt egybõl észrevettem, és szerintem neked is észre kellene venned, ha végigkövetnéd a

function validate(){

-ot, hogy ez végzi az inputok ellenõrzését. És ami ezen kívûl van azt nem fogja ellenõrizni! És ez valahol itt lezáródik, az ezután lévõ inputokat nem fogja ellenõrizni:

x = phoneno.substr(i,1)
 if( !( (x >= '0' && x <= '9') || x == '-') ){
 alert("Kérem adja meg a telefonszámát");
 document.form1.txtphone.focus();
 return false;
 }
    }
}

 

Ha elfogadsz tõlem egy tanácsot, akkor úgy csinálod az email küldést, hogy a form egy másik lapra ugrik ahol küldöd az emailt, és innen ugrasztod tovább az email küldésének eredményét közlõ tájékoztatásra.

A köztes oldalon ellenõrizni tudod milyen adatokat kaptál, stb, így sokkal áttekinthetõbb, és nem egy oldalon vergödsz!

Szerintem! :hááát:

 

Még mindig van bennem!!

Ezt lehet egyszerübben:

$name=$HTTP_POST_VARS["txtname"];

Pl így:

$name=$_POST["txtname"];

Link to comment
Share on other sites

papys

Köszi még át kell néznem, ahhoz idõ kell mert gõzöm sincs a PHP-hez csak azt nem értem, hogy az eredeti most is így mûködik a kódokhoz én nem nyúltam.

Link to comment
Share on other sites

Mezofi

Szuper! :D

Link to comment
Share on other sites

papys

if(mail($mailTo,$mailSubject,$mailbody))

{

$status="<div style='font-size:11pt;color:red;font-weight:bold;'>Köszönjük, hogy kitöltötte az ûrlapot! Rövidesen felvesszük Önnel a kapcsolatot.<br><br></div></center>";

}

 

Szerintem ez a rész azt írja, hogy ha az email ok. (elkülde, tárgy ok, tartalom ok) akkor 1 státusz sorban írja ki, hogy "Köszönjük, hogy kitöltötte az ûrlapot! Rövidesen felvesszük Önnel a kapcsolatot."

Hangsúlyozom, nem értek a php nyelvhez, csak logikusan ezt látom belõle.

 

A szupert mire érted?

Link to comment
Share on other sites

Mezofi

Ha te voltál az utolsó hozzászoló akkor szerkesztheted a hozzászólásodat, nem kell új hozzászólást nyítani.

A szupert arra értettem, hogy a régi legalább mûködik.

Az if után egy feltétel van, ha ez a feltétel teljesül akkor végrehajtódik a kapcsos zárójel utáni parancs. Nálad mi a feltétel? Mert ami nálad van az egy email küldõ függvény, és semmi feltétel nincs benne, ezért átugrik rajta és mindazon ami a kapcsos zárójelben van.

Én inkább így írnám:

if(isset($_POST["txtname"])){
//Ide felsorolni az értékadásokat
//$mailTo=.......stb.
mail($mailTo,$mailSubject,$mailbody);
//és a többit ide amit még akarsz, ha létezik a postázás
}

:D

Link to comment
Share on other sites

papys

"A gyermek úgy tanul ha kérdez!"

én vagyok a gyermek és már kezdem elveszíteni a fonalat.

 

Az eredeti képlet teljesen jól mûködik. amit csináltam vele az annyi, hogy az elején felcseréltem a sorrendet a közepére tettem új kérdéseket a végét meg hozzá alakítottam.

ez az eredeti mûködõ verzió:

<?

session_start();

$cansend=$HTTP_POST_VARS['cansend'];

if($cansend==1) {

require 'contact_setting.inc';

$mailTo = "$mailto";

$mailSubject="From ".$HTTP_POST_VARS["txtname"];

$name=$HTTP_POST_VARS["txtname"];

$company=$HTTP_POST_VARS["txtcompany"];

$address=$HTTP_POST_VARS["txtaddress"];

$phone=$HTTP_POST_VARS["txtphone"];

$fax=$HTTP_POST_VARS["txtfax"];

$email=$HTTP_POST_VARS["txtemail"];

$url=$HTTP_POST_VARS["txturl"];

$purpose=$HTTP_POST_VARS["txtpurpose"];

$comment=$HTTP_POST_VARS["txtcomment"];

 

$mailbody="Name :".$name;

$mailbody=$mailbody."\n Company :".$company;

$mailbody=$mailbody."\n Address :".$address;

$mailbody=$mailbody."\nPhone: ".$phone;

$mailbody=$mailbody."\nFax :".$fax;

$mailbody=$mailbody."\nEmail :".$email;

$mailbody=$mailbody."\nURL :".$url;

$mailbody=$mailbody."\nPurpose :".$purpose;

$mailbody=$mailbody."\nComments :".$comment;

 

if(mail($mailTo,$mailSubject,$mailbody))

{

$status="<div style='font-size:11pt;color:red;font-weight:bold;'>Köszönjük, hogy felvette velünk a kapcsolatot! Rövidesen válaszolunk e-mailjára.<br><br></div></center>";

}

else

{

$status="<center><br><br><br><div style='font-size:11pt;color:red;font-weight:bold;'>Problem in sending your request.</div></center>";

}

}

?>

<html>

<head>

<link href="best.css" rel="stylesheet" type="text/css">

<style type="text/css">

<!--

.style2 {font-size: 18px}

.style4 {font-size: 14}

.style7 {

font-size: 24px;

font-weight: bold;

}

.style8 {color: #313C52}

.style9 {font-size: 18px; color: #313C52; }

-->

</style>

<body bgcolor="#f7f7f7">

<title>Kapcsolatfelvétel</title>

 

<tr>

<td valign="top"><table width="480" height="100%" border="0" align="center" cellpadding="5" cellspacing="2">

<?php

if($status) {

?>

<tr>

<td height="20" colspan="2"><font size="+1"><B><?php echo $status;?></B></font></td>

</tr>

<?php

}

else {

?>

 

 

<tr background="../images/button1_03.png">

<td height="50" colspan="2" background="../images/butt.jpg"> </td>

</tr>

<tr background="../images/button1_03.png">

<td colspan="2"> <div align="center" class="white style7 style8">Kapcsolatfelvétel </div></td>

</tr>

<form method="post" name=form1 action="contact.php" onSubmit="return validate();">

<tr bgcolor="#f7f7f7">

<td width="38%" class="white"> <span class="style9">Név : </span></td>

<td width="62%"> <input name="txtname" type="text" size="42" maxlength="100"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" bgcolor="#f7f7f7" class="white"> <span class="style9">Cég név : </span></td>

<td width="62%"> <input name="txtcompany" type="text" style="width:250" size="42" maxlength="100"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" class="white"> <span class="style9">Cím : </span></td>

<td width="62%"> <input name="txtaddress" type="text" style="width:250" size="42" maxlength="150"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" bgcolor="#f7f7f7" class="white"> <span class="style9">Telefon :</span></td>

<td width="62%"> <input name="txtphone" type="text" maxlength="15"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" class="white"> <span class="style9">Fax : </span></td>

<td width="62%"> <input name="txtfax" type="text" maxlength="15"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" bgcolor="#f7f7f7" class="white"> <span class="style9">Feladó e-mail címe : </span></td>

<td width="62%"> <input name="txtemail" type="text" maxlength="40"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" class="white"> <span class="style9">Web cím URL : </span></td>

<td width="62%"> <input name="txturl" type="text" style="width:250" value="http://" maxlength="150"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" bgcolor="#f7f7f7" class="white"> <span class="style9">Téma : </span></td>

<td width="62%"> <input name="txtpurpose" type="text" maxlength="100" style="width:250"></td>

</tr>

<tr bgcolor="#f7f7f7">

<td width="38%" class="white"> <span class="style9">Szöveg : </span></td>

<td width="62%"> <textarea name="txtcomment" cols=35 rows="5"></textarea></td>

</tr>

 

<tr bgcolor="#f7f7f7"> <input type="hidden" name="cansend" value="0">

<td height="20" background="../images/butt.jpg" bgcolor="#f7f7f7" class="white style4"> </td>

<td height="20" background="../images/butt.jpg" bgcolor="#f7f7f7" ><input name="submit" type=submit class=style8 value = "Küldés">

    <input name="reset" type=reset class=style8 value = "Törlés">

</tr>

</form>

<?php

}

?>

</table>

</center>

</body>

</html>

<script language="JavaScript">

function validate()

{

if(trim(document.form1.txtname.value) == "")

{

alert("Kérem adja meg a nevét");

document.form1.txtname.focus();

return false;

}

if(trim(document.form1.txtcompany.value) == "")

{

alert("Kérem adja meg a cég nevét");

document.form1.txtcompany.focus();

return false;

}

if(trim(document.form1.txtaddress.value) == "")

{

alert("Kérem adja meg a címét");

document.form1.txtaddress.focus();

return false;

}

phoneno = document.form1.txtphone.value;

len = phoneno.length;

if(len > 0)

{

for(i=0;i<len;i++)

{

x = phoneno.substr(i,1)

if( !( (x >= '0' && x <= '9') || x == '-') )

{

alert("Kérem adja meg a telefonszámát");

document.form1.txtphone.focus();

return false;

}

}

}

faxno = document.form1.txtfax.value;

len = faxno.length;

if(len > 0)

{

for(i=0;i<len;i++)

{

x = faxno.substr(i,1)

if( !( (x >= '0' && x <= '9') || x == '-') )

{

alert("Kérem adja meg a fax számát");

document.form1.txtfax.focus();

return false;

}

}

}

if(trim(document.form1.txtemail.value) == "")

{

alert("Kérem adja meg az e-mail címét");

document.form1.txtemail.focus();

return false;

}

if( !isEmail(document.form1.txtemail.value) )

{

alert("Ön valószínüleg nem valós e-mail címet adott meg");

document.form1.txtemail.focus();

document.form1.txtemail.select();

return false;

}

if(trim(document.form1.txtpurpose.value) == "")

{

alert("Kérem adja meg a témát");

document.form1.txtpurpose.focus();

return false;

}

 

document.form1.cansend.value=1;

 

return true;

}

function isEmail(emailstr)

{

dotchar = emailstr.indexOf(".");

atchar = emailstr.indexOf("@");

dotlast = emailstr.lastIndexOf(".");

spacechar = emailstr.indexOf(" ");

len = emailstr.length;

if( (dotchar == -1) || (atchar == -1) || (spacechar != -1) || (dotlast < atchar) || (dotlast == len - 1) )

{

return false;

}

else

{

return true;

}

}

function trim(str)

{

ch = '';

for(i=0;i<str.length;i++)

{

cha = str.charAt(i);

if(cha != ' ')

{

ch = ch + cha;

}

}

return ch;

}

</script>

 

ha megnézed minden a régi, csak a bõvítéssel eltérõ

Link to comment
Share on other sites

Mezofi

Nem kéne mindig berakni a régi scriptet, látnám anélkül is.

Az az igazság, hogy van a scriptedben egy másik oldalnak a beillesztése:

require 'contact_setting.inc';

Én nem láthatom, hogy az mit tartalmaz, de én nem szeretem ezeket a beillesztéseket, ezeket csak az érti meg aki készítette a progit vagy aki sokáig elemezte. Nem szeretném! Ezért szerintem készíts egy másikat amit te is meg tudsz érteni, vagy vedd fel a kapcsolatot a készítõvel!

Üdv.

Link to comment
Share on other sites

papys

require 'contact_setting.inc'; ez egy txt fájl ebbe van beírva az email címem semmi mást nem tartalmaz

<?

 

// set your email id here

$mailto = "info@besthungary.hu";

 

?>

 

ennyi

Link to comment
Share on other sites

ocsi

Mezofi: Egy picit vitába szálnék veled....

A while függvénynél is lehet ilyet használni, mivel a mail egy függvény, tehát van visszatérési értéke... Ezt nem tudom pontosan de vagy 0-t vagy -1 et ad vissza sikertelen lefutás esetén...

 

Itt egy kódrészlet:

 while ($hsz_info = mysql_fetch_array($hsz_lekerd_eredm))

A lényege, hogy $hsz_lekerd_eredm többnek a 'sorain' lépkedünk és az aktuális sort emeljük ki. ÉS egyenlõvé tesszük $hsz_info -t a sorral... Ez a ciklus addig fut amíg a tömb végére nem érünk. Tehát amíg mysql_fetch_array -1 et nem ad....

 

És mégis látunk feltételt a while ciklusban ?? nem!

Szóval szerintem mûködik ez az if es dolog is... csak lehet hogy hiányzik belõle még valami...

Link to comment
Share on other sites

papys

Gyanítom hogy hol a hiba. az elején végig be kell potyögnöm az új $name=$HTTP_POST_VARS["stb"];-ket hogy végig olvassa a program és eljusson a végéig, gondolom :ötlet:

Link to comment
Share on other sites

Mezofi

Kipróbáltam, tényleg mûködik az if-be ágyazott mailküldés!

De az értékadásnál biztos gond van:

if($cansend==1) {

Ennek nem találtam meg az 1 re állítását csak ezt

<input type="hidden" name="cansend" value="0">

Ha 0 akkor nem küldi el!

:D

 

Ezekkel a módosításokkal mûködik, bár nem minden inputot ellenõriz küldés elött, de már többet mint kettõ!

if($cansend==1) {

<input type="hidden" name="cansend" value="1">

<script language="JavaScript">
function validate(){

    if(trim(document.form1.txtname.value) == ""){
    alert("Kérem adja meg a nevét");
    document.form1.txtname.focus();
    return false;
    }
    if(trim(document.form1.txtemail.value) == ""){
    alert("Kérem adja meg az e-mail címét");
    document.form1.txtemail.focus();
    return false;
    }
    if( !isEmail(document.form1.txtemail.value) ){
    alert("Ön valószínüleg nem valós e-mail címet adott meg");
    document.form1.txtemail.focus();
    document.form1.txtemail.select();
    return false;
    }
    if(trim(document.form1.txtvaros.value) == "")
    {
    alert("Kérem adja meg, hogy melyik városból keresett meg");
    document.form1.txtvaros.focus();
    return false;
    }    
    if(trim(document.form1.txtforgertek.value) == "")
    {
    alert("Kérem adja meg az ingatlan forgalmi értékét");
    document.form1.txtforgertek.focus();
    return false;
    }
    if(trim(document.form1.txthitelertek.value) == "")
    {
    alert("Kérem adja meg a felvenni kívánt hitel összegét");
    document.form1.txthitelertek.focus();
    return false;
    }
 if(trim(document.form1.txttema.value) == "")
    {
    alert("Kérem adja meg a témát");
    document.form1.txttema.focus();
    return false;
    }
 faxno = document.form1.txtfax.value;
len = faxno.length;
if(len > 0)
{
for(i=0;i<len;i++)
{
x = faxno.substr(i,1)
if( !( (x >= '0' && x <= '9') || x == '-') )
{
alert("Kérem adja meg a fax számát");
document.form1.txtfax.focus();
return false;
}
}
}
phoneno = document.form1.txtphone.value;
len = phoneno.length;
    if(len > 0){
    for(i=0;i<len;i++)
    {
    x = phoneno.substr(i,1)
 if( !( (x >= '0' && x <= '9') || x == '-') ){
 alert("Kérem adja meg a telefonszámát");
 document.form1.txtphone.focus();
 return false;
 }
    }
}

return true;
}
function isEmail(emailstr)
{
dotchar = emailstr.indexOf(".");
atchar = emailstr.indexOf("@");
dotlast = emailstr.lastIndexOf(".");
spacechar = emailstr.indexOf(" ");
len = emailstr.length;
if( (dotchar == -1) || (atchar == -1) || (spacechar != -1) || (dotlast < atchar) || (dotlast == len - 1) )
{
return false;
}
else
{
return true;
}
}
function trim(str)
{
ch = '';
for(i=0;i<str.length;i++)
{
cha = str.charAt(i);
if(cha != ' ')
{
ch = ch + cha;
}
}
return ch;
}
</script>

:D

Link to comment
Share on other sites

papys
Kipróbáltam, tényleg mûködik az if-be ágyazott mailküldés!

De az értékadásnál biztos gond van:

if($cansend==1) {

Ennek nem találtam meg az 1 re állítását csak ezt

<input type="hidden" name="cansend" value="0">

Ha 0 akkor nem küldi el!

:D

 

örök hálám :D:P8):):):)

mûködik!!!! kiírja a hibát és el is küldi az emailt.

ha lehet mégegy kérdésem :hááát:

van az ûrlapon egy csomó radio button= igen/ nem. azokat mind a két részbe be kell írni?

ezeket nem kell,h "if"- elje

 

erre gondoltam:

$mailTo = "$mailto";

$mailSubject="From ".$HTTP_POST_VARS["txtname"];

$name=$HTTP_POST_VARS["txtname"];

$email=$HTTP_POST_VARS["txtemail"];

$phone=$HTTP_POST_VARS["txtphone"];

$megye=$HTTP_POST_VARS["txtmegye"];

$varos=$HTTP_POST_VARS["txtvaros"];

$forgertek=$HTTP_POST_VARS["txtforgertek"];

$hitelertek=$HTTP_POST_VARS["txthitelertek"];

?????????????????????,,ideeeeeeeee

????????????????,meg ideeeeeeeee

 

$tema=$HTTP_POST_VARS["txttema"];

$comment=$HTTP_POST_VARS["txtcomment"];

 

$mailbody="Name :".$name;

$mailbody=$mailbody."\nEmail :".$email;

$mailbody=$mailbody."\nPhone: ".$phone;

$mailbody=$mailbody."\nMegye :".$megye;

$mailbody=$mailbody."\nVaros :".$varos;

$mailbody=$mailbody."\nForgertek :".$forgertek;

$mailbody=$mailbody."\nHitelertek :".$hitelertek;

?????????????????????????????ide isssssssss

??????????????????????????????meg atöbbit issssssssss

$mailbody=$mailbody."\nTema :".$tema;

$mailbody=$mailbody."\nComments :".$comment;

Link to comment
Share on other sites

Mezofi

@papys

Akkor ezzel bõvítsd az elsõ részt:

$hitel_jelleg=$_POST["txthiteljelleg"];
$hitel_futam_ido=$_POST["txtfutamido"];
$deviza=$_POST["txtdeviza"];
$hitel_futam_ido=$_POST["txtfutamido"];
$ajanlat_keres=$_POST["txtajanlat"];

 

A második részt már te is végig tudod csinálni.

A kérdõjelek helyére rakd amit az elõbb kijelöltél.

:)

Link to comment
Share on other sites

  • 7 months later...
probamatyi

Lenne egy nagy problémám. Éppen egy ürlapot készítek és az ékezetekkel van probléma. Mégpedig, ha elküldik nekem mail-ben az információkat akkor az ékezetes karakterek helyett %F5-öt és ehhez hasonló dolgokat kapok, pedig szükség lenne a pontos információra mivel azt használnám fel egy adatbázishoz.

Mit kéne tennem hogy az ékezetes karakterek helyett ne krikszkrakszokat kapjak e-mailben.

a csatolt állományt .att-ben kapom meg. A kódlap windows-1250

 

a kód:

 

<form action="mailto:egyerettsegizodiak@citromail.hu" method="post">

<fieldset>

<legend><b>Adatok</b></legend>

<table width="500" border="0" align="center" cellpadding="0" cellspacing="0">

<tr>

<td colspan="2">

<br>

<fieldset>

<legend> Személyes adatok</legend>

 

<br>

<b> Név: </b>

<input name=" név" type="text" id=" név" size="40"/>

<br>

 

<br>

<b>Tel.:</b>

<input name=" telefonszám" type="text" size="40" maxlength="20">

<br>

 

<br>

<b> Cím:</b>

<input name=" cím" type="text" size="40">

<br>

</fieldset> </td>

</tr>

<tr>

<td> </td>

<td> </td>

</tr>

<tr>

<td colspan="2">

 

<fieldset>

<legend>Auto</legend>

 

<br>

<b>Kocsi típusa : </b>

<input name=" típus" type="text" size="31" >

<br>

 

<br>

<b>Motorszám: </b>

<input name=" motorszám" type="text" size="35" >

<br>

 

<br>

<b>Évjárat:</b>

<select name=" évjárat">

<option value="1960" selected="selected">1980

<option value="1981">1981

<option value="1982">1982

<option value="1983">1983

<option value="1984">1984

<option value="1985">1985

<option value="1986">1986

<option value="1987">1987

<option value="1988">1988

<option value="1989">1989

<option value="1990">1990

<option value="1991">1991

<option value="1992">1992

<option value="1993">1993

<option value="1994">1994

<option value="1995">1995

<option value="1996">1996

<option value="1997">1997

<option value="1998">1998

<option value="1999">1999

<option value="2000">2000

<option value="2001">2001

<option value="2002">2002

<option value="2003">2003

<option value="2004">2004

<option value="2005">2005

<option value="2006">2006

</select>

<br>

 

<br>

<b>Probléma ismertetése:</b>

<br>

<textarea name=" probléma" cols="50" rows="8"></textarea>

</textarea>

 

<br>

<br>

 

</fieldset> </td>

</tr>

<tr>

<td> </td>

<td> </td>

</tr>

<tr>

<td colspan="2">

 

<br><input type="submit" value="Adatok elküldése">

<input type="reset" value="Adatok törlése"> </td>

</tr>

</table>

</fieldset>

</form>

Link to comment
Share on other sites

Garono

Mondjuk az oldal karakterkódolása ISO-8859-1?

 

<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type" />

Link to comment
Share on other sites

  • 2 years later...
Mycronet

Sziasztok szeretnék egy kis segítséget kérni tõletek.

 

A próba oldalamon van két ûrlap, ami mûködõ képes.

A felsõ php alapokon nyugszik, míg a másik javascript.

Nos az elsõt szeretném kibõvíteni, hogy olyan legyen mint a másik, mivel a javascriptes megoldástól szeretnék végleg megszabadulni.

 

mycronet.extra.hu

 

A php file: Action

 


<?PHP

/*
............. ITT KELL VÁLTOZTATNOD .............
*/

// email-címed:
$recipient = "valami@freemail.hu";

// az az oldal, amire átirányítson sikeres küldés után:
$response = "http://www.mycronet.extra.hu/";


/*
............. HA KEZDO VAGY, EZALATT NE VÁLTOZTASS!! .............
*/



// név mezo kitöltve?
if(empty($_POST['name'])) {
     echo "Nem adtál be nevet.";
     exit;
     }

// email mezo kitöltve?
elseif(empty($_POST['email'])) {
     echo "Nem adtál be email-címet.";
     exit;
     }
     
// üzenet mezo kitöltve?
elseif(empty($_POST['comments'])) {
     echo "Nem adtál be üzenetet.";
     exit;
     }

// érvényes email-cím?
elseif(!preg_match('/^[^\s@]+@[a-z0-9\.-]+?\.[a-z]{2,4}$/i', $_POST['email'])) {
    echo "\"" . $_POST['email'] .
        "\" Nem érvényes email-cím"; }
        
        
// ################ MAIL CONTENT:  ################ 
else {
$content = "Feladó neve: " . $_POST['name'] . "\n";
$content .= "Válaszcím: " . $_POST['email'] . "\n";
$content .= "\n";
$content .= "Üzenet: \n";
$content .= preg_replace('/\r/', '', stripslashes($_POST['comments']));



// email témája
    $nev = $_POST['name'];
    $finalSubject = "üzenet ($nev)";
    
    $addlHeaders = 'Reply-To:' . $_POST['email'];

// Elküldés.............
    mail($recipient, $finalSubject, $content, $addlHeaders);

// Átirányítás egy másik oldalra
$responseURL = "Location: $response";
header($responseURL);
}

?>

 

Form

 

 

<form action="../urlap2/action.php" method="post">

<table align="center">

<tr>

<td align="right"><font size="2"> Név: </font></td>

<td align="left"> <font size="2">

<input type="text" name="name" size=30>

</font></td>

</tr>

<tr>

<td align="right"><font size="2"> Email: </font></td>

<td align="left"> <font size="2">

<input type="text" name="email" size=30>

</font></td>

</tr>

<tr>

<td align="right" valign="top"><font size="2">Üzenet:</font></td>

<td align="left">

<div align="center"> <font size="2">

<textarea name="comments" rows=5 cols=26></textarea>

</font></div></td>

</tr>

<tr>

<td align="right" valign="top"><font size="2"></font></td>

<td style="text-align:right;">

<div align="right"><font size="2">

<input type="submit" name="s" value="Mehet" />

<input name="reset" type="reset" value="Mégse" />

</font></div></td>

</tr>

</table>

</form>

 

 

Segítségeteket elõre is köszönöm.

Link to comment
Share on other sites

arpsoft

$content .= preg_replace('/\r/', '', stripslashes($_POST['comments']));

 

Ezen sor után kell a $content-hez hozzáfûzni a plusz mezõk tartalmát:

$content .= "\n";
$content .= "Mezo1: " . preg_replace('/\r/', '', stripslashes($_POST['mezo1']))  . "\n";
$content .= "Mezo2: " . preg_replace('/\r/', '', stripslashes($_POST['mezo2']))  . "\n";

 

stb.

Link to comment
Share on other sites

Mycronet

Sziasztok.

 

A tudás Hatalom! (Hát nékem nem sok hatalmam van azt meg kell hagyni!) :D

 

Tárgymezõt megpróbáltam hozzábiggyeszteni de kevés sikerrel.

 

Ezzel egészítettem ki:

 

action

 


// targy mezo kitöltve?
elseif(empty($_POST['targy'])) {
     echo "Nem adtál be üzenet tárgy-át.";
     exit;
     }

Alulra meg így:

$content .= "Üzenet tárgya: " . $_POST['targy'] . "\n";

 

Form

 


<td align="right"><font size="2"> tárgy: </font></td>
<td align="left"> <font size="2">
<input type="text" name="targy" size=30>
</font></td>
</tr>
<tr>

 

De az üzenet küldés sikertelen, vajon mi kerülte el a figyelmem?!

 

 

Link to comment
Share on other sites

arpsoft

Beraknád a teljes kódot?

Link to comment
Share on other sites

Mycronet


/*
............. ITT KELL VÁLTOZTATNOD .............
*/

// email-címed:
$recipient = "mycronet@freemail.hu";

// az az oldal, amire átirányítson sikeres küldés után:
$response = "http://www.mycronet.extra.hu/";


/*
............. HA KEZDO VAGY, EZALATT NE VÁLTOZTASS!! .............
*/



// név mezo kitöltve?
if(empty($_POST['name'])) {
     echo "Nem adtál be nevet.";
     exit;
     }

// email mezo kitöltve?
elseif(empty($_POST['email'])) {
     echo "Nem adtál be email-címet.";
     exit;
     }
     
// targy mezo kitöltve?
elseif(empty($_POST['targy'])) {
     echo "Nem adtál be ûzenet tárgy-át.";
     exit;
     }
     
// üzenet mezo kitöltve?
elseif(empty($_POST['comments'])) {
     echo "Nem adtál be üzenetet.";
     exit;
     }

// érvényes email-cím?
elseif(!preg_match('/^[^\s@]+@[a-z0-9\.-]+?\.[a-z]{2,4}$/i', $_POST['email'])) {
    echo "\"" . $_POST['email'] .
        "\" Nem érvényes email-cím"; }
        
        
// ################ MAIL CONTENT:  ################ 
else {
$content = "Feladó neve: " . $_POST['name'] . "\n";
$content .= "Válaszcím: " . $_POST['email'] . "\n";
$content .= "üzenet targya: " . $_POST['targy'] . "\n";
$content .= "\n";
$content .= "Üzenet: \n";
$content .= preg_replace('/\r/', '', stripslashes($_POST['comments']));



// email témája
    $nev = $_POST['name'];
    $finalSubject = "üzenet ($nev)";
    $Subject = $_POST['targy'];
    $addlHeaders = 'Reply-To:' . $_POST['email'];

// Elküldés.............
    mail($recipient, $finalSubject, $content, $Subject, $addlHeaders);

// Átirányítás egy másik oldalra
$responseURL = "Location: $response";
header($responseURL);
}

?>

 

 

Form

 


<form action="../urlap2/action.php" method="post">
<table align="center">
  <tr>
    <td align="right"><font size="2"> Neved: </font></td>
    <td align="left"> <font size="2">
      <input type="text" name="name" size=38>
    </font></td>
  </tr>
  <tr>
    <td align="right"><font size="2"> Email: </font></td>
    <td align="left"> <font size="2">
      <input type="text" name="email" size=38>
    </font></td>
  </tr>
  <tr>
   <td align="right"><font size="2"> Tárgy: </font></td>
    <td align="left"> <font size="2">
      <input type="text" name="targy" size=38>
    </font></td>
  </tr>
  <tr>
    <td align="right" valign="top"><font size="2"> Üzenet:</font></td>
    <td align="left">
      <div align="center"> <font size="2">
        <textarea name="comments" rows=5 cols=28></textarea>
    </font></div></td>
  </tr>
  <tr>
    <td align="right" valign="top"><font size="2"></font></td>
    <td style="text-align:right;">
      <div align="right"><font size="2">
        <input type="submit" name="s" value="Mehet" />
        <input name="reset" type="reset" value="Mégse" />
    </font></div></td>
  </tr>
</table>
</form>

 

Töröm a fejem, és kezdek megzavarodni.

Szerintem Valami nagy marhaságot csináltam. :)

Link to comment
Share on other sites

arpsoft

Így elsõre rendben lévõnek látszik, mennie kéne. Ad vissza hibaüzit?

Link to comment
Share on other sites

Mycronet

Nem jelez hibát Sajnos.

 

Az extra szervere, nem mutatja, hogy a levél elment volna, nem számolja, ha visszaállítom a kódot eredetire akkor mûködik.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...