PHP Profis um Hilfe gebeten

Hallo Leute, wer kann mir hier weiterhelfen? Ich versuche gerade eine Schnittstelle nach meinen Wünschen anzupassen. Habe im Grunde alles fertig. Bis auf einen Punkt: Hier mal ein Codeausschnitt $d[31] = $date; // Preisdatum $d[32] = $payment; // Zahlungsbedingung $d[33] = ''; // Waehrung (ISO-Codes) $d[34] = $customer-\>id\_default\_group; // Preisgruppe $d[35] = ''; // Rabattgruppe $d[36] = ''; // Schluss-Rabatt Mir geht es speziell um diesen Schnipsel: $customer->id_default_group; Der liefert mir eine Zahl züruck, die im Shop (kein Shopware!) für die Kundengruppe steht. Jetzt würde ich diese Ausgabe gerne hartkodiert mappen. Ich stelle mir das so vor mit if/else ohne Syntax also sinngemäß so wenn “$customer->id_default_group;” ist gleich “1” dann gib “2” wieder, sonst nichts Kann man das an dieser Stelle im Code irgendwie mit so einer if/else Schleife darstellen, und wenn ja mag mir jemand sagen wie das syntaktisch aussehen müßte? Ich habe das schon mal so versucht if ( $customer-\>id\_default\_group == "1" ) { echo "2"; } else { echo ""; } aber das will irgendwie nicht.

Was sagt denn var_dump($customer->id_default_group) ? Gibt er denn einen Wert wirklich aus? Generell wäre es if($customer-\>id\_default\_group == 1) { echo "2"; } Testweise kannst du ja auch einfach im else auch etwas ausgeben lassen wie echo “is nix” - Nur damit du schauen kannst ob die if Abfrage überhaupt greift.

Meinst Du so? $d[31] = $date; // Preisdatum $d[32] = $payment; // Zahlungsbedingung $d[33] = ''; // Waehrung (ISO-Codes) $d[34] = $customer-\>id\_default\_group == "1" ? "2":""; // Preisgruppe $d[35] = ''; // Rabattgruppe $d[36] = ''; // Schluss-Rabatt

1 Like

Hallo Leute, danke für die Hilfestellungen. Ich hatte iwie keine Benachrichtigung bekommen. :frowning: Mein Account spinnt total. Inzwischen habe ich mein Problem so gelöst: Weiter oben in der Datei mache ich folgende If/else Ausgabe //preisgruppen $customergroup = $customer-\>id\_default\_group; if ($customergroup == 4) { $pricegroup = 1; } else { $pricegroup = 0; } und unten dann an der besagten Stelle $d[31] = $date; // Preisdatum $d[32] = $payment; // Zahlungsbedingung $d[33] = ''; // Waehrung (ISO-Codes) $d[34] = $pricegroup; // Preisgruppe $d[35] = ''; // Rabattgruppe $d[36] = ''; // Schluss-Rabatt $d[37] = ''; // Rabattgrund So klappt es auf jeden Fall. :slight_smile: glücklichbin :slight_smile: Wenn man von Programmieren im Grunde keine Ahnung hat, nur etwas HTML / CSS versteht, und dann mit ein bisschen Copy & Paste (try & error) zum gewünschten Ergebnis kommt kann das echte Glückgefühle auslösen! :thumbup: Ich habe jetzt auch nochmal eure beiden Vorchläge getestet: Der Weg von @dirkdesignverign klappt auch! der von @kayyy hat leider nicht gefunkt. Für mcih ist die Variante dich ich inzwischen selbst gefunden habe insofern am besten, weil ich dort mit der selben Beding noch 2 weitere Variablen ersetzen kann. In jedem Fall vielen Dank euch für die Unterstützung!

Einen hammer noch :slight_smile: Also, ich hoffe meine wirklich letzte Hürde kann ich auch noch nehmen, wenn mir hier einer auf die Füsse hilft. So wie ich das verstehe, habe ich in meinem script 2 Funktioen, die die Daten einer Bestellung an die Wawi übergeben. Dabei scheint die erste Funktion die einzelnen Artikel des Auftrages zu holen, und die zweite holt die allgemeinen Auftragsdaten (Anschriften aber auch Versandkosten) Mein Ziel ist eine fallweise Unterscheidung zwischen B2B und B2C Kunden und entsprechender Übergabe der netto/brutto Werte. In der zweiten Funktion konnte ich das lösen, mit vorstehender if/else Abfrage nach der Kundenummer. Leider fehlt mir die entsprechende Variable in der ersten Funktion, und da bekomme ich es nicht hin. Das ganze sieht etwa so aus public function getMyData() { //hier werden die artikel gesammelt } public function getMyMasterData() { //hier werden also die allgemeinen Auftragsdaten erzeugt } Ich müsste irgendwie die Kundengruppe (welche mir ja in getMyMasterData zur verfügung steht auch als Parameter für eine vergleichbare if/else Abfrage in der ersten Funktion haben. Meine Frage: Gibt es einen Weg der ersten Funktion diesen Parameter (Kundengruppe) zur Verfügung zu stellen? Danke schon ma Gesendet von iPhone mit Tapatalk

Warum nicht die einfache Variante? $d[34] = $customer->id_default_group == 4 ? 2 : false;

Hallo R4M, Du meinst in Bezug auf mein zweites Posting? Dann ist die Antwort: Weil das if/else für mich übersichtlicher ist, und ich diese Abfrage an 3 Stellen habe (Rabatte, Versandkosten, Kundengruppe) Oder bezog sich Deine Antwort jetzt auf mein letztes posting #141029? Gesendet von iPhone mit Tapatalk