نمایش نتایج: از شماره 1 تا 4 , از مجموع 4

موضوع: بک اپ از دیتابیس و ارسال به ایمیل

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن
    تاریخ عضویت
    Jul 2011
    نوشته ها
    137
    تشکر تشکر کرده 
    23
    تشکر تشکر شده 
    171
    تشکر شده در
    143 پست

    پیش فرض بک اپ از دیتابیس و ارسال به ایمیل

    کد PHP:

    <?php
    include_once("jdf.php");
        function 
    backup_db($host$user$pass$name$tables '*') {
            
    date_default_timezone_set('Asia/Tehran');
      
            
    $return '';
      
            
    mysql_connect($host,$user,$pass) or die('Connection error');
            
    mysql_select_db($name) or die('Database error');
            
    mysql_query('SET NAMES \'utf8\'');
            
    mysql_set_charset('utf8');
      
            if(
    $tables == '*') {
                
    $tables = array();
                
    $result mysql_query('SHOW TABLES');
                while(
    $row mysql_fetch_row($result)) {
                    
    $tables[] = $row[0];
                }
                
    mysql_free_result($result);
            }
            else {
                
    $tables is_array($tables) ? $tables explode(','$tables);
            }
      
            foreach(
    $tables as $table) {
                
    $result mysql_query('SELECT * FROM `'.$table.'`');
                
    $num_fields mysql_num_fields($result);
                
    $return .= 'DROP TABLE IF EXISTS `'.$table.'`;'.PHP_EOL.PHP_EOL;
                
    $row mysql_fetch_row(mysql_query('SHOW CREATE TABLE `'.$table.'`'));
                
    $return .= $row[1].';'.PHP_EOL.PHP_EOL;
      
                for (
    $i 0$i $num_fields$i++) {
                    while(
    $row mysql_fetch_row($result)) {
                        
    $return.= 'INSERT INTO `'.$table.'` VALUES(';
                        for(
    $j 0$j $num_fields$j++) {
                            
    $row[$j] = addslashes($row[$j]);
                            
    $row[$j] = str_replace('\n''\\n'$row[$j]);
                            if (isset(
    $row[$j])) {
                                
    $return .= '\''.$row[$j].'\'';
                            }
                            else {
                                
    $return .= '\'\'';
                            }
                            if (
    $j < ($num_fields 1)) {
                                
    $return .= ',';
                            }
                        }
                        
    $return .= ');'.PHP_EOL;
                    }
                }
                
    $return .= PHP_EOL.PHP_EOL.PHP_EOL;
            }
    $ruhy=jdate('Y-m-d-H-i')."db.sql";
        
    file_put_contents($ruhy,$return);
        }





    backup_db('localhost''p''U''p'); 
    function 
    mail_attachment($filename$path$mailto$from_mail$from_name,  $subject$message) {
        
    $file $path.$filename;
        
    $file_size filesize($file);
        
    $handle fopen($file"r");
        
    $content fread($handle$file_size);
        
    fclose($handle);
        
    $content chunk_split(base64_encode($content));
        
    $uid md5(uniqid(time()));
        
    $name basename($file);
        
    $header "From: ".$from_name." <".$from_mail.">\r\n";
        
    $header .= "Reply-To: ".$from_mail."\r\n";
        
    $header .= "MIME-Version: 1.0\r\n";
        
    $header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
        
    $header .= "This is a multi-part message in MIME format.\r\n";
        
    $header .= "--".$uid."\r\n";
        
    $header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
        
    $header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
        
    $header .= $message."\r\n\r\n";
        
    $header .= "--".$uid."\r\n";
        
    $header .= "Content-Type: application/octet-stream; name=\"".$filename."\"\r\n"// use different content types here
        
    $header .= "Content-Transfer-Encoding: base64\r\n";
        
    $header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
        
    $header .= $content."\r\n\r\n";
        
    $header .= "--".$uid."--";
        if (
    mail($mailto$subject""$header)) {
            echo 
    "mail send ... OK"// or use booleans here
        
    } else {
            echo 
    "mail send ... ERROR!";
        }
    }
    $ruhy=jdate('Y-m-d-H-i')."db.sql";
    $my_file $ruhy;
    $my_path '/home/pavizpri/domains/paviz-print.com/public_html/';
    $my_name "مهدي پاويز";
    $my_mail "civilparto@yahoo.com";
    $my_subject "بک اپ ديتابيس";
    $my_message "بک اپ با موفقيت ارسال گرديد";
    $to_email="civilparto@gmail.com , paviz_print@yahoo.com";
     
    mail_attachment($my_file$my_path$to_email$my_mail$my_name$my_subject$my_message);
    unlink($ruhy);

    سلام دوستان مشکل این کد چیه که ارسال نمیکنه ایمیل رو و ارور میده

    تلگرام : @ruhyshujy



  2. #2
    عضو انجمن AMIB آواتار ها
    تاریخ عضویت
    Sep 2016
    نوشته ها
    159
    تشکر تشکر کرده 
    12
    تشکر تشکر شده 
    131
    تشکر شده در
    106 پست

    پیش فرض پاسخ : بک اپ از دیتابیس و ارسال به ایمیل

    کد خطایی که دریافت می‌کنید چیست؟
    بدون دیدن کد خطا و ندانستن مشکل قطعا کسی توانایی حل کردنش را هم نخواهد داشت

  3. #3
    عضو انجمن
    تاریخ عضویت
    Jul 2011
    نوشته ها
    137
    تشکر تشکر کرده 
    23
    تشکر تشکر شده 
    171
    تشکر شده در
    143 پست

    پیش فرض پاسخ : بک اپ از دیتابیس و ارسال به ایمیل

    Warning: mail(): Multiple or malformed newlines found in additional_header in /home/pavizpri/domains/paviz-print.com/public_html/b.php on line 86
    mail send ... ERROR!
    این ارور رو میده

    تلگرام : @ruhyshujy



  4. #4
    عضو انجمن AMIB آواتار ها
    تاریخ عضویت
    Sep 2016
    نوشته ها
    159
    تشکر تشکر کرده 
    12
    تشکر تشکر شده 
    131
    تشکر شده در
    106 پست

    پیش فرض پاسخ : بک اپ از دیتابیس و ارسال به ایمیل

    اگر کدهای ارسال ایمیل رو خودتون تغییر نداده باشید، احتمالا به علت اینکه از متن‌های فارسی برای عنوان ایمیل و اسم فرستنده استفاده کردید این مشکل پیش اومده
    ارسال کدهای یونیکد در ایمیل باید با حالت خاصی کدگذاری بشه که ظاهرا درکد بالا این موارد پیش‌بینی نشده و فرض کرده که همه‌ی متن‌ها انگلیسی هست

    می‌تونید تمام متن‌ها رو انگلیسی کنید و دوباره تست کنید
    اگر مشکل حل شد و خواستید که حتما فارسی باشه، یک کد دیگه یا یک کتابخانه‌ی دیگه برای ارسال ایمیل پیدا کنید

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. مشکل در دیتابیس-عدم ایمپورت دیتا بیس اصلی (MariaDB 5.5.41)
    توسط dreamyeye در انجمن سوالات و مشکلات
    پاسخ ها: 3
    آخرين نوشته: March 31st, 2018, 11:00
  2. پاسخ ها: 3
    آخرين نوشته: September 26th, 2017, 00:34
  3. درخواست سرور مجازی از دیتاسنتر ایس کلو ( icecolo ) انگلیس
    توسط fashen در انجمن درخواست سرور مجازی
    پاسخ ها: 1
    آخرين نوشته: August 26th, 2014, 11:02
  4. پاسخ ها: 0
    آخرين نوشته: October 2nd, 2013, 22:14
  5. پاسخ ها: 5
    آخرين نوشته: August 6th, 2013, 07:11

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •