php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.02.2006, 19:06  
Gast
 
Beiträge: n/a
Standard [Erledigt] wieder ein Problem bei phpmailer und smtp

Hallo Leuts...

Habe noch ein weiteres Problem mit meinem phpmailer...

Folgendes:

Das Problem mit dem Auslesen aus der Datenbank und dem korrekten Abschicken habe ich mit eurer Hilfe letztendlich lösen können...

Das ganze funzte auch wunderbar...nur ein Problem gab es noch:

Wenn ich Mails angeschickt hatte dauerte es bis zu einer Stunde bis sie ankamen. daher wollte ich das ganze über meinen smtp-Server laufen lassen, in der Hoffnung dass die Mails dann schneller ankommen...

Habe mich auch ein wenig hier und im Netz schlau gemacht. Habe dann den zusätzlichen Code für die smtp-Sachen eingefügt und - wie es dann so meistens ist - jede Menge Fehlermeldungen bekommen.

Nachdem ich u.a. die Pfade in relative Pfade und noch ein paar andere Dinge geändert hatt gab es letztendlich nur noch eine Fehlermeldung:

Fatal error: Cannot instantiate non-existent class: phpmailer in /mnt/kw1/08/925/00000000/htdocs/email.php on line 63

Nachdem ich hier ein wenig rumgesucht habe scheint das an irgendeiner include-SAche zu hängen, weiss aber nicht wie ich da vorgehen muss...

Falls jemand meine php-info braucht:

http://www.dieternuhrfanclub.de/phpinfo.php

und hier jetzt mal der Code:

PHP-Code:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<?
    
// Verbindung mit DB herstellen
    
mysql_connect("rdbms.strato.de""xxx""xxx"); 
    
mysql_select_db(xxx); 
    
    
// Abfrage 
    
$mysql_abfrage  "SELECT DISTINCT * FROM fanclub_newsletter ORDER BY fanclub_newsletter_id";  
    
    
$mysql_ergebnis=mysql_query($mysql_abfrage);
    
    
$num mysql_num_rows($mysql_ergebnis);

    
$receivers = array(); 
    if (
$num == 0
        echo 
'<p class="programm_fett">Es liegen keine Emails vor...</p>

'

     
    else 
    { 
       
// Ausgabe des Datensatzes in Variable 
       
while ($datensatz mysql_fetch_assoc($mysql_ergebnis)) 
       { 
          
$receivers[] = $datensatz["fanclub_newsletter_email"];       
       }         
    }  

    
mysql_close();    

    
// Verbindung mit DB herstellen
    
mysql_connect("rdbms.strato.de""xxx""xxx"); 
    
mysql_select_db(xxx); 
    
    
// Abfrage 
    
$mysql_abfrage  "SELECT DISTINCT * FROM fanclub_email_text";  
    
    
$mysql_ergebnis=mysql_query($mysql_abfrage);
    
    
$num mysql_num_rows($mysql_ergebnis);

    if (
$num == 0)
        echo 
'<p class="programm_fett">Es liegen keine aktuellen News vor...</p>

'
;
    
    else
    {
    
// Ausgabe des Datensatzes in einer Tabelle
    
while ($datensatz mysql_fetch_assoc($mysql_ergebnis))
        {
            
$email_text '' $datensatz["fanclub_email_text"] . '';
        }        
    }
    
    
mysql_close();    


  
//Klasse einbinden
  
require('http://www.dieternuhrfanclub.de/phpmailer/class.phpmailer.php');
  
  
//Instanz von PHPMailer bilden
  
$mail = new PHPMailer();

  
// per SMTP verschicken
  
$mail->IsSMTP();                                  

  
// SMTP-Server
  
$mail->Host "post.strato.de"

  
// SMTP mit Authentifizierung benutzen
  
$mail->SMTPAuth true;     

  
// SMTP-Benutzername
  
$mail->Username "xxx";  

  
// SMTP-Passwort
  
$mail->Password "xxx"
 
  
//Absenderadresse der Email setzen
  
$mail->From "dieternuhrfanclub.de";
  
  
//Name des Abenders setzen
  
$mail->FromName "Dieter Nuhr-Fanclub";

  
//Betreff der Email setzen
  
$mail->Subject "Neues von www.dieternuhrfanclub.de";
 
  
//Text der EMail setzen
  
$mail->Body $email_text;

  
//Liste der Empfänger durchlaufen
  
foreach ($receivers as $receiver)
  {
     
//Empfänger setzen
     
$mail->AddAddress($receiver);
 
     
//EMail senden und überprüfen ob sie versandt wurde
     
if(!$mail->Send())
     {
       
//$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
       
echo "Die Email konnte nicht gesendet werden
"
;
       echo 
"Fehler: " $mail->ErrorInfo;
     }
     else
     {
       
//$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
       
echo "Die Email wurde versandt.
"
;
     }
  
     
//Empfänger zurücksetzen
     
$mail->ClearAddresses();
  }

?>


[url="bearbeiten.htm"]Zur&uuml;ck[/url]

</body>
</html>
UNd bitte nicht hauen oder so... Hab versucht das Problem so weit wie möglich selber zu lösen (sitze jetzt seit 2 Stunden hier drann), aber jetzt komme ich echt nimmer weiter...

besten dank

Lapje
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.02.2006, 19:08  
Erfahrener Benutzer
 
Benutzerbild von dsmcg
 
Registriert seit: 11.10.2005
Beiträge: 2.405
dsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäre
Standard

das ist weil du beim require nicht http:// nehmen kannst..
__________________
Wie man Fragen richtig stellt
dsmcg ist offline  
Alt 06.02.2006, 19:15  
Gast
 
Beiträge: n/a
Standard

mmhh...aber dann bekomme ich wieder die Fehlermeldungen die ich dadurch wegbekommen habe...kann auch sein das es vorher falsch war...

Warning: Unable to access http://www.dieternuhrfanclub.de/phpm....phpmailer.php in /mnt/kw1/08/925/00000000/htdocs/email.php on line 60

Fatal error: Failed opening required 'www.dieternuhrfanclub.de/phpmailer/class.phpmailer.php' (include_path='') in /mnt/kw1/08/925/00000000/htdocs/email.php on line 60


Ich meine aber das ich irgendwie was mit include setzen muss...aber ich bin da noch nicht so durchgestiegen...
 
Alt 06.02.2006, 19:16  
Erfahrener Benutzer
 
Benutzerbild von dsmcg
 
Registriert seit: 11.10.2005
Beiträge: 2.405
dsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäre
Standard

ja eben er kann den stream nicht öffnen du kannst nicht einfach ganze pfad angaben nehmen.

du musst mit ../ oder./ oder weiss ich was arbeiten dann klappts auch.

befindet sich den das ganze (auch die classe) auf dem gleichen Server?
__________________
Wie man Fragen richtig stellt
dsmcg ist offline  
Alt 06.02.2006, 19:23  
Gast
 
Beiträge: n/a
Standard

mmhhh....

Ich meine das ich in mehreren Beiträgen gelesen zu haben das sich MEIKEL imemr darüber aufgeregt hat das nie komplette Pfade angegeben wurden...daher dachte ich das es richtig ist so...

also die Dateien

class.phpmailer.php
class.smtp.php

befinden sich beide im Ordner phpmailer...(soll glaub ich auch so sein)...

auch die anderen Files befinden sich auf dem Server...

wie gesagt, ohne die SMTP-SAchen funzte das wunderbar...

EDIT
Hab noch rausgefunden das ich in der php.ini folgendes ändern muss:

PHP-Code:
ini_set("include_path"".:/path/to/phpmailer/dir"); 
NUr meine ich gelesen zu haben dass man bei STrato das ganze nicht ändern kann...oder ??? Weil dann kann ich das glaub ich vergessen...
 
Alt 06.02.2006, 19:32  
Erfahrener Benutzer
 
Benutzerbild von dsmcg
 
Registriert seit: 11.10.2005
Beiträge: 2.405
dsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäre
Standard

er kann die classe nicht "requiren" pass den Pfad an und du wirst sehen das es klappt.
__________________
Wie man Fragen richtig stellt
dsmcg ist offline  
Alt 06.02.2006, 19:37  
Gast
 
Beiträge: n/a
Standard

Ähm darf ich mal erwähnen, dass PHP Version 4.1.2 eher was für's Museum als für einen Server ist. Entweder dem Hoster mal heftigs auf die Füße treten oder anderen Hoster suchen

Gruß
phpfan
 
Alt 06.02.2006, 19:42  
Benutzer
 
Registriert seit: 26.09.2003
Beiträge: 98
wizzardxx
Standard

Ich würde das:

mysql_connect("rdbms.strato.de", "XXXX", "XXXX");
mysql_select_db(XXXX);

mal schnell aus deinem Post rausnehmen. :wink:

Hat zwar nichts mit deinem Problem zu tun aber wenn das die Real Daten sind ........
wizzardxx ist offline  
Alt 06.02.2006, 19:50  
Gast
 
Beiträge: n/a
Standard

da seht ihr mal wie kirre ich schon bin....

noch mal zur PHP-Version...

Ich hab mal bei Strato gesucht weil ich mir sicher war das ich auch PHP 5 dabei habe. Da steht was von wegen wenn ich etwas in PHP 5 gemacht habe sollte ich einfach die Datei *.php5 nennen. Öhm...was soll das ? Funzt das denn auch so auf meinem virtuellen Server ? ODer ist das ne reine Strato-Einstellung? Ich habe keine Lust alle Links immer deswegen ändern zu müssen...


Undvon wegen PFad anpassen...wie mache ich das denn ? Wie gesagt, das einzige was ich rausgefunden habe war das mit der php.ini...
 
Alt 06.02.2006, 20:00  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Lapje
Undvon wegen PFad anpassen...wie mache ich das denn ?
Den Pfad im Dateisystem angeben: relativ bzw. absolut. (nicht HTTP)
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHPMailer Problem ochsi PHP Tipps 2008 7 08.07.2008 10:34
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
email( umgeschrieben auf Smtp( und Problem bleibt ;-; Neosteve PHP Tipps 2007 1 22.04.2007 10:30
Problem mit smtp und mercury Anuschka PHP Tipps 2006 4 18.08.2006 16:06
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] Installations problem PHP Tipps 2007 20 02.01.2006 20:08
PHPMailer mailt nicht Smiley PHP Tipps 2007 4 06.12.2005 16:33
Problem beim Mail-Versand mit dem SMTP-Skript von M. Lemos PHP Tipps 2007 5 16.11.2005 23:36
Bitte nicht hauen :) .... PHPMailer Problem PHP-Fortgeschrittene 4 18.08.2005 21:31
mail von lokalem Server an SMTP im Netz -after_pop- Problem PHP-Fortgeschrittene 7 12.08.2005 14:40
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
Problem mit phpmailer PHP Tipps 2004 1 25.10.2004 18:52
mailen per SMTP - Problem PHP Tipps 2004 5 02.09.2004 15:28
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
phpmailer strato, strato phpmailer, phpmailer php.ini, strato php smtp, strato smtp php, phpmailer strato smtp, phpmailer smtp, strato phpmailer smtp, http://www.php.de/php-tipps-2006/36765-erledigt-wieder-ein-problem-bei-phpmailer-und-smtp.html, strato php mail, strato php.ini smtp, phpmailer php ini, php.ini phpmailer, php smtp strato, phpmailer und strato, php mailer strato, cannot instantiate non-existent class: phpmailer, php.ini smtp strato, phpmailer smtp strato, strato smtp server php

Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.