Zugriff auf nur einen Wert in einem Produkt


#1

Hallo zusammen,

ich habe ein Produkt und will dort auf einen speziellen Wert zugreifen. Wie muss ich das genau machen?
In dem folgenden will ich speziell auf [product_price] => 13 zugreifen.

[1] => stdClass Object 

(
[item_amount_id] => 51
[item_id] => 51
[item_subtotal] => 13.00
[item_tax_total] => 0.00
[item_discount] => 0.00
[item_total] => 13.00
[product_id] => 6
[family_id] => [product_sku] => [product_name] => oepnv
[product_description] => dd.mm.YYYY
[product_price] => 13.00
[purchase_price] => [provider_name] => [tax_rate_id] => [unit_id] => [product_tariff] => 0
[invoice_id] => 13
[item_tax_rate_id] => 0
[item_product_id] => 6
[item_date_added] => 2019-01-27
[item_task_id] => [item_name] => oepnv [item_description] => 27.01.2019
[item_quantity] => 1.00
[item_price] => 13.00
[item_discount_amount] => [item_order] => 2 [item_is_recurring] => [item_product_unit] => [item_product_unit_id] => [item_date] => [item_tax_rate_percent] => [item_tax_rate_name] =>
)

Gruß
Anja


#2

echo $item->product_price;


#3

Vielen Dank.
Aufs einfachste komm ich wieder nicht. :frowning:


#4

Hm, prinzipiell klappt das ja, aber wie muss ich das ganze machen, wenn ich mehrere Produkte habe und nur bei einem den Preis benötige?


#5

Ok, das hat mit

<?php if ($item->oepnv) { echo htmlsc($item->product_price) . ' €'; //ÖPNV/Fahrtkosten } ?>

fast geklappt.

Bekomme jetzt nur noch folgende Meldung:
A PHP Error was encountered
Severity: NoticeMessage:
Undefined variable: item


#6

What variable did you use above?
$item or $product.or …
You must use the same.


#7

Ich verwende $product->product_price.

Ich glaub ich habe hier einen Denkfehler.
Ich prüfe in der if-Abfrage auf $product->oepnv und im echo will ich dann aber $product->product_price ausgeben.
Wie muss ich das machen?

Aktuell schaut mein Code folgendermaßen aus.
<?php if ($product->oepnv)
{
echo ($product->product_price) . ’ €’; //ÖPNV/Fahrtkosten
} ?>


#8

Ich bin nicht sicher, woher du ‘oepnv’ bekommst. Es ist ein Name des Produkts. Wenn ja, meinst du das:

if ($item->product_name == 'oepnv') { 
    echo htmlsc($item->product_price) . ' €';
}

#9

Genau, oepnv ist ein Produkt. Dort steht im Prinzip nur der Preis von der Fahrkarte drin. Und dieser soll statt der Anzahl in der Ausgabe stehen.

<?php if ($item->product_name == 'oepnv')  **<= hier bekomm ich weiterhin einen Fehler**
	{
		echo htmlsc($item->product_price) . ' €';  //ÖPNV/Fahrtkosten
	}  ?>

Bringt mir weiterhin folgende Fehlermeldungen in dem Bereich mit if…:
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: item

und

A PHP Error was encountered
Severity: Notice
Message: Trying to get property ‘product_name’ of non-object


#10

Versuchen

`$product->product_name`

#11

Nein geht leider auch nicht. Gleiche Fehlermeldung.
Ich häng mal das Dokument hier an.fehlerhafter Code
In Zeile 233 fängt es an. Das andere funktioniert soweit. Einfach nach suchen.


#12

I am confused.

Which file is this?

You said

In dem folgenden will ich speziell auf [product_price] => 13 zugreifen.
[1] => stdClass Object

… [product_price] => 13.00
… [product_name] => oepnv

Did you get using
print_r($product);

If so, then
echo $product->product_price; // product_price
echo $product->product_name

I feel you are leaving out important information. Without all the information, I cannot assist.


#13

Das ist das Rechnungstemplate, das ich an meine Bedürfnisse angepasst habe.

Ich habe zwei Bereiche, einmal mit dem Auto fahren und einmal mit dem Zug.
Das mit dem Auto klappt.
Normalerweise gibt er ja immer die Anzahl aus und berechnet dann den Preis.
Beim Zug hab ich aber den Ticketpreis und den will ich in der Rechnung anzeigen. Dieser Wert steht in product_price.

So schaut mein Produkt aus, das er aber nicht findet.

print_r gibt mir auch die obere Fehlermeldung (undefined variable: product)