Benutzername: Passwort:   Unsere FWP bluepoints
Das Support Forum für die Onlineshop Software von FWP Systems GmbH. Unsere kostenlose Shoplösung bietet Ihnen enorme Möglichkeiten für Ihren eigenen Online Shop. Vergleichen Sie die Shop Systeme und überzeugen Sie sich von den Leistungen des kostenlosen FWP Shops. Einen Onlineshop erstellen ohne Vorkenntnisse in Programmiersprachen.

Wir bieten Ihnen Hilfe bei der Installation und Einrichtung und der Design Anpassung der Templates, sowie Marketing und SEO Tips.

Support
Forum-Übersicht -> Bugs Multishop
Neues Thema eröffnen    Neue Antwort erstellen   


*in bearbeitung* Order mit Wert NULL bei iContactID aber b..

Gehe zu Seite 1, 2  Weiter

  • FWP Einsteiger
NAbend,

ich hab gerade eine Bestellung, die keiner Person zugeordnet ist (aber Lieferadresse ist vorhanden). In der DB steht NULL bei der ContactID, die Bestellung wurde aber per Paypal bezahlt.

Ist das möglich? Alle anderen Bestellungen (und das sind einige) haben geklappt.

Was hat der Kunde da gemacht?

Gruß
Tobias


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Einsteiger
nachdem ich die person und contact id von hand reingenommen hab stimmts und ein name in der auftragsliste wird angezeigt?!


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Mitarbeiter
Guten Morgen tzepf,

ja dieser Fehler ist uns bereits bekannt und in der finalen behoben.

Er tritt nur auf, wenn sich User beim Bestellprozess registrieren oder sich dann erst einloggen.
Eine Einleitung zum beheben des Fehlers kann ich dir leider nicht geben, da dieser Fall doch etwas komplexer war.

Mfg Jonas


_________________
FWP Systems GmbH


  • FWP Einsteiger
okay, er tritt ja nur sporadisch auf.

wenn ich die id dann manuell eintrage scheint es zu gehen oder muss ich sonst noch was manuell ändern?

hat der user die bestellbestätigung bekommen?

gruß
tobias


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


Sebastian (FWP): BeitragAW: Order mit Wert NULL bei iContactID aber bezahlt (05.08.2010, 8:37)
  • FWP Mitarbeiter
Wir konnten das Problem leider bisher nicht reproduzieren. Sehr selten trat das Problem bei einem anderen Kunden auf. Dementsprechend haben wir keine Info, ob der Kunde die E-Mail erhalten hat. Könntest Du bei dem Kunden mal nachfragen?

Es reicht, wenn Du die iContactId und iPersonId nachträgst.


_________________
Viele Grüße,
Sebastian

FWP Systems GmbH
Website dieses Benutzers besuchen


  • FWP Mitarbeiter
Guten Morgen tzepf,

Ich vermute die E-Mails wurden nicht verschickt, da die Bestellung ja keine iContactId hat.

Manuell kannst du es weiterhin ohne Probleme ändern.

Ich schau mir das im Laufe des Tages nochmal an, vielleicht fällt mir dazu noch ein kleiner hack ein Wink.

Mfg Jonas


_________________
FWP Systems GmbH


  • FWP Einsteiger
hi jonas,

hast du einen "hack" gefunden?

mir kam grad die idee, mit ner if abfrage vor dem sql insert zu checken ob die ipersonid leer ist und diese in dem fall dann durch eine sql abfrage, die auf der tabelle contact_address mit select iContactid from contact_address where iAddressid = currentAddressid die entsprechende contactid holt und dann einsetzt?

Sollte doch machbar sein oder?

Kannst du mir schnell sagen, wo genau das Einfügen der id's in die Order-Tabelle passiert?

gruß
tobias


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Mitarbeiter
Guten Morgen tzepf,

ja so würde es gehen, ist aber eine sehr "unschöne" Lösung.

Dieses Problem tritt nur auf wenn man sich beim Bestellen erst einloggt und zwar leitet die Login-Funktion um bevor die iPersonId und iContactId gesetzt werden kann, dies kann wie folgt behoben werden:

1.
Datei: _system/_classesphp/orderProcess/master/orderStepLoginMaster_std.inc.php

Wo "$oPerson->tryLogin()" aufgerufen wird, so erweitern:
"$oPerson->tryLogin(false)".

Des Weiteren "return ORDER_PROCESS_STATUS_OK;" in "return ORDER_PROCESS_STATUS_REDIRECT;" ändern sowie
Code:
        $this->oOrderProcess->oOrder->set_iPersonId(getFrontendVars('iPersonId'));    $this->oOrderProcess->oOrder->set_iContactId(getFrontendVars('iContactId'));

vor "return ORDER_PROCESS_STATUS_REDIRECT;"
einfügen.


2.
Datei: _system/_classesphp/contact/person_std.inc.php

Die Methode tryLogin wie folgt ersetzen:

Code:

public function tryLogin($bRedirect = true) {

      $bLogin = FALSE;
      // login with mail address
      if (array_key_exists('sPasswordLogin', $_POST) && array_key_exists('sMailAddressLogin', $_POST)) {
         if (FALSE !== ($mRes = $this->checkLogin($_POST['sMailAddressLogin'], $_POST['sPasswordLogin']))) {
            $bLogin = TRUE;
         }

      } elseif (array_key_exists('sPasswordLogin', $_POST) && array_key_exists('sClientNumberLogin', $_POST)) {
         if (FALSE !== ($mRes = $this->checkLoginByClientNumber($_POST['sClientNumberLogin'], $_POST['sPasswordLogin']))) {
            $bLogin = TRUE;
         }
      }
      if ($bLogin === TRUE)  {
         if (is_array($aoPerson = person::getPersonList(array('iPersonId' => $mRes['iPersonId']))) && array_key_exists(0, $aoPerson)) {
            $oPerson = $aoPerson[0];
         }
         if (is_array($aoContact = contact::getContactList(array('iContactId' => $mRes['iContactId']))) && array_key_exists(0, $aoContact)) {
            $oContact = $aoContact[0];
         }
         $oClient = client::getClientData($oContact->get_iContactId());
         if (is_array($aoAddress = Address::getAddressList(array('iAddressId' => $mRes['iAddressId']))) && array_key_exists(0, $aoAddress)) {
            $oAddress = $aoAddress[0];
         }
         $dPriceReduction = $oClient->get_dPriceReduction();
         // get sPTaxId from client object
         $sPTaxId = ($oClient->get_sPtaxId()) ? $oClient->get_sPtaxId() : '';
         load::lib("shop");
         //save data to session

         global $oShopHandler;
         /**
          * @todo find error
          */
         $oShopHandler->setData('iCountryId', $oAddress->get_iCountryId());
         $oShopHandler->setData('eConfirmed', $oClient->get_eConfirmed());
         $oShopHandler->setData('bTax', 1); // checkTax($oAddress,null,$sPTaxId));
         $oShopHandler->setData('bLogin', 1);
         $oShopHandler->setData('iPersonId',  $oPerson->get_iPersonId());
         $oShopHandler->setData('iContactId', $oPerson->get_iContactId());
         $oShopHandler->setData('sLanguageId', $oPerson->get_sLanguageId());
         $oShopHandler->setData('dPriceReduction', $dPriceReduction);
         $oShopHandler->setData('iPriceListId', getPriceList($oClient->get_iContactId(), getFrontendVars('iShopId')));
         $oShopHandler->setData('bShowPrice', 1);

         /**
          * hole kundengruppe und setze bNetPrice dynamisch
          */

         $asSearch = array('iContactId' => $oPerson->get_iContactId());
         $oContactClient = new client();

         $aoClient = $oContactClient->getClientList($asSearch);

         if (is_array($aoClient) && count($aoClient) === 1) {
            load::classes('data.clientGroup');
            $asSearch = array('iClientGroupId' => $aoClient[0]->get_iClientGroupId(),'iShopId' => $oShopHandler->get_iShopId());
            $oClientGroup = new clientGroup();
            $oShopHandler->setData('iClientGroupId', $aoClient[0]->get_iClientGroupId());
            $aoClientGroup = $oClientGroup->getList($asSearch);
            if (array_key_exists(0, $aoClientGroup)) {
               $oShopHandler->setData('bNetPrice', $aoClientGroup[0]->get_bNet());
            }
         }

         $_SESSION['orderForm']['bContact'] = 1;

         if (array_key_exists('ajax', $_GET)) {
            return $bLogin;
         }

         if (!$bRedirect) {
            return true;
         }

         if (!isset($_POST['sRd']) || $_POST['sRd'] == "") {
            $oShopHandler->redirect(validateRedirectUrl(getenv('HTTP_REFERER')));
         } else {

            /*if (strpos('index.php', $_POST['sRd']) === FALSE) {
               $_POST['sRd'] = URL . 'index.php?' . $_POST['sRd'];
            } */

            $oShopHandler->redirect(validateRedirectUrl($_POST['sRd']));
         }
      } else {
         global $aOutput;
         $aOutput['bLoginError'] = 1;
         $aOutput['tempErr']['sMailAddressLogin'] = get_aOut('sLoginFailed');
         return false;
      }
   }


So sollte der Fehler nicht mehr auftreten.

Mfg Jonas


_________________
FWP Systems GmbH


  • FWP Einsteiger
Hi Jonas,

vielen vielen Dank, hab die Lösung eingebaut und werde es beobachten.

Der Fehler trat jetzt in kurzer Zeit 3 mal auf, daher danke für die schnelle Hilfe

Gruß
Tobias


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Mitarbeiter
Guten Morgen tzepf,

kein Problem, gerne wieder.

Wenn jedoch das Problem weiterhin auftreten sollte, wäre eine Rückmeldung sehr nett (am besten Kunden fragen wie er bestellt hat etc.) dann können wir den Fehler (wenn er noch vorhanden ist) schneller und sauberer beheben.

Mfg Jonas


_________________
FWP Systems GmbH


  • FWP Einsteiger
Hi jonas,

fehler ist heute wieder aufgetreten, kunde hat per expercash bezahlt und war vorher schon registiriert.

habe den kunden angeschrieben

müssen wir doch die unschöne lösung benutzen?! wenn du mir dafür nen kurzen code hättest wärs super, bei bestellkritischen sachen bin ich immer sehr vorsichtig...

wenn man das halt net merkt kriegt der kunde ewig keine mail, was sehr schlecht ist.

gruß
tobias


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Einsteiger
nachtrag: auch wir kriegen keine bestellinfo mail...


_________________
Wenn meine Antwort geholfen hat freu ich mich über Bluepoints - wer weiß für das die noch gut sind Smile
Mein Shop: Maria Galland Online Shop


  • FWP Mitarbeiter
Guten Tag Tobias,

leider ist dies die bisher einzige Lösung für dieses Problem aber vielleicht hilft der Tipp mit "Expercash" weiter.

Ich versuche aufgrund der Informationen nocheinmal den Fehler zu befinden und zu beheben:
http://mantis.fwpshop.org/view.php?id=8411

Vielen Dank für deine Mitarbeit.

Mfg Jonas



Zuletzt bearbeitet von Jonas [FWP] am 12.08.2010, 14:48, insgesamt einmal bearbeitet


_________________
FWP Systems GmbH


hi jonas,

danke für die schnelle info.

wie gesagt, wenn du mir ne quick and dirty lösung hast bin ich auch zufrieden Smile werde den rc3 wohl noch ne weile nutzen, so nach dem motto never change a running system Wink hab halt zuviel selber gefixed und angepasst und daher wart ich bis sichs wirklich lohnt.

gruß
tobias



  • FWP Mitarbeiter
Guten Tag Tobias,

Eine "quick and dirty" Lösung wäre beim speichern der Bestellung zu prüfen ob die iContactId und iPersonId nicht null sind und dann aufgrund der iAdressId die fehlenden Ids nachpflegen.

Dies ist aber sehr unschön, sollte jedoch dein Problem zunächst beseitigen.

Vielleicht hilft dir dieser Ansatz weiter Wink.

Mfg Jonas


_________________
FWP Systems GmbH


Forum-Übersicht -> Bugs Multishop

Gehe zu Seite 1, 2  Weiter Seite 1 von 2

Neues Thema eröffnen   Neue Antwort erstellen   

Ähnliche Beiträge zu *in bearbeitung* Order mit Wert NULL bei iContactID aber b..

Beitrag Forum Antworten
Templates kaufen aber wo?
(Erstellt von pcdoctor-lp am 18.01.2012, 14:11)
Allgemeine Fragen 0
Auftragsstatus hat Null Funktion - Multishop 4RC5
(Erstellt von ingtec am 13.08.2011, 18:47)
Funktionsfragen 0
Newszeile im Header, aber wie?
(Erstellt von Smoke am 18.07.2011, 23:03)
Allgemeine Fragen 0
Die SMTP-Daten sind inkorrekt. Port 25 funktioniert aber
(Erstellt von Redbull842 am 13.03.2011, 16:36)
Funktionsfragen 5
Bearbeitung nach Installation
(Erstellt von BrunoXXL am 30.01.2011, 14:01)
Installation und Einrichtung 1