Anrede im Newsletter

Du hast ein Problem gefunden und weißt nicht genau wo es hinpasst...
Antworten
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Anrede im Newsletter

Beitrag von Kopernikus »

Ich habe mal eine Frage betreffend Newsletter.

Ich nutzte schon seit einiger Zeit das Programm SuperMailer und greife dabei auf die Tabelle "newsletter_recipients" zu. Dabei werden mir E-Mail-Adressen, Vorname und Nachname quasi per Knopfdruck importiert. Leider aber nicht das Geschlecht des Kunden. Das Problem ist aber nicht der Import, sondern die Tatsache, dass die Spalte "customers_gender" in der Tabelle "newsletter_recipients" überhaupt nicht befüllt wird. Nun weiss ich nicht, ob es überhaupt webs Standard ist, dass man in dieser Tabelle bereits die Spalten "customers_name" und "customers_lastname" vorfinden kann oder ob ich das mal selber eingebaut habe. Habt Ihr mir einen Tipp, wie ich dies hinbekommen könnte, dass die customers_gender ebenfalls befüllt wird?

LG
Kopernikus
Zuletzt geändert von Kopernikus am Do 22. Mai 2014, 07:08, insgesamt 1-mal geändert.
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Re: Anrede im Newsletter

Beitrag von Kopernikus »

Ich habe soeben mal in meiner module_newsletter.php nachgeschaut. Da wird customers_gender doch eigentlich korrekt abgefragt.

Code: Alles auswählen

<?php
/** ----------------------------------------------------------------------------
 **
 *F module_newsletter.php
 **
 ** WEB-Shop Software http://www.webs.de
 **
 **  newsletter management
 **
 ** ----------------------------------------------------------------------------
 ** based on:
 **  (c) 2000-2001 The Exchange Project
 **  (c) 2002-2003 osCommerce
 **  (c) 2003 nextcommerce
 **  (c) 2006 XT-Commerce
 **
 ** Released under the GNU General Public License
 **
 ** @version $Id: module_newsletter.php 2198 2011-11-07 14:49:02Z joerg $
 ** @copyright 2011 WEB-Shop Software http://www.webs.de/
 **
 ** ------------------------------------------------------------------------- */

require('includes/application_top.php');

require_once(DIR_FS_CATALOG.DIR_WS_CLASSES.'class.phpmailer.php');
require_once(DIR_FS_INC . 'xtc_wysiwyg.inc.php'); 

switch ($_GET['action']) {  // actions for datahandling

 case 'save': // save newsletter

   $id=xtc_db_prepare_input((int)$_POST['ID']);
   $status_all=xtc_db_prepare_input($_POST['status_all']);
   if ($newsletter_title=='') $newsletter_title='no title';
   $customers_status=xtc_get_customers_statuses();
   
   $rzp='';
   for ($i=0,$n=sizeof($customers_status);$i<$n; $i++) {
     if (xtc_db_prepare_input($_POST['status'][$i])=='yes') {
       if ($rzp!='') $rzp.=',';
       $rzp.=$customers_status[$i]['id'];
     }
   }
     
   if (xtc_db_prepare_input($_POST['status_all'])=='yes') $rzp.=',all';

   $error=false; // reset error flag
   if ($error == false) {

     $sql_data_array = array(
       'title'=> xtc_db_prepare_input($_POST['title']),
       'status' => '0',
       'bc'=>$rzp,
       'cc'=>xtc_db_prepare_input($_POST['cc']),
       'date' => 'now()',
       'body' => xtc_db_prepare_input($_POST['newsletter_body']));
     
     if ($id!='') {
       xtc_db_perform(TABLE_MODULE_NEWSLETTER, $sql_data_array, 'update', "newsletter_id = '" . $id . "'");
       // create temp table
     } else {
       xtc_db_perform(TABLE_MODULE_NEWSLETTER, $sql_data_array);
       // create temp table
       $id=xtc_db_insert_id();
     }
     xtc_db_query("DROP TABLE IF EXISTS module_newsletter_temp_".$id);
     xtc_db_query("CREATE TABLE module_newsletter_temp_".$id."
                  (
                     id int(11) NOT NULL auto_increment,
                    customers_id int(11) NOT NULL default '0',
                    customers_status int(11) NOT NULL default '0',
                    customers_gender char(1) NOT NULL,
                    customers_firstname varchar(64) NOT NULL default '',
                    customers_lastname varchar(64) NOT NULL default '',
                    customers_email_address text NOT NULL,
                    mail_key varchar(32) NOT NULL,
                    date datetime NOT NULL default '0000-00-00 00:00:00',
                    comment varchar(64) NOT NULL default '',
                    PRIMARY KEY  (id)
                    )");

     // filling temp table with data!
     $flag='';
     if (!strpos($rzp,'all')) $flag='true';
     $rzp=str_replace(',all','',$rzp);
     $groups=explode(',',$rzp);
     $sql_data_array='';
     
     for ($i=0,$n=sizeof($groups);$i<$n;$i++) {
     // check if customer wants newsletter
   
       if (xtc_db_prepare_input($_POST['status_all'])=='yes') {
         $sql = '-- admin/module_newsletter
           SELECT
             customers_id, customers_gender, customers_firstname,
             customers_lastname, customers_email_address
           FROM ' . TABLE_CUSTOMERS . '
           WHERE
             customers_status= '.(int)$groups[$i];
       } else {
         $sql = '-- admin/module_newsletter
           SELECT
             nr.customers_email_address, nr.customers_id, c.customers_gender,
             nr.customers_firstname, nr.customers_lastname, nr.mail_key
           FROM
             '.TABLE_NEWSLETTER_RECIPIENTS.' nr
           LEFT OUTER JOIN '.TABLE_CUSTOMERS.' c on c.customers_id = nr.customers_id
           WHERE
             nr.customers_status = '.(int)$groups[$i].' AND
             nr.mail_status = 1';
       }
       $query=xtc_db_query($sql);
       while ($customers_data=xtc_db_fetch_array($query)){
         $sql_data_array=array(
                               'customers_id'=>$customers_data['customers_id'],
                               'customers_gender' => $customers_data['customers_gender'],
                               'customers_status'=>$groups[$i],
                               'customers_firstname'=>$customers_data['customers_firstname'],
                               'customers_lastname'=>$customers_data['customers_lastname'],
                               'customers_email_address'=>$customers_data['customers_email_address'],
                               'mail_key'=>$customers_data['mail_key'],
                               'date'=>'now()');

         xtc_db_perform('module_newsletter_temp_'.$id, $sql_data_array);
       }


     }

     xtc_redirect(xtc_href_link(FILENAME_MODULE_NEWSLETTER));
   }

   break;

   case 'delete':

   xtc_db_query("DELETE FROM ".TABLE_MODULE_NEWSLETTER." WHERE   newsletter_id='".(int)$_GET['ID']."'");
   xtc_redirect(xtc_href_link(FILENAME_MODULE_NEWSLETTER));

   break;

   case 'send':
     // max email package  -> should be in admin area!
     $package_size='30';
     xtc_redirect(xtc_href_link(FILENAME_MODULE_NEWSLETTER,'send=0,'.$package_size.'&ID='.(int)$_GET['ID']));
}

// action for sending mails!

if ($_GET['send']) {

  $sql = '-- admin/module_newsletter
    SELECT
      title, body, bc, cc
    FROM
      '.TABLE_MODULE_NEWSLETTER.'
    WHERE newsletter_id='.(int)$_GET['ID'];
  $query=xtc_db_query($sql);
  $newsletter=xtc_db_fetch_array($query);

  $smarty = new template();
  $smarty->assign('subject', $newsletter['title']);
  $smarty->assign('cc', $newsletter['cc']);

  // get the limit values from the request
  list($limit, $package_size) = explode(',',$_GET['send']);

  // select emailrange from db
  $sql = '-- admin/module_newsletter.php
    SELECT
      id,
      customers_gender, 
      customers_firstname,
      customers_lastname,
      customers_email_address,
      mail_key
    FROM module_newsletter_temp_'.(int)$_GET['ID'].'
    LIMIT '.$limit.','.$package_size;
  $query=xtc_db_query($sql);

  while ($row=xtc_db_fetch_array($query)) {

    $customer = array(
      'gender' => $row['customers_gender'],
      'firstname' => $row['customers_firstname'],
      'lastname' => $row['customers_lastname'],
      'email' => $row['customers_email_address'],
    );
    $smarty->assign('customer', $customer);
    $smarty->assign('message', $newsletter['body'].'<hr><p>'.TEXT_NEWSLETTER_REMOVE.'<br /><a href="'.HTTP_CATALOG_SERVER.DIR_WS_CATALOG.FILENAME_CATALOG_NEWSLETTER.'?action=remove&email='.$customer['email'].'&key='.$row['mail_key'].'">' . TEXT_REMOVE_LINK . '</a></p>');

    new mail_template(
      $smarty, 'admin_mail',
      array($customer['email'], $customer['firstname'] . ' ' . $customer['lastname'])
    );

    $sql = '-- admin/module_newsletter
      UPDATE
        module_newsletter_temp_'.(int)$_GET['ID'].'
      SET
        comment = \'send\'
      WHERE
        id= '.$row['id'];
    xtc_db_query($sql);
  }
  
  // ok lets send the mails in package of 30 mails, to prevent php timeout
  if (xtc_db_num_rows($query) < $package_size) {

    // finished
    $sql = '-- admin/module_newsletter
      SELECT
        count(if (comment=\'send\',1,NULL)) send,
        count(1) count
      FROM
        module_newsletter_temp_'.(int)$_GET['ID'];
    $query = xtc_db_query($sql);
    $count = xtc_db_fetch_array($query);
    if ($count['send'] == $count['count']) {
      xtc_db_query("UPDATE ".TABLE_MODULE_NEWSLETTER." SET status='1' WHERE newsletter_id='".(int)$_GET['ID']."'");
      $messageStack->add_session(sprintf(INFO_NEWSLETTER_SEND, $count['send']), 'success');
      xtc_redirect(xtc_href_link(FILENAME_MODULE_NEWSLETTER));
    } else {
      $messageStack->add(
        sprintf(
          INFO_NEWSLETTER_SEND.'<br />'.INFO_NEWSLETTER_LEFT, 
          $count['send'], $count['count']-$count['send']),
        'error'
      );
    }
  } else {
    $limit=$limit+$package_size;
    xtc_redirect(xtc_href_link(FILENAME_MODULE_NEWSLETTER,'send='.$limit.','.$package_size.'&ID='.(int)$_GET['ID']));
 }
}

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo charset_mapper($_SESSION['language_charset']); ?>"> 
<title><?php echo TITLE; ?></title>
<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
<?php if (USE_WYSIWYG=='true') {
 $query=xtc_db_query("SELECT code FROM ". TABLE_LANGUAGES ." WHERE languages_id='".$_SESSION['languages_id']."'");
 $data=xtc_db_fetch_array($query);
 if ($_GET['action']!='') echo xtc_wysiwyg('newsletter',$data['code']);
 } ?>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" width="100%" cellspacing="2" cellpadding="2">
  <tr>
    <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
      <tr>
        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
  <tr>
    <td width="80" rowspan="2"><?php echo xtc_image(DIR_WS_ICONS.'heading_news.gif'); ?></td>
    <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
  </tr>
  <tr>
    <td class="main" valign="top">WEB-Shop Tools</td>
  </tr>
</table></td>
      </tr>

 <?php
 if ($_GET['send'])
 {
 ?>

      <tr><td>
      Sending
      </td></tr>
<?php
}
?>

      <tr>
        <td><table width="100%" border="0">
          <tr>
            <td>
 <?php

 // Default seite
switch ($_GET['action']) {

    default:

 // Get Customers Groups
 $customer_group_query=xtc_db_query("SELECT
                                     customers_status_name,
                                     customers_status_id,
                                     customers_status_image
                                     FROM ".TABLE_CUSTOMERS_STATUS."
                                     WHERE
                                     language_id='".$_SESSION['languages_id']."'");
 $customer_group=array();
 while ($customer_group_data=xtc_db_fetch_array($customer_group_query)) {

      // get single users
     $group_query=xtc_db_query("SELECT count(*) as count
                                FROM ".TABLE_NEWSLETTER_RECIPIENTS."
                                WHERE mail_status='1' and
                                customers_status='".$customer_group_data['customers_status_id']."'");
     $group_data=xtc_db_fetch_array($group_query);


 $customer_group[]=array( 'ID'=>$customer_group_data['customers_status_id'],
                          'NAME'=>$customer_group_data['customers_status_name'],
                          'IMAGE'=>$customer_group_data['customers_status_image'],
                          'USERS'=>$group_data['count']);


 }

 ?>
<br />

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
        <tr class="dataTableHeadingRow">
          <td class="dataTableHeadingContent" width="150" ><?php echo TITLE_CUSTOMERS; ?></td>
          <td class="dataTableHeadingContent"  ><?php echo TITLE_STK; ?></td>
        </tr>

        <?php
for ($i=0,$n=sizeof($customer_group); $i<$n; $i++) {
?>
        <tr>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" valign="middle" align="left"><?php echo xtc_image(DIR_WS_ICONS . $customer_group[$i]['IMAGE'], ''); ?><?php echo $customer_group[$i]['NAME']; ?></td>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left"><?php echo $customer_group[$i]['USERS']; ?></td>
        </tr>
        <?php
}
?>
      </table></td>
    <td width="30%" align="right" valign="top""><?php
    echo '<a class="button" href="'.xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=new').'">'.BUTTON_NEW_NEWSLETTER.'</a>';


    ?></td>
  </tr>
</table>
 <br />
 <?php

 // get data for newsletter overwiev

 $newsletters_query=xtc_db_query("SELECT
                                   newsletter_id,date,title
                                  FROM ".TABLE_MODULE_NEWSLETTER."
                                  WHERE status='0'");
 $news_data=array();
 while ($newsletters_data=xtc_db_fetch_array($newsletters_query)) {

 $news_data[]=array(    'id' => $newsletters_data['newsletter_id'],
                        'date'=>$newsletters_data['date'],
                        'title'=>$newsletters_data['title']);
 }

?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
        <tr class="dataTableHeadingRow">
        <td class="dataTableHeadingContent" width="30" ><?php echo TITLE_DATE; ?></td>
          <td class="dataTableHeadingContent" width="80%" ><?php echo TITLE_NOT_SEND; ?></td>
          <td class="dataTableHeadingContent"  >.</td>
        </tr>
<?php
for ($i=0,$n=sizeof($news_data); $i<$n; $i++) {
if ($news_data[$i]['id']!='') {
?>
        <tr>
        <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left"><?php echo $news_data[$i]['date']; ?></td>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" valign="middle" align="left"><?php echo xtc_image(DIR_WS_CATALOG.'images/icons/arrow.gif'); ?><a href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'ID='.$news_data[$i]['id']); ?>"><b><?php echo $news_data[$i]['title']; ?></b></a></td>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left">

          </td>
        </tr>
 <?php

if ($_GET['ID']!='' && $_GET['ID']==$news_data[$i]['id']) {

$total_query=xtc_db_query("SELECT
                           count(*) as count
                           FROM module_newsletter_temp_".(int)$_GET['ID']."");
$total_data=xtc_db_fetch_array($total_query);
?>
<tr>
<td class="dataTableContent_products" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left"></td>
<td colspan="2" class="dataTableContent_products" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left"><?php echo TEXT_SEND_TO.$total_data['count']; ?></td>
</tr>
<td class="dataTableContent" valign="top" style="border-bottom: 1px solid; border-color: #999999;" align="left">
  <a class="button" href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=delete&ID='.$news_data[$i]['id']); ?>" onClick="return confirm('<?php echo CONFIRM_DELETE; ?>')"><?php echo BUTTON_DELETE.'</a><br />'; ?>
  <a class="button" href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=edit&ID='.$news_data[$i]['id']); ?>"><?php echo BUTTON_EDIT.'</a>'; ?>
  <br /><br /><div style="height: 1px; background: Black; margin: 3px 0;"></div>
  <a class="button" href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=send&ID='.$news_data[$i]['id']); ?>"><?php echo BUTTON_SEND.'</a>'; ?>

</td>
<td colspan="2" class="dataTableContent" style="border-bottom: 1px solid; border-color: #999999; text-align: left;">
<?php

 // get data
    $newsletters_query=xtc_db_query("SELECT
                                   title,body,cc,bc
                                  FROM ".TABLE_MODULE_NEWSLETTER."
                                  WHERE newsletter_id='".(int)$_GET['ID']."'");
   $newsletters_data=xtc_db_fetch_array($newsletters_query);

echo TEXT_TITLE.$newsletters_data['title'].'<br />';

     $customers_status=xtc_get_customers_statuses();
     for ($i=0,$n=sizeof($customers_status);$i<$n; $i++) {

     $newsletters_data['bc']=str_replace($customers_status[$i]['id'],$customers_status[$i]['text'],$newsletters_data['bc']);

     }

echo TEXT_TO.$newsletters_data['bc'].'<br />';
echo TEXT_CC.$newsletters_data['cc'].'<br /><br />'.TEXT_PREVIEW;
echo '<table style="border-color: #cccccc; border: 1px solid;" width="100%"><tr><td>'.$newsletters_data['body'].'</td></tr></table>';
?>
</td></tr>
<?php
}
?>

<?php
}
}


?>
</table>
<br /><br />
<?php
 $newsletters_query=xtc_db_query("SELECT
                                   newsletter_id,date,title
                                  FROM ".TABLE_MODULE_NEWSLETTER."
                                  WHERE status='1'");
 $news_data=array();
 while ($newsletters_data=xtc_db_fetch_array($newsletters_query)) {

 $news_data[]=array(    'id' => $newsletters_data['newsletter_id'],
                        'date'=>$newsletters_data['date'],
                        'title'=>$newsletters_data['title']);
 }

?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
        <tr class="dataTableHeadingRow">
          <td class="dataTableHeadingContent" width="80%" ><?php echo TITLE_SEND; ?></td>
          <td class="dataTableHeadingContent"><?php echo TITLE_ACTION; ?></td>
        </tr>
<?php
for ($i=0,$n=sizeof($news_data); $i<$n; $i++) {
if ($news_data[$i]['id']!='') {
?>
        <tr>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" valign="middle" align="left"><?php echo $news_data[$i]['date'].'    '; ?><b><?php echo $news_data[$i]['title']; ?></b></td>
          <td class="dataTableContent" style="border-bottom: 1px solid; border-color: #f1f1f1;" align="left">

  <a href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=delete&ID='.$news_data[$i]['id']); ?>" onClick="return confirm('<?php echo CONFIRM_DELETE; ?>')">
  <?php
  echo xtc_image(DIR_WS_ICONS.'delete.gif','Delete','','','style="cursor:pointer" onClick="return confirm(\''.DELETE_ENTRY.'\')"').'  '.TEXT_DELETE.'</a>&nbsp;&nbsp;';
  ?>
<a href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=edit&ID='.$news_data[$i]['id']); ?>">
<?php echo xtc_image(DIR_WS_ICONS.'icon_edit.gif','Edit','','').'  '.TEXT_EDIT.'</a>'; ?>





          </td>
        </tr>
<?php
}
}


?>
</table>

<?php


  break;       // end default page

  case 'edit':

   $newsletters_query=xtc_db_query("SELECT title,body,cc,bc FROM ".TABLE_MODULE_NEWSLETTER." WHERE newsletter_id='".(int)$_GET['ID']."'");
   $newsletters_data=xtc_db_fetch_array($newsletters_query);

  case 'safe':
  case 'new':  // action for NEW newsletter!

$customers_status=xtc_get_customers_statuses();


  echo xtc_draw_form('edit_newsletter',FILENAME_MODULE_NEWSLETTER,'action=save','post','enctype="multipart/form-data"').xtc_draw_hidden_field('ID',$_GET['ID']);
  ?>

  <br /><br />
 <table class="main" width="100%" border="0">
   </tr>
      <tr>
      <td width="10%"><?php echo TEXT_TITLE; ?></td>
      <td width="90%"><?php echo xtc_draw_input_field('title',$newsletters_data['title'],'size=100'); ?></td>
   </tr>
   <tr>
      <td width="10%"><?php echo TEXT_TO; ?></td>
      <td width="90%"><?php
for ($i=0,$n=sizeof($customers_status);$i<$n; $i++) {

     $group_query=xtc_db_query("SELECT count(*) as count
                                FROM ".TABLE_NEWSLETTER_RECIPIENTS."
                                WHERE mail_status='1' and
                                customers_status='".$customers_status[$i]['id']."'");
     $group_data=xtc_db_fetch_array($group_query);

     $group_query=xtc_db_query("SELECT count(*) as count
                                FROM ".TABLE_CUSTOMERS."
                                WHERE
                                customers_status='".$customers_status[$i]['id']."'");
     $group_data_all=xtc_db_fetch_array($group_query);

     $bc_array = explode(',', $newsletters_data['bc']);

echo xtc_draw_checkbox_field('status['.$i.']','yes', in_array($customers_status[$i]['id'], $bc_array)).' '.$customers_status[$i]['text'].'  <i>(<b>'.$group_data['count'].'</b>'.TEXT_USERS.$group_data_all['count'].TEXT_CUSTOMERS.'<br />';

}
echo xtc_draw_checkbox_field('status_all', 'yes',in_array('all', $bc_array)).' <b>'.TEXT_NEWSLETTER_ONLY.'</b>';

       ?></td>
   </tr>
         <tr>
      <td width="10%"><?php echo TEXT_CC; ?></td>
      <td width="90%"><?php

       echo xtc_draw_input_field('cc',$newsletters_data['cc'],'size=100'); ?></td>
   </tr>
      </tr>
      <tr>
      <td width="10%" valign="top"><?php echo TEXT_BODY; ?></td>
      <td width="90%"><?php

echo xtc_draw_textarea_field('newsletter_body', 'soft', '150', '45', stripslashes($newsletters_data['body']));

        ?></td>
   </tr>
   </table>
   <a class="button" onClick="this.blur();" href="<?php echo xtc_href_link(FILENAME_MODULE_NEWSLETTER); ?>"><?php echo BUTTON_BACK; ?></a>
   <right><?php echo '<input type="submit" class="button" onClick="this.blur();" value="' . BUTTON_SAVE . '"/>'; ?></right>
  </form>
  <?php

  break;
} // end switch
?>


</td>

          </tr>
        </table></td>
      </tr>
    </table></td>
<!-- body_text_eof //-->
  </tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php');
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Re: Anrede im Newsletter

Beitrag von Kopernikus »

Hmm ich verstehs einfach nicht. Habe in den letzten Stunden nun alle Dateien manuell durchgesehen, wo customers_gender überall vorkommt und alle Resultate mit der original Webs 1.0.17 abgeglichen. Nun weiss ich wenigstens, dass dieser Tabelleneintrag standardmässig in der Webs drin ist.

Deshalb meine Frage an Euch. Könnt Ihr mal in Eurer DB nachsehen, ob in der Tabelle "newsletter_recipients" in der Spalte "customers_gender" etwas eingetragen ist? Denn sollte es ein Bug sein, muss ich hier gar nicht mehr weiter suchen.
Kopernikus
Beiträge: 390
Registriert: Fr 19. Okt 2012, 12:15

Re: Anrede im Newsletter

Beitrag von Kopernikus »

Ich möchte hier nochmals nachhacken, weil ich für dieses Problem noch immer keine Lösung gefunden habe. Ich möchte einfach wissen, ob die Spalte "customers_gender" im Webs Testshop berücksichtigt wird, oder ob es sich um ein Fehler in meinem Shop handelt. Kann das nicht kurz jemand prüfen? Ich wäre echt froh, da ich diese Woche ein Newsletter versenden möchte und meine Kunden gerne persönlich angesprochen hätte.
yogi
Administrator
Beiträge: 292
Registriert: Do 6. Mai 2010, 14:16
Shop Version: die aktuelle
Wohnort: Köln
Kontaktdaten:

Re: Anrede im Newsletter

Beitrag von yogi »

Hallo Kopernikus,

der customer_gender wird in der tabelle newsletter_receipent leider nicht berücksichtigt.
Bei der Tabelle newsletter_receipent handelt es sich um die Newsletter-Empfänger, und zwar nicht nur um die registrierten kunden sondern auch um die User die sich über die Newsletter-Funktion für den erhalt eines Newsletters "eintragen".
Wenn also beim Eintrag in der newsletter_receipent keine customers_id gesetzt ist so kannst du das Geschlecht des Empfängers nicht ermitteln.

Das module_newsletter.php ermittelt das Geschlecht anhand über den Kunden und schreibt dies in die module_newsletter_temp_* Tabelle für einen Newsletter, das klappt aber nur bei Kunden und nicht bei reinen Newsletter-Empängern.
Auch wäre das dann die korrekt tabelle um die Kunden anzuschreiben.
Antworten