Creating default object from empty value

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front end developer React Sportgames

Functie Als Front end developer ga jij aan de slag bij een gave en bekende organisatie op het gebied van sportgames. Jij gaat aan de slag in een scrumteam met 6 developers die gepassioneerd en actief bezig zijn om spelers kwalitatieve en mooie spelervaringen aan te bieden. Als scrumteam werken ze in drie wekelijkse sprints en begin je iedere ochtend met een stand-up. Als Front end developer werk jij bij deze organisatie voornamelijk met Javascript, html, css en React. Er wordt veel gebruikt gemaakt ook van C#, Docker en Kubernetes. Het team hecht veel waarde aan het leveren van hoogwaardige

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

C#.NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie; Het oplossen van bugs en incidenten. Hier ga je werken Als C#.NET Developer binnen deze organisatie kan jij het verschil maken. Zij werken momenteel nog met programmatuur die is ontwikkeld in C++. Hiervan gaan zij afscheid nemen zodra alle nieuwe software in C#.NET geschreven is. Een grootschalig en langdurig project. Voor hen is deze software van

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Team Lead/ Lead developer gezocht (Hands-on, PHP,

Functie Als Team Lead ben je de leider van één van de ontwikkelteams binnen de organisatie. Je leidt als lead developer een goed draaiend team dat werkt aan complexe en duurzame applicaties en API’s. Vanuit je kennis en ervaring ben je in staat het grote plaatje te blijven overzien, en kritisch mee te denken over bijvoorbeeld de architectuur, maar ook de algehele aanpak binnen het project. Je laat je team niet alleen technisch goed functioneren maar ben ook betrokken bij het menselijke aspect. Zo weet jij je collega’s te motiveren en begeleiden in hun dagelijkse werk. Buiten het team ben

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

SQL Developer

Functie omschrijving Altijd al willen werken bij een snelgroeiend bedrijf, actief in de logistieke sector? Dit is je kans! Ik ben op zoek naar een ervaren SQL Developer in de omgeving Tilburg. Dit bedrijf is gespecialiseerd in in de ontwikkeling van software en maatwerk oplossingen voor het automatiseren van logistieke processen. Klanten zijn o.a. BOL en andere grote distributiecentrums. Jouw taken worden vooral: Verantwoordelijk voor ontwikkelen van stored procedures, voor snelle afhandeling van data; Optimalisatie van de SQL query's en T-SQL query's; Jij gaat je bezig houden met ontwerpen, ontwikkelen en optimaliseren van de MS SQL Databases; In deze functie

Bekijk vacature »

Senior Front end developer Digital Agency

Functie Jij als Front end developer komt te werken in een van de 8 multidisciplinaire teams binnen de organisatie. Deze teams werken op basis van Scrum agile in 2 wekelijkse sprints. De grootte van de teams varieert van 9-14 collega’s en bestaan altijd uit één of meerdere project managers en een project manager. Samen met je team werk je aan verschillende projecten voor uiteenlopende klanten zoals grote multinationals tot het kleine mkb. De stack waarmee gewerkt wordt is voornamelijk Javascript, ES6, Es.next, HTML, CSS, React.js en Node.js. Wat deze organisatie onderscheid is dat ze echt langdurige partnerships aangaan met hun

Bekijk vacature »

Medior Mobile Developer iOS Amsterdam

Functie What will you be doing as Mobile Developer? As an iOS app developer you will work in a multidisciplinary team of app developers, web developers and designers. You will work on world-class apps that will be used by thousands of people. There is a lot of room for self-development on a technical and personal level. Together with the rest of the team you develop in the newest techniques and you go for the best quality. We work with Kotlin Multiplatform Mobile to develop hybrid apps and we guarantee quality with peer reviews, unit testing and we use a CI/CD.

Bekijk vacature »

Back-end .NET Developer

Functie omschrijving C# / .NET Developer gezocht voor een dynamische organisatie in de regio Houten! Voor een leuke organisatie in de regio Houten zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. In deze functie werk jij aan verschillende projecten en ga je vaak bij klanten op bezoek. Binnen deze functie kun je een grote mate van uitdaging, diversiteit en verantwoordelijkheid treffen. Bedrijfsprofiel Waar ga je werken? Het bedrijf waar je gaat werken is gespecialiseerd in het ontwerpen en implementeren van procesautomatisering en procesinformatisering. Zij doen dit onder andere voor de (petro)chemie, pharma, infra,

Bekijk vacature »

Airport Developer / System engineer

De functie Als onze nieuwe Airport Developer / System Engineer is je doel om uit nieuwbouw- en onderhoudsprojecten maximale waarde te creëren voor Schiphol Group en haar stakeholders. Vanuit je visie en expertise, maar ook (technologische) ontwikkelingen, wetgeving en beleid vertaal je klantwensen naar een gedegen programma van eisen. In de planontwikkelingsfase werk je nauw samen met Plan Ontwikkelaars om je kennis in te brengen ten behoeve van de kwaliteit van het investeringsvoorstel. Je overlegt met diverse partijen, stelt de vraag achter de vraag en verbindt zo de belangen van de luchthaven, proceseigenaar en asseteigenaar om tot een gedragen ontwikkelopgave

Bekijk vacature »

Senior Java Ontwikkelaar

Dit ga je doen Werken aan uiteenlopende interne projecten voor grote (internationale) organisaties; Ontwikkelen van diverse (web)applicaties en platformen met technieken als Java, Azure en ASP.NET; Complexe vraagstukken tackelen met jouw expertise en ervaring; Waar nodig help jij je collega's om samen tot de juiste oplossing te komen. Hier ga je werken Als Java Developer kom je te werken bij een internationale organisatie in regio Amsterdam die zich richt op procesoptimalisatie door middel van zeer complexe IT oplossingen. Dit doen zij op het allerhoogste niveau met vestigingen over heel de wereld en met een groot aantal aansprekende, maatschappelijk betrokken klanten.

Bekijk vacature »

Front-end developer

Functie Als front-end developer kom je te werken in een team van 30 gedetacheerde, en het team is momenteel flink aan het groeien. Je hebt ervaring met het bouwen van complexe bedrijfsapplicaties waar je gebruik maakt van de nieuwste technologieën waarmee jij elke klant omver blaast. Het gaat om uitdagende projecten met een gemiddelde doorlooptijd van 2 jaar. Hierdoor heb jij echt de volledige focus op een project en kun je flinke impact maken. Het team zit boordevol met ervaren developers die samen dezelfde ambitie delen. Aan de hand van opleidingen en trainingen kun je certificaten halen in jouw expertise

Bekijk vacature »

Als Front-end developer samenwerken met de beste c

Functie Momenteel zijn we voor één van de projecten bij hun key partner, een voorloper in de energiesector, op zoek naar gedreven Front-end developers. Ze nemen de lead in dit project en werken uitsluitend met vooruitstrevende technologieën. Ze verwachten dat de technologie die hier wordt ontwikkeld uiteindelijk door veel meer grote corporates, in verschillende sectoren zal worden toegepast. Dit is dan ook een heel uitdagend project om aan mee te gaan werken. Het team bestaat o.a. uit User Experience designers, Data Scientists en Software Engineers. De consultants en ontwikkelaars werken volgens de Design Thinking methode waarbij de eerste stappen van

Bekijk vacature »

Junior PHP ontwikkelaar

Functie Wij hebben onlangs onze eerste collega’s aangenomen, waardoor ons development team momenteel uit 4 personen bestaat. We bouwen onze software op basis van een PHP-framework (wat op zichzelf een Symfony framework is). Qua ontwikkeling focussen wij ons op 3 focus velden; – API-ontwikkeling/ Component Creatie – Implementatie – Framework ontwikkeling; het toevoegen van nieuwe functionaliteit of interne microservices Onze senior software engineer focust zich momenteel op de laatste twee punten, maar wij komen handen te kort op het eerste veld. Daarom zijn wij op zoek naar een enthousiaste junior software engineer die graag de kneepjes van het vak wil

Bekijk vacature »
Peter Demey

Peter Demey

14/04/2018 17:44:38
Quote Anchor link
Sinds een tijdje staat volgende melding "Creating default object from empty value in /customers/2/b/f/kwbvlamertinge.be/httpd.www/components/com_flexicontact/models/email.php on line 49" bovenaan ons contactformulier en werkt dit niet meer !!
Ik zie niet waaraan dit kan liggen.
Dit is lijn 49 van email.php
$this->data->from_name = JRequest::getVar('from_name',$user_name);

Dit is de volledige file :
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
<?php
/********************************************************************
Product    : Flexicontact
Date       : 25 July 2011
Copyright  : Les Arbres Design 2010-2011
Contact    : http://extensions.lesarbresdesign.info
Licence    : GNU General Public License
*********************************************************************/

defined('_JEXEC') or die('Restricted access');

jimport('joomla.application.component.model');

class FlexicontactModelEmail extends JModel
{
var
$_data;
var
$_app = null;

function
__construct()
{

    parent::__construct();
    $this->_app = &JFactory::getApplication();
}


//--------------------------------------------------------------------------------
// Get post data
//

function getPostData($config_data)
{

// Get the user name and email defaults
//

    switch ($config_data->autofill)
        {
        case
'off':
            $user_name = '';
            $user_email = '';
            break;
        case
'username':
            $user =& JFactory::getUser();
            $user_name = $user->username;
            $user_email = $user->email;
            break;
        case
'name':
            $user =& JFactory::getUser();
            $user_name = $user->name;
            $user_email = $user->email;
            break;
        }
    
        
    $this->data->from_name = JRequest::getVar('from_name',$user_name);
    $this->data->from_email = JRequest::getVar('from_email',$user_email);
    $this->data->subject = JRequest::getVar('subject',$config_data->default_subject);
    $this->data->copy_me = JRequest::getVar('copy_me','');                    // checkbox
    $this->data->agreement_check = JRequest::getVar('agreement_check','');        // checkbox
    $this->data->list1 = JRequest::getVar('list1','');
    $this->data->field1 = JRequest::getVar('field1','');
    $this->data->field2 = JRequest::getVar('field2','');
    $this->data->field3 = JRequest::getVar('field3','');
    $this->data->field4 = JRequest::getVar('field4','');
    $this->data->field5 = JRequest::getVar('field5','');
    $this->data->area_data = JRequest::getVar('area_data','');
    $this->data->magic_word = JRequest::getVar('magic_word','');
    $this->data->pic_selected = JRequest::getVar('picselected','');
    $this->data->pic_requested = JRequest::getVar('picrequested','');
    return $this->data;
}


// -------------------------------------------------------------------------------
// Initialise the errors array
//

function init_errors()
{

    $errors = array();
    $errors['message_not_sent'] = '';
    $errors['imageTest'] = '';
    $errors['from_name'] = '';
    $errors['from_email'] = '';
    $errors['subject'] = '';
    $errors['list'] = '';
    $errors['field1'] = '';
    $errors['field2'] = '';
    $errors['field3'] = '';
    $errors['field4'] = '';
    $errors['field5'] = '';
    $errors['area_data'] = '';
    $errors['magic_word'] = '';
    return $errors;
}


// -------------------------------------------------------------------------------
// Validate the user input
// Returns true if valid, false if not
//

function validate(&$errors, $config_data)
{

    $ret = true;
    
// if using captcha, validate the image

    if ($config_data->num_images > 0)
        {

        $pic_selected = substr(strtoupper($this->data->pic_selected),2);    // strip off the i_
        $targetText = JText::_('COM_FLEXICONTACT_IMAGE_'.$pic_selected);
        if (strcmp($this->data->pic_requested,$targetText) != 0)
            {

            $ret = false;
            $errors['imageTest'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_WRONG_PICTURE').'</span>';
            }
        }

    
// if using magic word, validate the word

    if ($config_data->magic_word != '')
        {

        if (strcasecmp($this->data->magic_word,$config_data->magic_word) != 0)
            {

            $ret = false;
            $errors['magic_word'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_WRONG_MAGIC_WORD').'</span>';
            }
        }

    
// validate the from name

    if (empty($this->data->from_name))
        {

        $ret = false;
        $errors['from_name'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate the from address

    jimport('joomla.mail.helper');
    if (!JMailHelper::isEmailAddress($this->data->from_email))
        {

        $ret = false;
        $errors['from_email'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_BAD_EMAIL').'</span>';
        }


// validate the subject

    if (($config_data->show_subject) and (empty($this->data->subject)))
        {

        $ret = false;
        $errors['subject'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate the list selection

    if (($config_data->list_opt == "mandatory") and (empty($this->data->list1)))
        {

        $ret = false;
        $errors['list'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate field1

    if (($config_data->field_opt1 == "mandatory") and (empty($this->data->field1)))
        {

        $ret = false;
        $errors['field1'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate field2

    if (($config_data->field_opt2 == "mandatory") and (empty($this->data->field2)))
        {

        $ret = false;
        $errors['field2'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate field3

    if (($config_data->field_opt3 == "mandatory") and (empty($this->data->field3)))
        {

        $ret = false;
        $errors['field3'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate field4

    if (($config_data->field_opt4 == "mandatory") and (empty($this->data->field4)))
        {

        $ret = false;
        $errors['field4'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate field5

    if (($config_data->field_opt5 == "mandatory") and (empty($this->data->field5)))
        {

        $ret = false;
        $errors['field5'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }


// validate area_data

    if (($config_data->area_opt == "mandatory") and (empty($this->data->area_data)))
        {

        $ret = false;
        $errors['area_data'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_REQUIRED').'</span>';
        }

        
    if (!$ret)
        $errors['message_not_sent'] = '<span class="fc_error">'.JText::_('COM_FLEXICONTACT_MESSAGE_NOT_SENT').'</span>';
    
    return $ret;
}


//-----------------------------------------
// Get client's IP address
//

function getIPaddress()
{

    if (isset($_SERVER["REMOTE_ADDR"]))
        return $_SERVER["REMOTE_ADDR"];
    if (isset($_SERVER["HTTP_X_FORWARDED_FOR"]))
        return $_SERVER["HTTP_X_FORWARDED_FOR"];
    if (isset($_SERVER["HTTP_CLIENT_IP"]))
        return $_SERVER["HTTP_CLIENT_IP"];
    return "unknown";
}


//-------------------------------------------------------------------------------
// Get client's browser (changed for 5.06)
// Returns 99 for unknown, 0 for msie, 1 for firefix, etc
//

function getBrowser(&$browser_string)
{

    $u_agent = $_SERVER['HTTP_USER_AGENT'];
    $browser_string = 'Unknown';

    if (strstr($u_agent, 'MSIE') && !strstr($u_agent, 'Opera'))
        {

        $browser_string = 'MSIE';
        return 0;
        }

    if (strstr($u_agent, 'Firefox'))
        {

        $browser_string = 'Firefox';
        return 1;
        }

    if (strstr($u_agent, 'Chrome'))      // must test for Chrome before Safari!
        {
        $browser_string = 'Chrome';
        return 3;
        }

    if (strstr($u_agent, 'Safari'))
        {

        $browser_string = 'Safari';
        return 2;
        }

    if (strstr($u_agent, 'Opera'))
        {

        $browser_string = 'Opera';
        return 4;
        }

    if (strstr($u_agent, 'Netscape'))
        {

        $browser_string = 'Netscape';
        return 5;
        }

    if (strstr($u_agent, 'Konqueror'))
        {

        $browser_string = 'Konqueror';
        return 6;
        }
}


//-------------------------------------------------------------------------------
// Resolve an email variable
//

function email_resolve($config_data, $variable)
{

    switch ($variable)
        {
        case
LAFC_T_FROM_NAME:
            return $this->data->from_name;
        case
LAFC_T_FROM_EMAIL:
            return $this->data->from_email;
        case
LAFC_T_SUBJECT:
            return $this->data->subject;
        case
LAFC_T_MESSAGE_PROMPT:
            return $config_data->area_prompt;
        case
LAFC_T_MESSAGE_DATA:
            return $this->data->area_data;
        case
LAFC_T_LIST_PROMPT:
            return $config_data->list_prompt;
        case
LAFC_T_LIST_DATA:
            return $this->data->list_choice;
        case
LAFC_T_FIELD1_PROMPT:
            return $config_data->field_prompt1;
        case
LAFC_T_FIELD1_DATA:
            return $this->data->field1;
        case
LAFC_T_FIELD2_PROMPT:
            return $config_data->field_prompt2;
        case
LAFC_T_FIELD2_DATA:
            return $this->data->field2;
        case
LAFC_T_FIELD3_PROMPT:
            return $config_data->field_prompt3;
        case
LAFC_T_FIELD3_DATA:
            return $this->data->field3;
        case
LAFC_T_FIELD4_PROMPT:
            return $config_data->field_prompt4;
        case
LAFC_T_FIELD4_DATA:
            return $this->data->field4;
        case
LAFC_T_FIELD5_PROMPT:
            return $config_data->field_prompt5;
        case
LAFC_T_FIELD5_DATA:
            return $this->data->field5;
        case
LAFC_T_BROWSER:
            return $this->data->browser_string;
        case
LAFC_T_IP_ADDRESS:
            return $this->data->ip;
        default:
return '';
        }
}


//-------------------------------------------------------------------------------
// Merge an email template with post data
//

function email_merge($template_text, $config_data)
{

    $text = $template_text;
    $variable_regex = "#%V_*(.*?)%#s";

    preg_match_all($variable_regex, $text, $variable_matches, PREG_SET_ORDER);

    foreach ($variable_matches as $match)
        {

        $resolved_text = $this->email_resolve($config_data, $match[0]);
        $text = str_replace($match[0], $resolved_text, $text);
        }


    return $text;
}


// -------------------------------------------------------------------------------
// Send the email
// Returns blank if ok, or an error message on failure
//

function sendEmail($config_data)
{

// get the user's ip address, browser, and list choice text

    $this->data->ip = $this->getIPaddress();
    $this->data->browser_id = $this->getBrowser($this->data->browser_string);
    if ($this->data->list1 != '')
        $this->data->list_choice = $config_data->list_array[$this->data->list1];
    else
        $this->data->list_choice = '';

// build the message to be sent to the site admin

    $body = $this->email_merge($config_data->admin_template, $config_data);
    jimport('joomla.mail.helper');
    $clean_body = JMailHelper::cleanBody($body);
    $clean_subject = JMailHelper::cleanSubject($this->data->subject);

// build the Joomla mail object

    $app = &JFactory::getApplication();
    $mail =& JFactory::getMailer();

    if ($config_data->email_html)
        $mail->IsHTML(true);
    else
        $clean_body = $this->html2text($clean_body);

    $mail->setSender(array($app->getCfg('mailfrom'), $app->getCfg('fromname')));
    $mail->addRecipient($config_data->toPrimary);
    if (!empty($config_data->ccAddress))
        $mail->addCC($config_data->ccAddress);
    if (!empty($config_data->bccAddress))
        $mail->addBCC($config_data->bccAddress);
    $mail->addReplyTo(array($this->data->from_email, $this->data->from_name));
    $mail->setSubject($clean_subject);
    $mail->setBody($clean_body);
    $ret_main = $mail->Send();
    if ($ret_main === true)
        $this->data->status_main = '1';
    else
        $this->data->status_main = $mail->ErrorInfo;
    
// if the user wanted a copy, send that separately

    if ($this->data->copy_me == 1)
        {

        $body = $this->email_merge($config_data->user_template, $config_data);
        $clean_body = JMailHelper::cleanBody($body);
        $mail =& JFactory::getMailer();
        if ($config_data->email_html)
            $mail->IsHTML(true);
        else
            $clean_body = $this->html2text($clean_body);
        $mail->setSender(array($app->getCfg('mailfrom'), $app->getCfg('fromname')));
        $mail->addRecipient($this->data->from_email);
        $mail->setSubject($clean_subject);
        $mail->setBody($clean_body);
        $ret_copy = $mail->Send();
        if ($ret_copy === true)
            $this->data->status_copy = '1';
        else
            $this->data->status_copy = $mail->ErrorInfo;
        }

    else
        $this->data->status_copy = '0';        // copy not requested
        
    return $this->data->status_main;        // both statuses are logged, but the main status decides what happens next
}

// -------------------------------------------------------------------------------
// Found at http://sb2.info/php-script-html-plain-text-convert/
//

function html2text($html)
{

    $tags = array (
    0 => '~<h[123][^>]+>~si',
    1 => '~<h[456][^>]+>~si',
    2 => '~<table[^>]+>~si',
    3 => '~<tr[^>]+>~si',
    4 => '~<li[^>]+>~si',
    5 => '~<br[^>]+>~si',
    6 => '~<p[^>]+>~si',
    7 => '~<div[^>]+>~si',
    );

    $html = preg_replace($tags,"\n",$html);
    $html = preg_replace('~</t(d|h)>\s*<t(d|h)[^>]+>~si',' - ',$html);
    $html = preg_replace('~<[^>]+>~s','',$html);
    // reducing spaces
    $html = preg_replace('~ +~s',' ',$html);
    $html = preg_replace('~^\s+~m','',$html);
    $html = preg_replace('~\s+$~m','',$html);
    // reducing newlines
    $html = preg_replace('~\n+~s',"\n",$html);
    return $html;
}

}
 
PHP hulp

PHP hulp

19/04/2024 07:05:46
 
Thomas van den Heuvel

Thomas van den Heuvel

14/04/2018 18:04:06
Quote Anchor link
Voordat je begint: maak een backup van dit bestand.

Mogelijk biedt het toevoegen van het volgende voor regel 31 soelaas:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$user_name = new StdClass();

Wat natuurlijk ook interessant is is uitvinden waarom $user_name niet fatsoenlijk (meer) kan worden geïnitialiseerd, dit is een indicatie dat er mogelijk meer aan de hand is...

En dit zul je mogelijk ook voor andere variabelen naast $user_name moeten doen, maar wat wellicht beter is is om te kijken of deze module inmiddels een update heeft gehad. Het contactformulier stamt uit 2011. PHP en Joomla hebben ondertussen niet stil gezeten. En je provider waarschijnlijk ook niet. Mogelijk is dit formulier simpelweg niet meer compatibel met de huidige PHP-versie.
 
Peter Demey

Peter Demey

17/04/2018 16:33:48
Quote Anchor link
@ Thomas : heb die regel erbij gevoegd maar kreeg dan de melding fout in lijn 50 ...
Intussen geupdate naar joomla 3.8 en daar eens geprobeerd met een gewoon contactformulier.
Hier lukt het ook niet om een mailtje te zenden via die form.
Krijg melding " kan mailfunctie niet opstarten"
Wat kan hiervan de oorzaak zijn ?
 
Rob Doemaarwat

Rob Doemaarwat

17/04/2018 16:50:39
Quote Anchor link
En op regel 49 invoegen (dus voor de "$this->data->..." regels)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$this->data = new StdClass();
Hoe ver kom je dan (maw: wat is dan de foutmelding)?
 
Thomas van den Heuvel

Thomas van den Heuvel

17/04/2018 17:50:02
Quote Anchor link
Wat @Rob zegt helpt je wellicht verder, maar het blijft modderen in verouderde code. Tijd voor een update/upgrade.
 
Peter Demey

Peter Demey

18/04/2018 18:00:40
Quote Anchor link
Ik heb nu flexicontact versie 12 geïnstalleerd, maar het verzenden van een contactformulier werkt nog steeds niet !! Krijg altijd de melding "Kan mailfunctie niet opstarten". Tot overmaat van ramp kan ik nu zelfs niet meer inloggen als admin. Iemand een idee hoe ik dat kan oplossen ? Ik vond volgende info op 't net maar wil graag weten of deze correct is, voor ik dit uitvoer !!

Zie onderstaande :

Joomla admin wachtwoord vergeten

Wanneer u het ‘admin’ wachtwoord van een Joomla website vergeten bent, kunt u niet meer inloggen in het Joomla backend gedeelte als Administrator.

Een oplossing kan zijn het wachtwoord direct in de MySql database te wijzigen.
Hiervoor heeft u wel toegang tot de database nodig via een programma als PhpMyAdmin.

Log in via PhpMyadmin met de database gebruikersnaam en het wachtwoord van de database gebruiker.
Selecteer aan de linkerbovenkant in PhpMyAdmin de database die gebruikt wordt voor de Joomla
installatie.
Klik aan de linkerkant op de table ‘jos_users’.
Klik op ‘Browse’.
Klik op het edit symbool (potloot) dat aan de linkerkant staat van de gebruiker met de username ‘admin’.
Wijzig de waarde van het veld ‘Password’ in: 21232f297a57a5a743894a0e4a801fc3 .
Klik op de knop ‘Go’.
Sluit PhpMyAdmin

Het admin wachtwoord is nu veranderd in: admin .

Wijzig dit wachtwoord direct na het inloggen in het Joomla backend gedeelte bij ‘User management’.
 
- Ariën  -
Beheerder

- Ariën -

18/04/2018 18:08:50
Quote Anchor link
Kan je wel normaal mailen met PHP via de mail() functie?

Ik vraag me af of Joomla deze password-hasing nog wel ondersteund. In zulke gevallen zou ik altijd een backup maken.
Gewijzigd op 18/04/2018 18:37:44 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2018 01:29:51
Quote Anchor link
Nu ja, als je niet meer in de backend kan dan zul je sowieso van een kunstgreep gebruik moeten maken. Het bovenstaande klinkt wel ok, maar dan vraag ik mij ook af hoe oud Joomla zelf ondertussen is.

Het is vrij belangrijk dat de versie enigszins bij de tijd is, of dat je in ieder geval weet welke mogelijke veiligheids-issues je huidige (en volgende) versie(s) heeft.

En een backup maken kan i.i.g. nooit kwaad, al was het enkel van de reeds aanwezige password-hash.
 
- Ariën  -
Beheerder

- Ariën -

19/04/2018 01:38:54
Quote Anchor link
Ik hoop dat Joomla geen MD5 meer gebruikt voor password-hashes.

Misschien is dat wel de reden dat je niet kan inloggen: Je old-skoel hash komt niet overeen met een andere encryptie die Joomla tegenwoordig wel gebruikt.
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2018 03:11:49
Quote Anchor link
Het lijkt mij sterk dat bovenstaande instructies werken, maar je zou het kunnen proberen want je hebt niet zoveel andere keuze op dit punt? Het maken van een backup kan overigens nooit kwaad.

En als de instructies wel werken zou mij dat verontrusten. Ik meen mij te herinneren dat toen ik een keer een password-reset moest uitvoeren in Joomla (en dit is alweer jaren terug) dat het toen al geavanceerder was dan dat. Maar zo te zien is je Joomla versie vrij nieuw (3.8.7).

Wat je aan administratie dient te wijzigen om weer in te kunnen loggen hangt waarschijnlijk af van de versie die Joomla gebruikt, want die zal bepalen hoe wachtwoorden beveiligd zijn.

EDIT: deze instructies klinken wat actueler. Raadpleeg bij voorkeur altijd officiële / actuele documentatie.
Gewijzigd op 19/04/2018 09:30:50 door Thomas van den Heuvel
 
Peter Demey

Peter Demey

19/04/2018 14:47:16
Quote Anchor link
Die instructies voor mijn paswoord te wijzigen werken.
Heb ze uitgevoerd als beschreven en kan nu weer op mijn backend.
Meteen ook paswoord terug aangepast.
Dit even ter info !!
Vanavond zoek ik verder waarom het contactformulier niet werkt !!
mijn site : kwbvlamertinge.be
 
Peter Demey

Peter Demey

20/04/2018 17:11:09
Quote Anchor link
- Ariën - op 18/04/2018 18:08:50:
Kan je wel normaal mailen met PHP via de mail() functie?

Ik vraag me af of Joomla deze password-hasing nog wel ondersteund. In zulke gevallen zou ik altijd een backup maken.


Als ik de mail in joomla wil testen krijg ik telkens een foutmelding :
PHP : Kan mailfunctie niet opstarten
Sendmail : Kan niet uitvoeren: /usr/sbin/sendmail
SMTP : SMTP verbinding mislukt https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

Ik zit bij one.com
 
Frank Nietbelangrijk

Frank Nietbelangrijk

20/04/2018 17:28:53
Quote Anchor link
https://help.one.com/hc/nl/articles/115005594345-Kan-ik-e-mails-verzenden-vanaf-mijn-website-

Zo te zien zou je gewoon sendmail en dus php mail() moeten kunnen gebruiken.

Wat gebeurt er als je een test mail verstuurd?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if(mail('[email protected]', 'test mail', 'Deze mail is een testje')) {
    echo 'mail is verstuurd';
}
else {
    echo 'blijkbaar kan ik geen mails verzenden...';
}

?>

Vervang [email protected] voor je eigen prive mailadres.
Gewijzigd op 20/04/2018 17:29:33 door Frank Nietbelangrijk
 
Peter Demey

Peter Demey

23/04/2018 10:08:16
Quote Anchor link
het probleem is opgelost.
Vorig jaar werd onze site gehacked en werd er spam verspreid via onze site.
Daardoor had one.com onze mail service geblokkeerd.

Na de update van joomla en alle componenten heb ik gevraagd om deze weer vrij te geven.
Nu werkt alles weer.

Sorry voor de overlast
 
Frank Nietbelangrijk

Frank Nietbelangrijk

23/04/2018 10:24:58
Quote Anchor link
>> Vorig jaar werd onze site gehacked en werd er spam verspreid via onze site.

Dus het echte probleem is de beveiliging van de website?

>> het probleem is opgelost

Maar is de website nu weer enigszins waterdicht?
 
Ben van Velzen

Ben van Velzen

23/04/2018 10:43:50
Quote Anchor link
Het is Joomla, ik zou dus verwachten van niet.
 



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.