e-mails bestandsnaam in includes en e-mails

Installatie lukt niet? Plotseling een foutmelding. Of weet je niet hoe iets werkt. Problemen met phpBB2 kun je in dit archief opzoeken.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

e-mails bestandsnaam in includes en e-mails

Bericht door sukkelaap » 19 okt 2004, 14:50

Kijk alle soorten e-mail die verzonden worden staan in de map e-mail in jouw taal map. maar voordat ze verzonden worden word er eerst telkens een bestand in include aangeroepen, maar heeft elke e-mail zijn eigen bestand of horen sommige bij elkaar.

Ik wil graag de in de includes map de bestandsnaam hebben van de volgende e-mails:

admin_send_email.tpl hoort bij het bestand in de map includes: ??????
group_added.tpl hoort bij het bestand in de map includes: ??????
group_approved.tpl hoort bij het bestand in de map includes: ??????
privmsg_notify.tpl hoort bij het bestand in de map includes: ??????
profile_send_email.tpl hoort bij het bestand in de map includes: ??????
topic_notify.tpl hoort bij het bestand in de map includes: ??????
user_activate_passwd.tpl hoort bij het bestand in de map includes: ??????
user_welcome.tpl hoort bij het bestand in de map includes: ??????

Ik hoop dat je snapt wat ik bedoel :roll:

(Normaal word een e-mail opgeroepen uit een bestand in de map includes die doorverwijst naar de e-mail in je taalpakketmap, nu is mijn vraag dus welke bestand in de includes hoort bij welke e-mail?)

Gebruikersavatar
WebSiteNet
Berichten: 6524
Lid geworden op: 20 okt 2003, 16:56
Locatie: Wieringerwerf
Contacteer:

Bericht door WebSiteNet » 19 okt 2004, 15:16

Dat hoort niet bij een bestand in de includes map. In posting.php staat meerdere keren de code om een email te sturen.

Dan included hij het bestand includes/emailer.php waar de class instaat die de email stuurt.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 19 okt 2004, 18:32

Ik snap niet helemaal wat je bedoeld maar wat ik ermee wil is het volgende:

Ik wil in de e-mail iets oproepen wat altijd tussen { en } staat maar dat haalt die normaal dus ergen uit zo'n e-mail dus waar moet ik de php code zetten zodat ik voor de opgenoemde bestanden met dus van die haakjes iets iets kan oproepen.

Er staat bijvoorbeeld nu in van die e-mails ookal {username} waar haalt die dat dan vandaan? Kunt u dus van elk bestand aangeven wara ik de php code in moet plaatsen om het in de e-mail op te roepen?

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 19 okt 2004, 19:47

Van elk bestand niet, als je begrijpt hoe het werkt mag je het zelf verder uitzoeken. Met welk email bestand wil je beginnen?

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 19 okt 2004, 20:50

doe maar die bul e-mail gebeuren geloof dat dat admin_send_email is ofzow.

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 19 okt 2004, 21:07

admin/admin_mass_email.php schreef: $emailer->assign_vars(array(
'ADMIN' => $userdata['username'],
'SITENAME' => $board_config['sitename'],
'BOARD_EMAIL' => $board_config['board_email'],
'MESSAGE' => $message)
);
language/lang_dutch/email/admin_send_email.tpl schreef:Message sent to you follows:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

VERZONDEN DOOR: {ADMIN}

{MESSAGE}

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 13:49

ok thanxxx

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 14:18

na het werkt dus mooi niet als ik dara in dat php bestand iets uit de database haal en dvervolgens in de e-mail oproep werkt het nie

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 20 okt 2004, 16:37

Ga je ons ook nog vertellen hoe en wat je dan wel uit de database hebt gehaald, of mogen we dat zelf uitzoeken? :roll:

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 18:33

sorry :oops:

Ik heb een script die ervoor zorgt dat die de top 10 mensen met de meste cash uit de database haalt. (alleen dat script werkt dat heb ik op meerdere pagina's gebruikt) dat script zette ik dus in admin_mass_email.php en dan in je taalpakket in de e-mail heb ik dat dus opgeroepen met {cash} alleen kotm er niks te staan.

Volgensmij zag ik ook dat die helemaal niet meteen doorverwijst naar die e-mail maar naar admin_mass_email.TPL in je style map. Alleen ik heb dus het bestand nodig die vanuit iets naar die e-mail gaat want ik moet rechtsreeks die php gegevens in de e-mail zetten.

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 20 okt 2004, 18:34

Mijn voorbeeld werkt, probeer maar uit. Ik zou wel eens willen weten wat jij ervan gemaakt hebt. Post dus je volledige aanpassing.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 20:22

zal ik zo doen. maar hoe kan het hij gaat niet vanaf dat php script naar de e-mail direct. :wink:

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 20 okt 2004, 20:26

Dat kan ik je dus pas vertellen als ik je script zie. We zijn nu al 7 posts verder, zonder dat je me ook maar één regel PHP hebt laten zien. Hoe kan ik je dan helpen met je probleem??

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 20:28

in admin/admin_mass_email.php

Code: Selecteer alles

//
//start top poster
//



$sql = "SELECT username, user_id,  user_maandscore
        FROM " . USERS_TABLE . "
        WHERE user_id <> " . ANONYMOUS . "
		AND user_maandscore > 0 
        ORDER BY user_maandscore DESC LIMIT 10";
if( !($result = $db->sql_query($sql)) )
{
        message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

if ( $row = $db->sql_fetchrow($result) )
{
        $i = 0;
        do
        {
                $username = $row['username'];
				            $user_id = $row['user_id'];
                $posts = ( $row['user_maandscore'] ) ? $row['user_maandscore'] : 0;
                $poster_avatar = '';
                if ( $row['user_avatar_type'] && $user_id != ANONYMOUS && $row['user_allowavatar'] )
          $i++;
        }
        while ( $row = $db->sql_fetchrow($result) );
}


in language/lang_dutch/email/admin_send_email.tpl

Code: Selecteer alles

	<!-- top posters -->



			<table width="100%" cellpadding="3" cellspacing="1" border="0" class="forumline">
      
        
         <!-- BEGIN topposter -->
        <tr>
          <td  align="left" valign="middle" width="6%"><span class="gen">{ROW_NUMBER}.</td>
          
         
          <td  align="left" valign="middle"width="44%"><span class="genmed"><a href="{U_VIEWPOSTER}" class="gen">{USERNAME}</a></span></td>
            <td  align="left" valign="middle" width="50%"><span class="gen"> Maand Score: {POSTS}</td>
          
          </tr>
          

          <!-- END topposter -->
           </table>
		  
	

<!-- End top posters -->
iets verderop in dat php wat ik als eerst typte:

Code: Selecteer alles

$template->assign_vars(array(
	'MESSAGE' => $message,
	'SUBJECT' => $subject, 

	'L_EMAIL_TITLE' => $lang['Email'],
	'L_EMAIL_EXPLAIN' => $lang['Mass_email_explain'],
	'L_COMPOSE' => $lang['Compose'],
	'L_RECIPIENTS' => $lang['Recipients'],
	'L_EMAIL_SUBJECT' => $lang['Subject'],
	'L_EMAIL_MSG' => $lang['Message'],
	'L_EMAIL' => $lang['Email'],
	'L_NOTICE' => $notice,
	 'USERNAME' => $username,
						'POSTS' => $posts,
                        'AVATAR_IMG' => $poster_avatar,
						'ROW_NUMBER' => ($i + 1), 
						'U_VIEWPOSTER' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id"),

	'S_USER_ACTION' => append_sid('admin_mass_email.'.$phpEx),
	'S_GROUP_SELECT' => $select_list)
);

$template->pparse('body');

Of wil je de rest eromheen ook?
Laatst gewijzigd door sukkelaap op 20 okt 2004, 20:39, 2 keer totaal gewijzigd.

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 20 okt 2004, 20:34

Volgens mij heb je geen idee wat je met die code doet. Je verzend niets van de variabelen naar de email template (logisch dat het niet werkt) en verwerkt de avatars terwijl je daar helemaal niets aan hebt. Aan simpelweg code plakken uit een andere pagina heb je niets, je moet wel iets van PHP begrijpen.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 20:36

jah sorry was dat ene vergeten te plaatsen en ik snap er wle het 1 en het andere van wnat heb vandaag heel wat van die update en insert into tabels gemaakt maar dit was ergens standaard script vond wel makkelijk en overbodig is nooit erg :P misschien wete jij het niet maar gebruik ik effuh verderop op die pagina wel avatars 8)

Dus kijk naar mijn edit van mijn post

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 20 okt 2004, 20:41

sukkelaap schreef:en overbodig is nooit erg :P
Onzin, onnodige code vertraagt je scripts en neemt de overzichtelijkheid weg.

sukkelaap schreef:misschien wete jij het niet maar gebruik ik effuh verderop op die pagina wel avatars 8)
Gebruik je HTML in je emails?

--

De reden dat het niet werkt is omdat je de gegevens niet in een loop aanroept. Je gebruikt <!-- BEGIN topposter --> in je TPL bestand, maar verstuurt de gegevens niet als zodanig. Ook zal je zo nooit meer dan één leden rij krijgen.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 20:57

hoezo dat normaal werkt dit script wle op die manier :S
Ik gebruik dat script al op verscillende sites en op 5 blz. per site alleen in e-mail werken ze niet.

Trouwens normaal zorgt die <!-- begin --> er juist voor dat die het voor 10 leden herhaalt, en werkt altijd zo als je dat weghaalt toont die juist maar 1 lid.

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 20 okt 2004, 21:03

als je per rij iets wilt hebben, zoals de forums op de index moet je zoiets gebruiken
in .tpl

Code: Selecteer alles

<!-- BEGIN topposter --> 
        <tr> 
          <td  align="left" valign="middle" width="6%"><span class="gen">{topposter.ROW_NUMBER}.</td> 
          
          
          <td  align="left" valign="middle"width="44%"><span class="genmed"><a href="{topposter.U_VIEWPOSTER}" class="gen">{topposter.USERNAME}</a></span></td> 
            <td  align="left" valign="middle" width="50%"><span class="gen"> Maand Score: {topposter.POSTS}</td> 
          
          </tr> 
          

          <!-- END topposter --> 
           </table> 
en in .php

Code: Selecteer alles

// 
//start top poster 
// 



$sql = "SELECT username, user_id,  user_maandscore 
        FROM " . USERS_TABLE . " 
        WHERE user_id <> " . ANONYMOUS . " 
      AND user_maandscore > 0 
        ORDER BY user_maandscore DESC LIMIT 10"; 
if( !($result = $db->sql_query($sql)) ) 
{ 
        message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql); 
} 

if ( $row = $db->sql_fetchrow($result) ) 
{ 
        $i = 0; 
        do 
        { 
                $username = $row[$i]['username']; 
                        $user_id = $row[$i]['user_id']; 
                $posts = ( $row[$i]['user_maandscore'] ) ? $row['user_maandscore'] : 0; 
                $poster_avatar = ''; 
                if ( $row[$i]['user_avatar_type'] && $user_id != ANONYMOUS && $row[$i]['user_allowavatar'] ) 
          $i++; 
        } 
        while ( $row = $db->sql_fetchrow($result) ); 
}
en

Code: Selecteer alles

$template->assign_block_vars('topposter', array( 
    'USERNAME' => $username, 
    'POSTS' => $posts, 
    'AVATAR_IMG' => $poster_avatar, 
    'ROW_NUMBER' => ($i + 1), 
    'U_VIEWPOSTER' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id")) 
); 


$template->assign_vars(array( 
   'MESSAGE' => $message, 
   'SUBJECT' => $subject, 

   'L_EMAIL_TITLE' => $lang['Email'], 
   'L_EMAIL_EXPLAIN' => $lang['Mass_email_explain'], 
   'L_COMPOSE' => $lang['Compose'], 
   'L_RECIPIENTS' => $lang['Recipients'], 
   'L_EMAIL_SUBJECT' => $lang['Subject'], 
   'L_EMAIL_MSG' => $lang['Message'], 
   'L_EMAIL' => $lang['Email'], 
   'L_NOTICE' => $notice, 

   'S_USER_ACTION' => append_sid('admin_mass_email.'.$phpEx), 
   'S_GROUP_SELECT' => $select_list) 
); 

$template->pparse('body'); 
Afbeelding

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 20 okt 2004, 22:15

wat luuk zegt had ik eerst ook letterlijk zo ook met in die kop topposter en dan in de tpl {toppposter.USERNAME} Maar dat werkte niet dus ging ik alles met topposter ervoor verbouwen en volgens mosymouse werkt dat heel dingen met rijen gebeuren niet maar dat heb ik zoals luuk.

Gesloten