Pagina 1 van 1

fout in emailer.php

Geplaatst: 18 aug 2004, 16:23
door Php
Bij het verwijderen van een lid krijg ik deze debug melding dat er een fout zit in regel 235 van includes/emailer.php waardoor de bevestigings-email niet verzonden kan worden. De regels is deze:

Code: Selecteer alles

// Did it work?
		if (!$result)
		{
			message_die(GENERAL_ERROR, 'Failed sending email :: ' . (($this->use_smtp) ? 'SMTP' : 'PHP') . ' :: ' . $result, '', __LINE__, __FILE__);
		}

		return true;
	}
		message_die(GENERAL_ERROR, 'Failed sending email :: ' . (($this->use_smtp) ? 'SMTP' : 'PHP') . ' :: ' . $result, '', __LINE__, __FILE__);
De mod heeft verder deze aanpassing in admin_user.php:

Code: Selecteer alles

		  // START - Email notify on user delete 
$email_headers = 'From: ' . $board_config['board_email'] . "\nReturn-Path: " . $board_config['board_email'] . "\n"; 

include($phpbb_root_path . 'includes/emailer.'.$phpEx); 
            $emailer = new emailer($board_config['smtp_delivery']); 
                
            $emailer->use_template('deluser_notify', $to_userdata['user_lang']); 
            $emailer->extra_headers($email_headers); 
            $emailer->email_address($email); 
            $emailer->set_subject(); //$lang['Notification_subject'] 
                
            $emailer->assign_vars(array( 
               'USERNAME' => $username, 
               'SITENAME' => $board_config['sitename'], 
               'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) 
               ) 
            ); 

            $emailer->send(); 
            $emailer->reset(); 
// END - Email notify on user delete 

Re: fout in emailer.php

Geplaatst: 19 aug 2004, 12:39
door mosymuis
Php schreef:deze debug melding dat er een fout zit in regel 235 van includes/emailer.php waardoor de bevestigings-email niet verzonden kan worden
Zou je deze error ook letterlijk willen plaatsen?

Geplaatst: 19 aug 2004, 13:23
door Php
Maar natuurlijk:

Algemene Fout
Failed sending email :: PHP ::

DEBUG MODE

Line : 235

File : /home/emaatkamp/domains/christen-zijn.nl/public_html/includes/emailer.php

Geplaatst: 19 aug 2004, 13:26
door mosymuis
Dat is dus géén parse error oid, gewoon een fout van de server. Het staat je niet toe om mail te verzenden via PHP, probeer eens een SMTP server.

Geplaatst: 19 aug 2004, 13:36
door Php
Dat is niet waar, voordat ik van 2.08 naar 2.010 had geupdate kon het wel. Het is dus iets anders.

Geplaatst: 19 aug 2004, 13:41
door mosymuis
En toch is het zo. De bovenstaande error word getriggerd als $result negatief is, en dat is hij als de mail() functie, 7 regels daarboven, niet slaagt. Je kunt de @ voor mail( (regel 227) weghalen, om te zien welke server error er bij hoort.

Geplaatst: 19 aug 2004, 13:44
door Php
Dan mag je me uitleggen waarom het voor mijn update weldegelijk werkte.

Dis it mijn pakket:

http://www.subhostinginternet.nl/overzi ... culier.php

Ik heb de duurste

Geplaatst: 19 aug 2004, 13:47
door mosymuis
Dat hoef ik je niet uit te leggen :), dat kan je bij je host navragen. Probeer ook die @-truc eens om te zien waar het precies aan ligt.

Geplaatst: 19 aug 2004, 13:47
door Php
Als ik het @ teken weghaal uit deze regel 228 dan geeft hij precies dezelfde fout, niks anders of extra's.

$result = @mail($to, $this->subject, preg_replace("#(?<!\r)\n#s", "\n", $this->msg), $this->extra_headers);


En het lijkt me logisch dat als het eerst wel kon, maar na de update niet, het niet aan de server ligt maar aan wijzigingen na de update.

Geplaatst: 19 aug 2004, 13:50
door mosymuis
Haal

Code: Selecteer alles

$result = 
ook eens weg, en plaats op de regel eronder

Code: Selecteer alles

exit;

Geplaatst: 19 aug 2004, 13:58
door Php
Dan geeft hij een fout op regel 236. Gewoon dezelfde fout dus omdat de regel eentje gezakt is.

Geplaatst: 19 aug 2004, 14:57
door mosymuis
Dat zou niet kunnen met exit; erboven. Wat is nu je code in dat gebied van emailer.php?

Geplaatst: 19 aug 2004, 15:00
door Php
exit erboven? Je zegt net dat exit op de regel eronder moest? Wat ik gedaan had is result = @ weghalen, en opm de regel eronder exit; zetten, precies zoals je zei.

Geplaatst: 19 aug 2004, 15:02
door mosymuis
Exit onder de mail(, maar boven de message_die(. En wat is dan je code nu?

Geplaatst: 19 aug 2004, 15:07
door Php
Ja precies, dat zeg ik. Zo ziet het eruit:

Code: Selecteer alles

$board_config['sendmail_fix'] = 1;
				mail($to, $this->subject, preg_replace("#(?<!\r)\n#s", "\n", $this->msg), $this->extra_headers);
				exit;
			}
		}
Het punt is dat volgens mij bij mijn handmatige update naar 2.10 er niks in emailer.php veranderd is, daarom snap ik het niet.

Geplaatst: 20 aug 2004, 13:01
door mosymuis
Ik zie dat erboven (regel 212) nog een mail() commando staat, waarschijnlijk is dit degene die hij bij jou uitvoert. Haal daar weer de @ weg, en plaats exit; onder zoals je dat net ook al deed. Ik verwacht dan een error, die je verder helpt.

Geplaatst: 20 aug 2004, 13:06
door Php
Effe wat anders, alle andere emails via het adminpanel werken wel gewoon, zoals bulkmail. Ik geloof niet dat er wat mis is met de emailer.php ik denk eerder dat het met die mod te maken heeft.