2013-12-18 70 views
0

我有這個腳本,當我試圖發送一個電子郵件給用戶時,該網站的管理員刪除他們的帳戶(S)。PHP致命錯誤:調用未定義函數

我目前正在做這個由用戶三個文件:adminprocess,會話和郵件。

當管理員提交要刪除的用戶名時,操作發生在adminprocess中。 php,然後adminprocess.php調用會話的函數(sendUserdeleted())。 sendUserdeleted(0有給寄件人的類對象和函數的引用。

爲了更好地理解我附上下面做的工作守則。

1 Adminprocess.php

while($row = mysql_fetch_array($rel)) 
    { 
     $email = $row['email']; 
     $name = $row['name']; 
    } 

    $session->sendUserdeleted($name,$email); 
    header("Location: ".$session->referrer); 

2 session.php

function sendUserdeleted($name,$email) 
{ 
global $database, $form, $mailer; //The database, form and mailer object<br/> 
$mailer->senddeleted($name,$email); 
return 0; //New user added succesfully 
} 

3 Mailer.php

class Mailer 
{ 


    function senddeleted($name,$email) 
    { 
    $from = "From: ".EMAIL_FROM_NAME." <".EMAIL_FROM_ADDR.">"; 
     $subject = "Lab Scheduler - Account deleted!"; 
     $body = $name.",\n\n"."Your account from our system has been deleted"<br/> 
     return mail($email,$subject,$body,$from); 
    } 
}; 

/* Initialize mailer object */ 
$mailer = new Mailer; 

?> 

我不明白爲什麼我無法發送郵件。每當我選擇要刪除的用戶並提交該值時,出現以下錯誤:

Fatal error: Call to undefined method Mailer::senddeleted() in D:\Hosting\9769324\html\lab\include\session.php on line 408

這就是郵件沒有發送的方式。雖然,我的用戶被刪除沒有任何問題。

任何幫助將不勝感激。

+6

爲什麼你在'php'文件中有'
'? :o – NoobEditor

+0

你應該在session.php –

+0

@웃웃웃init啓動郵件程序:請避免編輯代碼表單結束....編輯歷史顯示你添加了'
'...... !! – NoobEditor

回答

1
/* Initialize mailer object */ 
$mailer = new Mailer; 

這應該是你的session.php文件

+0

我在session.php中添加了我的函數sendUserdeleted($ name,$ email),如下所示:function sendUserdeleted($ name,$ email){ global $ database,$ form,$ mailer; //數據庫,表單和郵件對象 $ mailer = new Mailer; $ mailer-> senddeleted($ name,$ email); return 0; //新用戶成功添加 } – user3115378

+0

但它仍然無法正常工作。給我同樣的錯誤 – user3115378

0
require_once('Mailer.php'); 

function sendUserdeleted($name,$email){ 
    global $database, $form; //The database, form and mailer object 

    $mailer = new Mailer; 
    $mailer->senddeleted($name,$email); 

    return 0; //New user added successfully 
} 

包括session.phpMailer.php,創造mailer

0
  1. 添加<?php include('Mailer.php') ?>

    從mailer.php文件中刪除所有<br>

  2. 包括mail.phpsession.phpinclude("Mailer.php")

  3. session.php$mailer = new Mailer;

實例化郵件類的一個對象,你已經一個$mailer對象Mailer類,所以這應該在session.php

工作
include('Mailer.php'); 

    function sendUserdeleted($name,$email){ 
     global $database, $form, $mailer ; //The database, form and mailer object 


     $mailer->senddeleted($name,$email); 

     return 0; //New user added succesfully 
    } 
相關問題