Autor Thema: Kundenspezifische Angebote  (Gelesen 5612 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Kundenspezifische Angebote
« am: Dezember 15, 2009, 10:54:03 »
Hallo,

Nachdem die Frage gestellt wurde, ob man im Kundenkonto auch für den Kunden spezielle Angebote wie bei Amazon anzeigen kann, hier mal ein möglicher Ansatz:
Man speichert die Suchergebnisse eines eingelogten Kunden in einem ben.def. Kundenfeld (im Beispiel "SUCH" -> Text lang)
Dazu den Code in die iplSearchresults.ipl ergänzen:
sub saferesults {
if (length($main::userid)) {
  my $kdnr = ssp::get_var_user("kundennr"); 
my $pre = ssp::db_get_prefix();
my $USR = $pre . "USR";
my $read = ssp::readSQLData(qq|SELECT SUCH FROM $USR WHERE KUNDENNR = '$kdnr'|, "SUCH");
my $oldstr = ssp::get_var_db("SUCH",0);
my $str;
my $newstr;
my $anzahl = $_[1];   
for ($i=0;$i<=$anzahl;$i=$i+1){
$itemid = ssp::get_var_article("itemid", $i);
if ($oldstr =~ /$itemid/) {$str.= "";} else {$str.= "$itemid, ";}
}
$newstr = $str.$oldstr;

   ssp::db_update_usr($kdnr,"SUCH",$newstr);
}
}
auf der Suchergebnisseite werden dann mit __searchresults::saferesults__  die gefundenen Artikelnummern in's SUCH-Feld des Kunden eingetragen.

diese Artikel können dann auf jeder beliebigen Seite - wie "normale" Crossartikel - ausgegeben werden
<!--spmacro:module(show)
sub empfehlung {
if (length($main::userid)) {
    my $str = ssp::get_var_user("SUCH");
if ($str) {
ssp::embedded("csearch","embedded/artikelempfehlung.txt",$str . ":10000000:::3:0");
}
      }
}
-->
__show::empfehlung__

Wie man die Favoriten anzeigen kann, habe ich ja hier http://www.shoppilot.net/pf/index.php?topic=1342.msg4792#msg4792 schon beschrieben.

Linkback: https://www.shoppilot.net/pf/index.php?topic=1343.0
mfG
dobra

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Re: Kundenspezifische Angebote
« Antwort #1 am: Dezember 15, 2009, 12:48:08 »
noch eine Idee für' Kundenkonto:

Man kann auch die "zuletzt gesehenen Artikel" für eingelogte Kunden speichern und beim nächsten Besuch wieder anzeigen.

Dazu wieder ein ben.def. Kundenfeld anlegen (im Beispiel LASTSEEN -> Text lang)
Auf den Detailseiten das Script so ergänzen

<!--spmacro:module(Callback)
sub begin_read_template {
   if ($ssp::xxsession != 4711471147 && length($main::userid)) {
  my $kdnr = ssp::get_var_user("kundennr");
      my $besuchteSeiten = ssp::cart_read_var('compseite');
      if ($besuchteSeiten eq $ssp::undefined) { $besuchteSeiten = ""; }
         my $aktuelleSeite= ssp::get_var_article('itemid');
      if ($besuchteSeiten =~ m/$aktuelleSeite!_!/) {$alleSeiten = $besuchteSeiten}
      else { $alleSeiten = $aktuelleSeite . "!_!" . $besuchteSeiten; }
      
   ssp::cart_write_var('compseite', $alleSeiten);  
      my $safelastseen = $alleSeiten;
      $safelastseen =~ s/!_!/, /g;
         ssp::db_update_usr($kdnr,"LASTSEEN",$safelastseen);

   }
}
-->


Ausgabe s. oben mit
    my $str = ssp::get_var_user("LASTSEEN");

« Letzte Änderung: Januar 28, 2010, 07:13:57 von dobra »


xx
Angebote auf Startseite

Begonnen von Gerd

1 Antworten
5608 Aufrufe
Letzter Beitrag April 13, 2003, 11:43:17
von hop