php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 08-07-2008, 11:35
KillUrMind
 Registrierter Benutzer
Links : Onlinestatus : KillUrMind ist offline
Registriert seit: Jan 2008
Ort: Berlin
Beiträge: 111
KillUrMind ist zur Zeit noch ein unbeschriebenes Blatt
Standard Problem Newsletterversand

Hallo,
ich komme bei meinem Vorhaben irgendwie nicht weiter.
Problem: Ich habe ca. 3000 Kontakte, die des Öfteren via Newsletter informiert werden sollen. Nun hatte ich es bislang so gemacht, dass ich sämtliche E-Mail-Adressen aus meiner DB in einen String gepackt habe, un danach alle in den BCC gespeist habe, jedoch funktionierte es mal nicht und dann doch wieder. Nun habe ich gelesen, dass es "besser" wäre, den Mailversand pro Kontakt einzeln abzuwickeln.
Nun gut, jedoch ist mein Problem, dass ich nicht darauf komme wie ich den Mysql-Output ($Mailempfaenger = mysql_fetch_array($result)) in einer for-Schleife abwickle. Ich möchte immer 200 Newsletter mit dieser Methode versenden und dann das Script/die Problem Newsletterversand, da sonst, die Laufzeit eventl. zu hoch werden könnte.
Ich vermute, ich stelle mich da gerade einfach zu dumm an. Das ist bislang der klägliche Beginn:
PHP-Code:
<?php 
ini_set
('display_errors',ON); 
error_reporting(E_ALL); 
require(
'connect.inc.php'); 
$selectReceivers "SELECT email FROM contacts ORDER BY email DESC"
$receiverSelectionResult mysql_query($selectReceivers) or die(mysql_error()); 
while (
$receiver mysql_fetch_array($receiverSelectionResult)) {  
?>
Frage: Wie sieht die Schleifenabwicklung aus?
Mit Zitat antworten
  #2 (permalink)  
Alt 08-07-2008, 12:00
case
 Registrierter Benutzer
Links : Onlinestatus : case ist offline
Registriert seit: Mar 2007
Beiträge: 265
case ist zur Zeit noch ein unbeschriebenes Blatt
case eine Nachricht über ICQ schicken
Standard

also das sieht doch eigentlich ganz ok aus... in der Schleife solltest du in jedem $receiver['email'] hast du dann die mailadressen... oder wo ist dein Problem??
__________________
signed oder unsigned... das ist hier die Frage
Mit Zitat antworten
  #3 (permalink)  
Alt 08-07-2008, 12:04
KillUrMind
 Registrierter Benutzer
Links : Onlinestatus : KillUrMind ist offline
Registriert seit: Jan 2008
Ort: Berlin
Beiträge: 111
KillUrMind ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Problem liegt darin, dass ich nicht weiß wie ich die 200er Beschränkung einbaue?!
Mit Zitat antworten
  #4 (permalink)  
Alt 08-07-2008, 12:07
sHimp|1mp
 Newbie
Links : Onlinestatus : sHimp|1mp ist offline
Registriert seit: Aug 2003
Ort: Rheine
Beiträge: 117
sHimp|1mp ist zur Zeit noch ein unbeschriebenes Blatt
sHimp|1mp eine Nachricht über ICQ schicken
Standard

Wenn du pro seiten aufruf 200 Email versenden willst muss in deine SQL anweisung am ende noch folgendes rein

PHP-Code:
LIMIT 0,200 
Das heißt beginnent ab 0 und 200 datensätze rausholen wenn du die Seite dann das 2. mal lädst musst du es dann mit


PHP-Code:
LIMIT 200,200 
machen. Machst du einfach ne Varible die mit zählt wie oft die seite aufgerufen wurde und über GET mit gegeben wird un multiplizierst die mit 200 und fügst das dann da ein! Allerdings musst vorher gucken wie viele Datensätze du drin hast nicht das du ne endlos schleife bastelst, sobald dann die max anzahl erreicht wurde muss er dann zu ner anderen Seite linken!

Das mit dem Weiterlink kannst mit meta tag über html machen oder in php mit

PHP-Code:
<? header("Location: seite.php&id=1"); ?>
Wobei ich mich da nicht festlegen möchte ob das mit der PHP Variante funktioniert aber müsste eigentlich!

lg Malte
Mit Zitat antworten
  #5 (permalink)  
Alt 08-07-2008, 13:33
KillUrMind
 Registrierter Benutzer
Links : Onlinestatus : KillUrMind ist offline
Registriert seit: Jan 2008
Ort: Berlin
Beiträge: 111
KillUrMind ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Alles klar, das klingt plausibel! Danke.
Wenn jemand noch ne Schleifenvariante kennen sollte, würde die mich rein Interesse halber auch noch interessieren. Sofern es eine gibt!
Mit Zitat antworten
  #6 (permalink)  
Alt 08-07-2008, 13:34
lennart
 PHP Junior
Links : Onlinestatus : lennart ist offline
Registriert seit: May 2007
Ort: Hamburg
Beiträge: 565
lennart ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Es gibt Dinge, für die PHP und andere Web-Scriptsprachen einfach nicht geeignet sind...
Mit Zitat antworten
  #7 (permalink)  
Alt 08-07-2008, 13:44
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Und es gibt PHP-Scripte, die ruft man nicht im Browser auf
Mit Zitat antworten
  #8 (permalink)  
Alt 11-07-2008, 14:37
KillUrMind
 Registrierter Benutzer
Links : Onlinestatus : KillUrMind ist offline
Registriert seit: Jan 2008
Ort: Berlin
Beiträge: 111
KillUrMind ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,
die Abwicklung habe ich jetzt funktionstüchtig gemacht und die funzt - fast!
Wenn ich nun mit DW einen Newsletter kreiere, dann schickt er es mal ab und mal nicht. Ich vermute das Script verträgt manche Zeichen im Content des Newsletters nicht.
Kann mir jemand sagen, welche das sein könnten?!

PHP-Code:
function sendNewsletter() { 
$subject $_SESSION['newsletterSubject']; 
$newsletterHeader '<html><head>';
$newsletterHeader .= '<style type="text/css">body{font-family:arial; font-size:9px;}</style>';
$newsletterHeader .= '</head><body>'
$newsletterFooter '<div style=\"border-top:1px solid #666666;border-bottom:1px solid #666666;color:#323232; text-align:center;\">';
$newsletterFooter .= 'Signatur';                             
$newsletterFooter .= '</div></body></html>'
$header 'From: Absender <Absender@Absender.de>' "\n"
$header .= 'Content-type: text/html; charset=iso-8859-15' "\n"$content $_SESSION['newsletterContent']; 
$totalcontent $newsletterHeader $content $newsletterFooter$totalcontent utf8_decode($totalcontent); 
if (!
$_SESSION['stpnt']) {     
$start 0
} else {     
$start $_SESSION['stpnt']; 

$_SESSION['end'] = $_SESSION['stpnt'] + 201
$allReceivers mysql_query("SELECT * FROM contacts") or die(mysql_error()); 
$all mysql_num_rows($allReceivers); 
$selectReceivers "SELECT contactid, email FROM contacts ORDER BY contactid DESC LIMIT " $start ",200"
$receiverSelectionResult mysql_query($selectReceivers) or die(mysql_error()); 
while (
$receiver mysql_fetch_array($receiverSelectionResult)) {
$_SESSION['count'] = $_SESSION['count'] + 1;     
$to $receiver['email'];     
mail($to,$subject,$totalcontent,$header);     
print 
$_SESSION['count'] . ': ' $receiver['email'] . '<br />'

if (
$_SESSION['count'] != $all) { 
print 
'<script language="javascript" type="text/javascript">';
print 
'window.location.href=\'sendNewsletter.php?type=sendNewsletter&savety=' md5('newsletterSavety' date("Ymd") . 'viewingDone') . '\';'
//php-resource entwertet nicht, trotz eigentlich gesetztem Backslash
print '</script>'
} else {     
print 
'<script language="javascript" type="text/javascript">';
print 
'alert(\'Newsletter has been sent!\');';
print 
'</script>';
unset(
$_SESSION['count'],$_SESSION['end'],$_SESSION['newsletterSubject'],$_SESSION['newsletterContent']); 



Geändert von KillUrMind (11-07-2008 um 14:40 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 13-07-2008, 13:41
KillUrMind
 Registrierter Benutzer
Links : Onlinestatus : KillUrMind ist offline
Registriert seit: Jan 2008
Ort: Berlin
Beiträge: 111
KillUrMind ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Keiner ne Idee?
Mit Zitat antworten
  #10 (permalink)  
Alt 13-07-2008, 15:31
netsnake
 Newbie
Links : Onlinestatus : netsnake ist offline
Registriert seit: Apr 2006
Beiträge: 79
netsnake ist zur Zeit noch ein unbeschriebenes Blatt
Standard

versuch erstmal dein ganzes safety-zeugs wegzulassen, und schau mal, obs funktioniert.

Des weiteren, BITTE: einrücken, andernfalls kannst du nicht ernsthaft erwarten, dass sich jemand (oder zumindest ich ) mit dem code beschäftigt!

Greez
netsnake
__________________
| netsnake | www.netsnake.net |
Für Rechtschreibfehler, Denkfehler, Tippfehler, usw. übernehme ich KEINE HAFTUNG
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:36 Uhr.