Call to undefined method error

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Bas C

Bas C

28/12/2010 16:58:27
Quote Anchor link
Hallo medescripters,

Ik was voor iemand een nieuwsbrief-scriptje aan het schrijven maar loop tegen een fout aan waar ik niet uit kom. Ik krijg in send.php namelijk een 'Call to undefined method'-error van PHPMailer. De exacte error is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Fatal error: Call to undefined method PHPMailer::AddAdress() in /public/sites/***/newsletter/send.php on line 26


Dit is send.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
// Classes en database laden
require_once('phpmailer/class.phpmailer.php');
require_once('phpmailer/language/phpmailer.lang-nl.php') ;
require_once('database.php');

//Gegevens uit de database halen
$query = "SELECT * FROM nieuwsbrief WHERE taal = 'Engels'";
    
$result = mysql_query($query) or die(mysql_error()); //Resultaat

$succes = 0;
$failed = 0;

while($row = mysql_fetch_array($result, MYSQL_ASSOC)){ //In een array proppen zo lang er gegevens zijn

$mail             = new PHPMailer(); //Mail aanmaken

try {

$body             =  file_get_contents('newsletter.html'); //Inhoud

$mail->AddReplyTo("[email protected]","Creations of Nature"); //Afzender
$mail->SetFrom('[email protected]', 'Creations of Nature');

$mail->AddAdress($row['emailadres'], $row['naam']); //Ontvanger uit de array toevoegen

$mail->Subject    = 'Newsletter - Creations of Nature';

$mail->AltBody    = "Please visit http://www.creations-of-nature.com/engels/newsletter/newsletter.html to view the newsletter online";

$mail->MsgHTML($body); //Inhoud in de body schrijven

$mail->Send(); //Verzenden

$succes++; //Als hij gelukt is tellen we hem bij $succes

} catch (phpmailerException $e) { //Als het niet lukt

echo $e->errorMessage(); //Foutmelding

$failed++; //We tellen hem als mislukt

} catch (Exception $e) {

echo $e->getMessage();

$failed++;

}

}


//Statistieken weergeven
echo "Verzonden: $succes<br />Mislukt: $failed";

//Memory en databaseconnecte netjes afhandelen
mysql_free_result($result);
mysql_close($dbcon);

?>


En regel 26 is dus:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$mail->AddAdress($row['emailadres'], $row['naam']);


Waarom werkt dit niet, en hoe kan ik het wel laten werken?

Bedankt voor jullie hulp!

(P.S. Er gaat vast wel iemand zeggen dat niet de hele mail binnen de while-loop hoeft, maar de inhoud (newsletter.html) bevat ook enkele variabelen die afhankelijk zijn van de ontvanger, zoals een uitschrijflink ;))
 
PHP hulp

PHP hulp

18/04/2024 10:10:57
 
F Loogman

F Loogman

28/12/2010 16:59:56
Quote Anchor link
address zal wel met dubbel d zijn
 
Bas C

Bas C

28/12/2010 17:01:54
Quote Anchor link
Dit is wel heel beschamend (A) Dank je ;)
 

28/12/2010 17:07:53
Quote Anchor link
- Selecteer wat je wilt hebben, gebruik niet *.
- or die of or iets is geen foutafhandeling.
- Foutafhandeling ontbreekt.
- Geef nooit de mysql of php fout weer aan de gebruiker.
- Gebruik gewoon mysql_fetch_assoc.
- Er zal vast wel een batch methode zijn.
- Variabelen buiten quotes.
 
Bas C

Bas C

28/12/2010 17:09:54
Quote Anchor link
Bedankt voor de feedback Karl, daar kan ik wat mee ;)

Toevoeging op 28/12/2010 17:28:09:

Nou ik hier toch een topic open heb: een ander vraagje. Ik roep nu die inhoud van de mail aan via file_get_contents('newsletter.php'), maar dan parsed hij natuurlijk niks. Hoe kan ik binnen die inhoud variabelen gebruiken zonder dat ik de hele inhoud van de mail in het script hoef te zetten (dus door gewoon de inhoud in newsletter.php te houden)? Want include() o.i.d. gaat niet werken neem ik aan...

Dus ik moet de variabalen binnen newsletter.php eerst verwerken, en vervolgens de inhoud in $body definieren ;)

Bedankt voor de hulp!

Toevoeging op 28/12/2010 19:17:44:

Heb hem al; niet aan de sprintf()-functie gedacht ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.