ugrás a tartalomhoz

PHP - Megrendelő űrlap - bcc küldés

Lyoner · 2011. Feb. 27. (V), 13.46
Üdv Mindenkinek !

Egy megrendelő űrlappal kapcsolatban volna egy kérdésem.

$mail->AddAddress("valaki##kukac##vipmail.hu");
$mail->AddCC("neki##kukac##freemail.hu");
$mail->AddBCC(" ");
Az volna a kérdésem,hogyha az AddBCC-hez nem írnak email címet,akkor is elküldi a titkos másolatot egy email-re, ha úgy írták a űrlapot?

Köszönöm választ!

Üdv:Layoner
 
1

Telepatikus

janoszen · 2011. Feb. 27. (V), 20.17
Mi itt mind telepatikus képességekkel rendelkezünk és pontosan tudjuk, miféle megrendelő lapról van szó, hogy néz ki a PHP kódja és milyen szoftvert használ levelezésre.

Azok, akik mégsem, pedig imádnak barkochbázni és plusz köröket futni.

Szerk: bocsánat az iróniáért, de tényleg próbáld meg úgy elolvasni a saját témádat, hogy ebből valakinek rá kell jönnie, hogy hol lehet a gond, ehhez lehetőleg minden segítséget adj meg.
7

:)

Lyoner · 2011. Már. 12. (Szo), 16.06
Semmi gond,csak diszkréten kezelném az ügyet,de most már többet írtam róla !

Üdv:Layoner
2

igen?

Thomas · 2011. Feb. 27. (V), 20.36
Gondolom phpMailer-ről van szó.

Ez pontosan mi is? Ha nem addsz meg címzettet a titkos másolathoz, akkor elküldi-e a meg nem adott címre?
8

Köszönöm válaszod !

Lyoner · 2011. Már. 12. (Szo), 16.09
A 6. hozzászólásnál részletesen leírtam.....

Üdv:Layoner
3

Szinte kizárt hogy elküldje.

bb0072 · 2011. Feb. 28. (H), 11.28
Szinte kizárt hogy elküldje. Ha nincs email cím, hova küldené? De ha nagyon érdekel, akkor nézd meg a szerver mail logjában, hogy hogy ment ki a levél.
Esetleg egy ilyen is segíthet:

if(!empty($_POST['BCC'])) {
    $mail->AddBCC($_POST['BCC'])
}
4

vagyis

bb0072 · 2011. Feb. 28. (H), 11.29
Az emptyempty helyett csak egy empty persze. A kódszinező mintha kissé bugos lenne.
5

Az empty kulcsszó valamiért

inf3rno · 2011. Feb. 28. (H), 16.52
Az empty kulcsszó valamiért nem tetszik neki, nem tudtam meghaxolni :-)

A témához: nyilván ha nem adsz meg BCC-t, akkor nem küldesz BCC-t senkinek. Ha úgy írták az űrlapot, hogy lehet headert injektálni, akkor persze elküldi ;-)
14

Milyen legyen?

kismiska · 2011. Már. 14. (H), 04.52
Milyen legyen az empty formázása?

Az shBrushPhp.js-ben az empty szerepel a:
var funcs='...' változóban, és a
var keywords='...' változóban is.

Próba képen kitöröltem az egyiket, és így néz ki [bnálam][/b]:
9

Üdv,köszönöm válaszod !

Lyoner · 2011. Már. 12. (Szo), 16.11
A 6.hozzászólásban részletesen leírtam....

Üdv:Layoner
6

Konkrétabban....

Lyoner · 2011. Már. 12. (Szo), 15.14
Köszönöm Mindenkinek az előző válaszokat!

Nem akarok az illetőnek rosszat,de a jelenlegi helyzet meg nekem nem megoldás,ezért részletezem a problémát!

Decemberben készített valaki nekem egy megrendelő űrlapot.-A titkos másolathoz tudtom és beleegyezésem nélkül beírta saját E-mail címét.
Ezt a használatbavétel elött észrevettem,kivettem és megkérdeztem az illetőt,hogy mégis hogy gondolja ezt?

-Nem tudtam,hogy nem szabad,küldök egy másik kódot,mondta.

A másik kódba ugyanúgy benne volt az E-mail címe,ezt is észrvettem és átírtam egy saját E-mailre.

Másfél hónap múlva az űrlapkészítő úriember saját E-mail címéről küldött egy nekem küldött megrendelést és tőlem kérdezte,hogy ezt Ő hogy kapta meg.

Sajnos az úr szavára nem lehet adni,megadtam neki a lehetőséget,hogy helyrehozza "hibáját",nem él vele.

Ma kaptam egy megrendelést,és az úr nem sokkal később már többször a megrendelő oldalamat látogatta. / webstatisztika,egyértelmű/

Az úr egyébként ebben a fórumban is regisztrálva van ,nem célom a nyilvánosság elé kitenni ezt a témát,bár megérdemelné.

Ami egyértelmű,hogy ha a titkos másolathoz nem írok E-mail címet,vagy a sajátomat írom,akkor is tud a megrendeléseimről,így viszont a megrendelőm nem tudom használni !

Múlt vasárnap azt igérte,hogy helyrehozza,és írásban nyilatkozik,hogy semmi törvénytelen-titkos kódrészlet nincs a szkriptben.-Ennek az igéretének sem tett eleget!

Nekem más nem marad,csak a hatóságok,ha hétfőig nem lesz megoldás.

Azért írok Nektek így látatlanul,mert ebben a fórumba is regisztrált tag,lehet hogy jobb belátásra tudnátok bírni!

Végezetül a kód

<? ob_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<title>Online Megrendelő > Megrendelését 0-24-óráig  leadhatja</title>
 
 
 

<style type="text/css" media="all">
*{
 font-family:"Times New Roman", Times, serif;
 font-size:16px;
}
 
#minta{
 color:#444;
 width:100%;
 float:left;
 text-align:center;
 border-bottom:#666 solid 1px;
}
 
#minta input[type=text]{
 border:none;
 border-bottom:#444 dotted 2px;
 text-align:center;
}
 
#urlap{
 width:100%;
 float:left;
 padding-top:15px;
 border-top:#999 solid 1px;
 border-bottom:#666 solid 1px;
}
 
#urlap .sor{
 width:100%;
 float:left;
 text-align:center;
 margin-bottom:5px;
}
 
#urlap .sor label{
 width:50%;
 float:left;
 text-align:right;
}
 
#urlap .sor input[type=text], #urlap .sor textarea{
 float:left;
 text-align:left;
}
 
#footer{
 width:100%;
 float:left;
 border-top:#999 solid 1px;
}
.style2 {color: #FF0000}
</style>
<script type="text/javascript">
function pageback()
{ 
 var path = window.location.pathname; 
 var pos =path.lastIndexOf( path.charAt( path.indexOf(":")+1) ); 
 var filename = path.substring(pos+1);
 document.location.href=filename;
}
</script>
</head>
<body>
 

<?
$sform=true;
if (!empty($_POST))
{
 $sender=new formsend();
 $ex=$sender->checkform($_POST);
 if ($ex=='ok')
 {
  $sendreq=$sender->sendform($_POST);
  $sform=false;
 }
 else
 {
  foreach ($_POST as $key => $value)
  {
   ${$key}=$value;
  }
 }
}
 
?>
    <form method="post">
    <div id="minta">
    <p align="center"><U>Online Megrendelő</U></p><br/>
    
    
      <span class="style2">Megrendelem  a Leopard KFT-től  az alábbi munkákat:
      </p>
      </span>
      <p align="center"><input type="text" style="width:870px;" maxlength="100" name="mintamegr" value="<?=$mintamegr ?>"></p>
    <p>A fenti  munkák értékét a&nbsp;<input type="text" style="width:670px;" maxlength="80" name="mintaertek" value="<?=$mintaertek ?>">Ft-ot </p>
    <p align="center">azaz&nbsp;<input type="text" style="width:810px;" maxlength="100" name="mintapenz" value="<?=$mintapenz ?>">Ft-ot </p>
    
    <p align="center" class="style1"><U>elfogadom.  és a munka befejeztével készpénzben kiegyenlítem.</U></p>
    <p align="center">Budapest, 2011&nbsp;<input type="text" style="width:160px;" name="mintaho" value="<?=$mintaho ?>">hó&nbsp;<input type="text" style="width:40px;" name="mintanap" value="<?=$mintanap ?>">nap </p>
    </div>
    
    <div id="urlap">
    <div class="sor"><label for="name">Megrendelő neve:&nbsp;</label><input type="text" name="nev" value="<?=$nev ?>"></div> 
    <div class="sor"><label for="name">Megrendelő telefonszáma:&nbsp;</label><input type="text" name="tel" value="<?=$tel ?>"></div>
    <div class="sor"><label for="name">Munkavégzés helye:&nbsp;</label><input type="text" name="hely" value="<?=$hely ?>"></div>
    <div class="sor"><label for="name">Munkavégzés kért időpontja:&nbsp;</label><input type="text" name="idopont" value="<?=$idopont ?>"></div>
    <div class="sor"><label for="name" style="padding-top:25px;">Egyéb kérés-üzenet:&nbsp;</label><textarea cols="25" rows="5" name="megrendeles"><?=$megrendeles ?></textarea></div>
    <div class="sor"><label for="name">Megrendelő E-mail címe:&nbsp;</label><input type="text" name="email" value="<?=$email ?>"></div>
    <div class="sor"><label for="name">Szem.ig.szám/Adószám:&nbsp;</label><input type="text" name="szigad"  value="<?=$szigad ?>"></div>
    <div class="sor"><input type="checkbox" name="elfogad">
      <span class="style2">Elfogadom,hogy az így leadott megrendelést nem tudom lemondani!</span></div>
    <div class="sor"><input type="submit" value="Küldés" /></div>
    </div>
    </form>
    <div id="footer">
 
 
 
 
 
</center>    
 

<?
if (!$sform)
{
 if ($sendreq=='ok')
 {
  header('location: http://xy.html');
  exit;
 }
 else{ $ex="<script type=\"text/javascript\"> alert('A megrendelés továbbítása során probléma merült fel, kérjük próbálja meg újra!'); </script>"; }
}
 
if ($ex!='ok') print($ex); ?>
</body>
</html>
 
<?
class formsend
{
 public function formsend(){ /**/ }
 
 public function checkform($req)
 {
  $ok='ok';
  if (strtolower($req['elfogad'])=='on')
  {
   if ($this->checkmail($req['email']))
   {
    foreach ($req as $key => $value)
    {
     if (empty($value))
     {
      $ok="<script type=\"text/javascript\"> alert('Minden adatot meg kell adni!'); </script>";  
     }
    }
   }
   else{ $ok="<script type=\"text/javascript\"> alert('A megadott e-mail cím hibás, vagy nem valódi!'); </script>"; }
  }
  else{ $ok="<script type=\"text/javascript\"> alert('Kérem fogadja el, hogy megrendelését nem mondhatja le!'); </script>"; }
  
  if ($ok=='ok')
  {
   $t=$req['tel'];
   if (strlen($t)<=9){ $ok="<script type=\"text/javascript\"> alert('A telefonszámot körzetszámmal kell megadni, és csak számokat tartalmazhat!'); </script>"; }
   
   $d=$req['mintanap'];
   if ($d>31 || $d<0){ $ok="<script type=\"text/javascript\"> alert('A megrendelés mintában megadott nap hibás!'); </script>"; }
  }
  return $ok;
 }
 
 protected function checkmail($email)
 {
  if (strpos($email, '@')!==false && strpos($email, '.')!==false)
  {
    list($Username, $Domain) = split("@",$email);
    if(getmxrr($Domain, $MXHost))
    {
     return true;
    }
    else
    {
     if(@fsockopen($Domain, 25, $errno, $errstr, 30))
     {
      return true;
     }
     else
     {
      return false;
     }
    }
 
  }
  else
  {
   return false;
  }
 } 
 
 public function sendform($req)
 {
  foreach ($_POST as $key => $value)
  {
   ${$key}=$value;
  }
 
  $text='
  <div style="color:#444; width:100%; float:left; text-align:center; border-bottom:#666 solid 1px;">
    <p><em><U><strong>Online Megrendelés </strong></U></em></p>
    <p><br />
    
      <em><strong>Megrendelem  a</strong></em><em><strong> </strong></em><em><strong>Leopard</strong></em><em><strong>Parduc</strong></em><em><strong> </strong></em><em><strong>KFT</strong></em><em><strong>-től  az alábbi munkákat:</strong></em></p>
    <p><input type="text" style="width:870px; border:none; border-bottom:#444 dotted 2px; text-align:center;" maxlength="100" readonly="readonly" value="'.$mintamegr.'"></p>
    <p><em><strong>A fenti  munkák értékét a&nbsp;<input type="text" style="width:670px; border:none; border-bottom:#444 dotted 2px; text-align:center;" maxlength="80" readonly="readonly" value="'.$mintaertek.'">Ft-ot </strong></em></p>
    <p><em><strong>azaz&nbsp;<input type="text" style="width:810px; border:none; border-bottom:#444 dotted 2px; text-align:center;" maxlength="100" readonly="readonly" value="'.$mintapenz.'">Ft-ot</strong></em> <em><strong> </strong></em></p>
    
    <p><em><U><strong>elfogadom.  és a munka befejeztével készpénzben kiegyenlítem.</strong></U></em></p>
    <p><br />Budapest, 2011&nbsp;<input type="text" style="width:160px; border:none; border-bottom:#444 dotted 2px; text-align:center;" readonly="readonly" value="'.$mintaho.'">hó&nbsp;<input type="text" style="width:40px; border:none; border-bottom:#444 dotted 2px; text-align:center;" readonly="readonly" value="'.$mintanap.'">nap </p>
    </div><br><p>Megrendelő neve: '.$nev.'</p><p>Megrendelő telefonszáma: '.$tel.'</p><p>Munkavégzés helye: '.$hely.'</p><p>Munkavégzés kért időpontja: '.$idopont.'</p><p>Egyéb kérés-üzenet: '.$megrendeles.'</p><p>Szem.ig.szám/Adószám: '.$szigad.'<p>Megrendelő IP címe: '.$_SERVER['REMOTE_ADDR'].'</p>';
  
  include_once('phpmailer/class.phpmailer.php');
  include_once('Includes/phpmailer/phpmailer.lang-hu.php');
  $mail = new PHPMailer();
  $mail->From = $email;
  $mail->FromName = $nev;
  $mail->Subject = "Megrendelés";
  $mail->CharSet="iso-8859-2";  
  $mail->MsgHTML($text);
  $mail->AddAddress("p##kukac##vipmail.hu");
  $mail->AddCC("l##kukac##freemail.hu");
  $mail->AddBCC("bodri##kukac##gmail.hu");
  
  if($mail->Send())
  {
   return true;  
  }
  else
  {
   return false;
  }
   $mail->ClearAddresses();
   $mail->ClearAttachments();
  }
}
 
ob_end_flush();
?>
Üdv:Layoner
10

Sajnálatos, hogy vannak

bugadani · 2011. Már. 12. (Szo), 20.34
Sajnálatos, hogy vannak ilyenek...
Nos... Legközelebb kérlek használd a kódszínezőt, nagyon megkönnyítené azoknak a dolgát, akiktől segítséget vársz.
Ezt a sort kell kitörölnöd, utána feltölteni az egészet a tárhelyedre, utána nem szabadna titkos másolatot küldenie.
$mail->AddBCC("bodri##kukac##gmail.hu");
A biztonság kedvéért én azért szereznék egy eredeti másolatot a PHPMailerből, hátha az sem teljesen olyan, mint lennie kéne.
11

ok,elnézést!

Lyoner · 2011. Már. 12. (Szo), 21.13
bodri##kukac##gmail.hu

ez nem valós E-mail,de az illető e helyére írta az E-mail címét amit egyből kiszedtem,így is tud a megrendeléseimről.

Ő küldött egy nekem küldött megrendelőt az ő e-mail címéről.....
12

Kódszínezőt

janoszen · 2011. Már. 12. (Szo), 21.55
A kódszínező javítva, szólhattok nyugodtan, ha ilyen van.
13

Ha esetleg nála van hostolva

rrd · 2011. Már. 13. (V), 20.57
Ha esetleg nála van hostolva az alkalmazás akkor könnyen kaphat titkos másolatot. Egyébként meg a legegyszerûbb ha fogod és ráeresztesz egy keresôt a teljes kódra, hogy keressen benne @-okat. Linux alatt egy grep -iRn parancs és kész.
15

Nem nála van hostolva,a

Lyoner · 2011. Már. 14. (H), 21.42
Nem nála van hostolva,a kódban eddig senki nem találta.....
16

Valahol pedig ott van

janoszen · 2011. Már. 14. (H), 23.54
Valahol márpedig ott lesz a rendszerben az e-mail cím, magától ritkán történnek az ilyesmik. Persze vakon tapogatózni elég nehéz.