getMessage(), "\n
";
}
//Primary SQL Statement
$statement = $pdo->prepare("SELECT zf_bap_orders.*,zbs.name as zbs_name,zbc.code as zbc_code, zbc.discount_price as zbc_discount
FROM zf_bap_orders
JOIN zf_bap_events zbs on zf_bap_orders.event_id = zbs.event_id
LEFT JOIN zf_bap_coupons zbc on zf_bap_orders.coupon_id = zbc.coupon_id
WHERE zf_bap_orders.code = :code AND zf_bap_orders.status_id = :status_id");
//Bind parameters
$statement->bindParam("code", $_GET["code"]); // "Auth" 2
$expected_status = 2; // 2 equals "is paid"
$statement->bindParam(":status_id", $expected_status); //Only show, if ticket is paid
//Execute Statement and fetch Data
$statement->execute();
$row2 = $statement->fetch();
if(!($row2["order_id"]>0)){
die('Fehler! Ticket ist ungültig.');
}
//Get Payment methode using ternary operator
$zahlung = $row2["paypal_token"] != "" ? "Paypal" : "Barzahlung";
//Looks like shit, but works :D (PHP Serialized Class -> JSON -> PHP stdClass -> PHP Object)
$seats = json_decode(json_encode(unserialize($row2["places"])), true);
//Convert object to HTML List
$seat_html = "";
$is_vip = false;
$vip_price = 0;
$vip_count = 0;
foreach ($seats as $seat) {
if($seat["place_name"]!="VIP"){
$seat_html .= $seat["place_name"] . " (" . $seat["place_price"] . "€), "; // results in e.g. 'Reihe 1, Platz 2 (5€)'
}else{
$is_vip=true;
$vip_price=$seat["place_price"];
$vip_count++;
}
}
echo '
Name | ' . $row2["first_name"] . " " . $row2["last_name"] . ' |
Zusätze | ' . ($is_vip ? "VIP (".$vip_price."€) x".$vip_count : "-") . ' |
Bestelldatum | ' . $row2["date"] . ' |
Vorstellung | ' . $row2["zbs_name"] . ' |
Rabattcode | ' . $rabatt . ' |
Platz | ' . $seat_html . ' |
Zahlung | ' . $zahlung . ' |
Finaler Preis | ' . $row2["total_price"] . '€ |