




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一步:php连接数据库:dbconnection.php第二步:邮箱类email.class.phpdebug = FALSE;$this-smtp_port = $smtp_port;$this-relay_host = $relay_host;$this-time_out = 30; /is used in fsockopen()#$this-auth = $auth;/auth$this-user = $user;$this-pass = $pass;#$this-host_name = localhost; /is used in HELO command$this-log_file =;$this-sock = FALSE;function sendmail($to, $from, $subject = , $body = , $mailtype, $cc = , $bcc = , $additional_headers = )$mail_from = $this-get_address($this-strip_comment($from);$body = ereg_replace(|(rn)(.), 1.3, $body);$header .= MIME-Version:1.0rn;if($mailtype=HTML)$header .= Content-Type:text/htmlrn;$header .= To: .$to.rn;if ($cc != ) $header .= Cc: .$cc.rn;$header .= From: $fromrn;$header .= Subject: .$subject.rn;$header .= $additional_headers;$header .= Date: .date(r).rn;$header .= X-Mailer:By Redhat (PHP/.phpversion().)rn;list($msec, $sec) = explode( , microtime();$header .= Message-ID: rn;$TO = explode(, $this-strip_comment($to);if ($cc != ) $TO = array_merge($TO, explode(, $this-strip_comment($cc);if ($bcc != ) $TO = array_merge($TO, explode(, $this-strip_comment($bcc);$sent = TRUE;foreach ($TO as $rcpt_to) $rcpt_to = $this-get_address($rcpt_to);if (!$this-smtp_sockopen($rcpt_to) $this-log_write(Error: Cannot send email to .$rcpt_to.n);$sent = FALSE;continue;if ($this-smtp_send($this-host_name, $mail_from, $rcpt_to, $header, $body) $this-log_write(E-mail has been sent to n); else $this-log_write(Error: Cannot send email to n);$sent = FALSE;fclose($this-sock);$this-log_write(Disconnected from remote hostn);echo ;echo $header;return $sent;function smtp_send($helo, $from, $to, $header, $body = )if (!$this-smtp_putcmd(HELO, $helo) return $this-smtp_error(sending HELO command);#authif($this-auth)if (!$this-smtp_putcmd(AUTH LOGIN, base64_encode($this-user) return $this-smtp_error(sending HELO command);if (!$this-smtp_putcmd(, base64_encode($this-pass) return $this-smtp_error(sending HELO command);#if (!$this-smtp_putcmd(MAIL, FROM:) return $this-smtp_error(sending MAIL FROM command);if (!$this-smtp_putcmd(RCPT, TO:) return $this-smtp_error(sending RCPT TO command);if (!$this-smtp_putcmd(DATA) return $this-smtp_error(sending DATA command);if (!$this-smtp_message($header, $body) return $this-smtp_error(sending message);if (!$this-smtp_eom() return $this-smtp_error(sending . EOM);if (!$this-smtp_putcmd(QUIT) return $this-smtp_error(sending QUIT command);return TRUE;function smtp_sockopen($address)if ($this-relay_host = ) return $this-smtp_sockopen_mx($address); else return $this-smtp_sockopen_relay();function smtp_sockopen_relay()$this-log_write(Trying to .$this-relay_host.:.$this-smtp_port.n);$this-sock = fsockopen($this-relay_host, $this-smtp_port, $errno, $errstr, $this-time_out);if (!($this-sock & $this-smtp_ok() $this-log_write(Error: Cannot connenct to relay host .$this-relay_host.n);$this-log_write(Error: .$errstr. (.$errno.)n);return FALSE;$this-log_write(Connected to relay host .$this-relay_host.n);return TRUE;function smtp_sockopen_mx($address)$domain = ereg_replace(.+(+)$, 1, $address);if (!getmxrr($domain, $MXHOSTS) $this-log_write(Error: Cannot resolve MX .$domain.n);return FALSE;foreach ($MXHOSTS as $host) $this-log_write(Trying to .$host.:.$this-smtp_port.n);$this-sock = fsockopen($host, $this-smtp_port, $errno, $errstr, $this-time_out);if (!($this-sock & $this-smtp_ok() $this-log_write(Warning: Cannot connect to mx host .$host.n);$this-log_write(Error: .$errstr. (.$errno.)n);continue;$this-log_write(Connected to mx host .$host.n);return TRUE;$this-log_write(Error: Cannot connect to any mx hosts (.implode(, , $MXHOSTS).)n);return FALSE;function smtp_message($header, $body)fputs($this-sock, $header.rn.$body);$this-smtp_debug( .str_replace(rn, n. , $header.n .$body.n );return TRUE;function smtp_eom()fputs($this-sock, rn.rn);$this-smtp_debug(. EOMn);return $this-smtp_ok();function smtp_ok()$response = str_replace(rn, , fgets($this-sock, 512);$this-smtp_debug($response.n);if (!ereg(23, $response) fputs($this-sock, QUITrn);fgets($this-sock, 512);$this-log_write(Error: Remote host returned .$response.n);return FALSE;return TRUE;function smtp_putcmd($cmd, $arg = )if ($arg != ) if($cmd=) $cmd = $arg;else $cmd = $cmd. .$arg;fputs($this-sock, $cmd.rn);$this-smtp_debug( .$cmd.n);return $this-smtp_ok();function smtp_error($string)$this-log_write(Error: Error occurred while .$string.n);return FALSE;function log_write($message)$this-smtp_debug($message);if ($this-log_file = ) return TRUE;$message = date(M d H:i:s ).get_current_user().getmypid().: .$message;if (!file_exists($this-log_file) | !($fp = fopen($this-log_file, a) $this-smtp_debug(Warning: Cannot open log file .$this-log_file.n);return FALSE;flock($fp, LOCK_EX);fputs($fp, $message);fclose($fp);return TRUE;function strip_comment($address)$comment = ()*);while (ereg($comment, $address) $address = ereg_replace($comment, , $address);return $address;function get_address($address)$address = ereg_replace( trn)+, , $address);$address = ereg_replace(.*.*$, 1, $address);return $address;function smtp_debug($message)if ($this-debug) echo $message.;function get_attach_type($image_tag) /$filedata = array();$img_file_con=fopen($image_tag,r);unset($image_data);while ($tem_buffer=AddSlashes(fread($img_file_con,filesize($image_tag)$image_data.=$tem_buffer;fclose($img_file_con);$filedatacontext = $image_data;$filedatafilename= basename($image_tag);$extension=substr($image_tag,strrpos($image_tag,.),strlen($image_tag)-strrpos($image_tag,.);switch($extension)case .gif:$filedatatype = image/gif;break;case .gz:$filedatatype = application/x-gzip;break;case .htm:$filedatatype = text/html;break;case .html:$filedatatype = text/html;break;case .jpg:$filedatatype = image/jpeg;break;case .tar:$filedatatype = application/x-tar;break;case .txt:$filedatatype = text/plain;break;case .zip:$filedatatype = application/zip;break;default:$filedatatype = application/octet-stream;break;return $filedata;?第三步:激活类jihuo.php?phprequire(dbconnection.php); echo $_GETcode; echo 已经激活; echo ;if($_GETcode) $result=sqlsrv_query( select * from actcode where code=.$_GETcode.,$conn ); /查询数据库中是否有此激活账号if(sqlsrv_num_rows($result) = 1 ) /$_ROW =sqlsrv_fetch_array( $result );/$i = sqlsrv_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CI 420-2024颈部除皱注射操作规范
- 2025年环保行业绿色环保技术应用前景研究报告
- 嵊泗县2025浙江舟山市嵊泗县事业单位紧缺专业人才招聘15人笔试历年参考题库附带答案详解
- 山东省2025年山东聊城经济技术开发区事业单位公开招聘教师(16人)笔试历年参考题库附带答案详解
- 姚安县2025云南楚雄州姚安县农业农村局农业紧缺专业技术人才招聘4人笔试历年参考题库附带答案详解
- 呼伦贝尔市2025内蒙古呼伦贝尔市陈巴尔虎旗“就在北疆”“职引未来”高校毕业生退役笔试历年参考题库附带答案详解
- 南昌市2025江西南昌市劳动保障事务代理中心招聘劳务派遣人员1人笔试历年参考题库附带答案详解
- 云南省2025云南文山州丘北县事业单位紧缺岗位第二次招聘(7人)笔试历年参考题库附带答案详解
- 上海市2025上海华东师范大学法学院财务秘书招聘1人笔试历年参考题库附带答案详解
- 2025重庆机电控股集团机电工程技术有限公司招聘市场营销安全员等岗位共11人笔试参考题库附带答案详解
- 农业现代化种植技术培训课件
- 中城汽车(山东)有限公司审计报告
- 大学博士竞赛试题及答案
- 钢结构彩钢瓦施工工艺与技术交底
- 2025版煤矿安全规程宣贯培训课件
- 梁启超家教家风课件
- DB31∕T 1545-2025 卫生健康数据分类分级要求
- 大学生创新创业基础(创新创业课程)完整全套教学课件
- 初中毕业证在哪里查询
- 名词语法讲解
- GB/T 5796.4-2022梯形螺纹第4部分:公差
评论
0/150
提交评论