Reply to Re: Files

Your name:

Reply:


Posted by Bob Winter on 06/28/05 15:26

Chris,

He's my take on your problem, I have used a few different functions
but followed the same pattern as your original script. Check out
http://www.php.net/manual/en/ to get the details on the ones you don't
understand. I have not included error checking. This example works
successfully on my system.
--Bob

<?php

$recp_list = file("mail_group_list.txt");

$group_list = file("file_group_list.txt");

$cnt = 0;
foreach($recp_list as $line) {
$split = explode(',', $line);
$id = trim($split[0]);
$email = trim($split[1]);
if($email != '') {
foreach($group_list as $groupline) {
$groupsplit = explode(",", $groupline);
$groupid = trim($groupsplit[0]);
$groupFileName = trim($groupsplit[1]);
if($id == $groupid) {
$cnt++;
// start mailing
$fromname = "Test Mailer";
$fromaddress = "email@email.com";
$subject = "Test mail";
$message = "Test message $groupFileName";
$headers = "From: $fromname <$fromaddress>\n";
// Notify the user on screen if the send was succesfull
if(mail($email, $subject, $message, $headers)) {
print "Mail sent successfully to $email";
} else {
print "Mail not sent to $email";
}
}
}
}
}
if(!$cnt) {
print 'No matches in files.';
}
?>


Chris Grigor wrote:
> Hey all,
>
> I am having a bash at working with flat files.
>
> What I am trying to achieve is the following
>
> There are 2 files with info in them,
> file1 has
> id,email
>
> and file2 has
> id,filename
>
> what I am trying to achieve is open up file1 get the id and email then
> open file2 and match the id of file1 to id of file2, then if succesful
> send a mail with the filename in file2.
>
> Maybe have a look at the code...
>
> $recp_list = fopen("mail_group_list.txt", "r");
>
> while(!feof($recp_list))
> {
>
> $line = fgets($recp_list, 255);
>
> $line = chop($line);
>
> $split = explode(",", $line);
>
> $id = $split[0];
> $email = $split[1];
>
> // time to mail.
>
> if ($email != "") {
>
>
>
> $group_list = fopen("file_group_list.txt", "r");
>
> while(!feof($group_list))
> {
> $groupline = fgets($group_list, 255);
>
> $groupline = chop($groupline);
>
> $groupsplit = explode(",", $groupline);
>
> $groupid = $groupsplit[0];
> $groupFileName = $groupsplit[1];
>
> if($groupid = $id)
> {
>
>
> // start mailing
> $fromname = "Test Mailer";
> $fromaddress = "email@email.com";
> $subject = "Test mail";
> $message = "Test message $groupFileName";
> $headers = "From: \"".$fromname."\" <".$fromaddress.">\n";
>
> // Notify the user on screen if the send was succesfull
> if(mail($email, $subject, $message, $headers))
>
> {
> print "Mail sent successfully to $email";
> }
> else
> {
> print "Mail not sent to $email";
> }
>
>
> }#end if groupid = id
> }#end while group list
> }#end if email
>
>
> }#end while email !=""
> ?>
>
>
> So thats the mail.php
>
> mail_list_group.txt looks like this
>
> 1,test@test.com
> 5,test1@test.com
> 7,test@test.com
>
> file_group_list.txt looks like this
>
> 2,filename1.doc
> 3,filename2.doc
> 4,filename3.doc
>
> Any help on this would be great !
>
> Cheers
> Chris
>
> PS the formatting might come out all wrong as its mailed from a web account.

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация