Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara memasukkan pesan email masuk ke database mySQL?

Jadi
- Anda memiliki server
- Anda mendapatkan email
- Anda ingin menyimpannya ke dalam database mysql

Konfigurasi Cpanel
- masuk ke cpnal email forwarder
- tambahkan yang baru
- redirect ke PATH -> /home/your_user/whatever/php.script.php

Skrip PHP (Anda mungkin perlu mengubah jalur "/usr/bin/php -q" tergantung pada konfigurasi server Anda)

#!/usr/bin/php -q
<?php
chdir(dirname(__FILE__));
$fd = fopen("php://stdin", "r");
$email = "";
while (!feof($fd)) {
    $email .= fread($fd, 1024);
}
fclose($fd);

if(strlen($email)<1) {
    die(); 
}

// handle email
$lines = explode("\n", $email);

// empty vars
$from = "";
$to="";
$subject = "";
$headers = "";
$message = "";
$splittingheaders = true;

for ($i=0; $i < count($lines); $i++) {
    if ($splittingheaders) {
        // this is a header
        $headers .= $lines[$i]."\n";
        // look out for special headers
        if (preg_match("/^Subject: (.*)/", $lines[$i], $matches)) {
            $subject = $matches[1];
        }
        if (preg_match("/^From: (.*)/", $lines[$i], $matches)) {
            $from = $matches[1];
        }
        if (preg_match("/^To: (.*)/", $lines[$i], $matches)) {
            $to = $matches[1];
        }
    } else {
        // not a header, but message
        $message .= $lines[$i]."\n";
    }
    if (trim($lines[$i])=="") {
        // empty line, header section has ended
        $splittingheaders = false;
    }
}

Bekerja pada shared hosting juga! :)

Yang perlu Anda tambahkan hanyalah memasukkan mysql dan menggunakan variabel yang ditentukan di atas. Apakah Anda tahu cara menggunakan database mysql dari php? Atau apakah Anda memerlukan bantuan untuk itu juga?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cari kecocokan seluruh kata di MySQL

  2. MYSQL mengatur zona waktu dalam kode PHP

  3. Apakah ada konvensi penamaan untuk MySQL?

  4. MySQL:Akses ditolak untuk pengguna 'pengguna'@'IP_ADDRESS' - Akses jarak jauh diizinkan untuk beberapa host gagal untuk host lain

  5. mendapatkan nilai yang tidak ada di tabel mysql