2014-03-28 23 views
-3

我用一個html格式寫了這個php腳本,發送了所有通過電子郵件輸入的數據。如何將它轉換爲joomla 3.2.3的模塊?我四處搜尋,但不幸的是我沒有找到任何東西。將php腳本轉換成Joomla模塊3.2.3

<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST" enctype="multipart/form-data"> 
<table border="0"> 
<caption align="center"><h3>FORM</h3></caption> 
<tr> 
    <td>Your Mail:</td> 
    <td><input type="text" name="sender_mail" value="" /></td> 
</tr> 
<tr> 
    <td>Name:</td> 
    <td><input type="text" name="name" value="" /></td> 
</tr> 
<tr> 
    <td>Description:</td> 
    <td><textarea cols="50" rows="10" name="description" style="resize:none"></textarea></td> 
    </tr> 
    <tr> 
    <td>Address:</td> 
    <td><input type="text" name="address" /></td> 
</tr> 
<tr> 
    <td>Image:</td> 
    <td><input type="file" name="attachFile" /></td> 
</tr> 
    <tr><td><h4>Images:</h4></td></tr> 
<tr> 
    <td><input type="file" name="attachFile1" /></td> 
</tr> 
<tr> 
    <td><input type="file" name="attachFile2" /></td> 
</tr> 
<tr> 
    <td><input type="file" name="attachFile3" /></td> 
</tr> 
<tr> 
    <td><input type="file" name="attachFile4" /></td> 
</tr> 
<tr> 
    <td><input type="file" name="attachFile5" /></td> 
</tr> 
<tr> 
    <td colspan="2"><input type="submit" name="send" value="send" /></td> 
</tr> 
</table> 
</form> 

<?php 
if(isset($_POST['send'])) 
{ 
$to = "[email protected]"; 
$subject= "subject"; 
$todayis = date("l, F j, Y, g:i a") ; 
$name = $_POST['name']; 
$description = $_POST['description']; 
$address = $_POST['address']; 
$email = $_POST['sender_mail']; 
$message = " 
Date: $todayis 
Name: $name 
description:\n$description\n 
address: $address"; 

    $mime_boundary="==Multipart_Boundary_x".md5(mt_rand())."x"; 
     $headers = "From: $email\r\n" . 
     "MIME-Version: 1.0\r\n" . 
      "Content-Type: multipart/mixed;\r\n" . 
      " boundary=\"{$mime_boundary}\""; 
     $message = "This is a multi-part message in MIME format.\n\n" . 
      "--{$mime_boundary}\n" . 
      "Content-Type: text/plain; charset=\"iso-8859-1\"\n" . 
      "Content-Transfer-Encoding: 7bit\n\n" . 
     $message . "\n\n"; 
     foreach($_FILES as $userfile) 
     { 
      $tmp_name = $userfile['tmp_name']; 
      $type = $userfile['type']; 
      $name = $userfile['name']; 
      $size = $userfile['size']; 
      if (file_exists($tmp_name)) 
      { 
       if(is_uploaded_file($tmp_name)) 
       { 
        $file = fopen($tmp_name,'rb'); 
        $data = fread($file,filesize($tmp_name)); 
        fclose($file); 
        $data = chunk_split(base64_encode($data)); 
       } 
       $message .= "--{$mime_boundary}\n" . 
        "Content-Type: {$type};\n" . 
        " name=\"{$name}\"\n" . 
        "Content-Disposition: attachment;\n" . 
        " filename=\"{$fileatt_name}\"\n" . 
        "Content-Transfer-Encoding: base64\n\n" . 
       $data . "\n\n"; 
      } 
     } 
     $message.="--{$mime_boundary}--\n"; 
if (mail($to, $subject, $message, $headers)) 
    echo "Mail sent successfully."; 
else 
    echo "Error in mail"; 
} 
?> 

我希望你能幫助我。

+1

開始閱讀關於如何開始使用模塊的Joomla文檔。開始開發它,如果遇到問題,請再次提出您的問題,並提供與特定編碼相關的問題 – Lodder

+0

也許您可以開始查看Forms擴展:http://extensions.joomla.org/extensions/contacts-and -feedback/forms – Shaz

+0

我已閱讀文檔,但我不明白如何將我的代碼拆分爲模塊joomla的多個文件。 – CleverBall

回答

-1

以下是關於如何爲Joomla 2.5+創建簡單模塊的文檔。

通常情況下,默認情況下,模塊大約有3個文件...但他們可以有更多基於您的Joomla。

文件結構。

mod_yourmodule.php(這真的有使用到如default.php文件重定向基本代碼...查看默認的mod_login.php文件的Joomla模塊。) mod_yourmodule.xml(這會擁有所有的作者信息和你的模塊再次約了幾次名字......再次,看看默認mod_login.xml

TMPL /如default.php(這將有大部分代碼。 ..你只是在頂部粘貼)。

初學者。 - Joomla基於PHP並且大部分工作方式相同......因此,您可以使用上面的同一表單並將其發佈到當前頁面,並使用jRequest獲取所有輸入值。現在 http://docs.joomla.org/J1.5:Retrieving_and_Filtering_GET_and_POST_requests_with_JRequest::getVar

...我相信你會得到一個點,你的模塊是有點工作,你可以尋求支持回到這裏......如果沒有,你可以隨時使用類似Rsform獲得在Seconds的形式。

+0

再一次,你指的是OLD編碼標準的人。 OP特別表示他們正在使用Joomla 3.2。在您提供的鏈接頂部,甚至有一條藍色的通知,表示JRequest已被棄用。 – Lodder