CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
23.07.2002, 16:50:29
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Problem mit Arrays
Hi Leute, ich muss aller Anfangs sagen, dass ich ein absoluter Newbie in PHP bin, und mit PHP nicht viel am Hut habe, habe mir aber in letzter Zeit mühsam ein Newsletter script unter Hilfe zusammengeschrieben.
Nun habe ich folgende Aufgabenstellung:
Das Script schreibt die angemeldeten emailadressen in eine txt datei und trennt sie mit einem "%", damit sie der mail-handler nachher mit explode zerstückeln kann.
Die Datei sieht dann in etwa so aus:
hugo@de.com%blahblah@hugo.com....
Bsp:
$lines = explode("%",$content);
for ($key=1;$key<sizeof($lines);$key++){
mail($lines$key],$subject,$message,$mailheaders);
}
Das funktioniert auch tadellos. Jetzt möchte ich jedoch den Newsletter personalisieren, das bedeutet zu jeder Emailadresse möchte ich noch einen Ansprechnamen hinzugeben.
Dass er das in die Datei reinschreibt habe ich ebenfalls geschafft, nur habe ich jetzt das Problem, dass er mir z.B. solch einen String zerstückeln sollte:
hugo@de.com&Hr. Hugo%blahblah@hugo.com&Fr. Blahblah...
Dabei sollte er die Emailadresse in eine eigene Variable schreiben (am besten $lines) und den Namen in eine andere Variable (z.B. $names), aber er sollte trotzdem die ganze datei abarbeiten.
Hätte da jemand eine Idee (bitte etwas leihenhafter erklären)
Wäre Euch wirklich dankbar!
__________________
Liebe Grüße
Wolfgang
|
23.07.2002, 16:56:53
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
du könntest die datei so gestalten:
name1;e-mail1
name2;e-mail2
name3;e-mail3
.
.
.
das ganze kannst du dann mit
fgetcsv trennen:
Code:
$file=fopen("deinedatei","r");
while($line=fgetcsv($file,255,";") )
{
list($name,$mailad)=$line;
/*hier kannst du jetzt $name und $mailad
in die mail einfügen und sie abschicken! -
jede einzeln natürlich, da die mails
customisiert sind. */
}
ich hoffe, das funktioniert, ich habs nur aus dem kopf getippt.
|
23.07.2002, 17:17:58
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Wie erzwinge ich einen break beim Schreiben?
Hi, danke, die Lösung macht auch Logik !
Nur, wie erzwinge ich einen break beim schreiben in die Datei, habe folgendes probiert, er gibt mir aber einen parse error aus:
$newfile = fopen($datei,"a+");
$add = $email."%".$person.<br>;
fwrite($newfile, $add);
fclose($newfile);
__________________
Liebe Grüße
Wolfgang
|
23.07.2002, 17:23:01
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
$add="$email%$person
";
muss es heissen, dann funktionierts auch denke ich mal ;)
|
23.07.2002, 17:25:09
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Danke!
Bzw.
$add="$email;$person
";
bei Strichpunkttrennung für csv!
okidoki, probiers gleich aus
__________________
Liebe Grüße
Wolfgang
|
23.07.2002, 17:50:32
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Funktioniert!!
Hey danke, das funktioniert jetzt tadellos, auch mit dem versenden klappts schon, jetzt muss ich nur mehr das script im bezug auf newsletter abmelden überarbeiten (dass er immer die ganze zeile wieder löscht)
darf ich mich noch melden, wenn ich fragen habe?
__________________
Liebe Grüße
Wolfgang
|
23.07.2002, 19:39:25
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Fast fertig!
Hi!
Habe jetzt noch ein kleines Problem
Muss am Anfang des Scripts aus der Datei (wo die emails und die namen drinnenstehen) auslesen, ob die datei vorhanden ist. Meine Lösung:
$file=fopen("$datei","r");
while($line=fgetcsv($file,255,";") )
{
list($mailad,$name)=$line;
if ($line != $email){
$out="$line";
$found=0;
}
else {
$found=1;
}
}
fclose($file);
Ziel soll es sein, falls die Mailadresse mit Name gefunden werden, dass die Bedingung in der while Schleife stimmt und er found=0 ausspuckt (und im weiteren fall registrieren lasst) bei mir kommt aber IMMER found=1 heraus, und er lasst gar keine mail mehr registrieren.
hast du da eine idee??
Vielen Dank im Vorraus
Wolfgang
__________________
Liebe Grüße
Wolfgang
|
23.07.2002, 19:55:10
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
Erledigt
Problem erledigt
Sag kennst du einen Compiler, in dem PHP strukturiert aussieht, ich arbeite nämlich im Editor, da is das ziemlich hart :)
__________________
Liebe Grüße
Wolfgang
|
24.07.2002, 09:49:34
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
natürlich kenne ich welche:
UltraEdit (weiss nicht, wo du es herkriegst) ist recht nett, was auch in ordnung ist, ist Phpedit (kriegst du gratis von www.phpedit.com), das ist schon ein ziemlich ausgereifter editor, noch einer wäre hier zu finden: http://www.maguma.com/products/download.php wobei ich den nicht so gerne mag, allerdings kann er auch recht viel (die letzten beiden würde ich mir umbedingt ansehen, ich weiss nur nicht, ob die nicht etwas der overkill sind)
aja und noch viele mehr kriegst du, wenn du bei www.download.com nach php editor oder sowas suchst!
|
24.07.2002, 11:02:08
|
Anfänger
|
|
Registriert seit: Jul 2002
Beiträge: 9
|
|
PHPEdit genügt
Hi!
Vielen Dank für den Hinweis. Wie gesagt, ich bin absoluter Leihenprogrammierer und habe gerade mal minimale C Erfahrungen. Aber ein wenig PHP schadet mal nicht, vielleicht wird es ja mehr :)
Der PHPEdit reicht voll aus, ich brauche ja vorerst nur eine strukturierte Darstellung, wie man sie eben von einem Compiler gewohnt ist. Und diesen Zweck erfüllt er ja ganz gut :)
__________________
Liebe Grüße
Wolfgang
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:30:46 Uhr.
|