Hallo,
ich sitze an einem Projekt und komme nun nicht weiter vor folgendem Problem:
Die SQL Abfrage funktioniert auf unseren localhost (MySql Server Version: 5.5.11) jedoch nicht auf auf dem 1und1 (MySql Server Version:5.0)
Die SQL-abfrage scheitert, sobald "OR p.festservice_b IN (Array) OR p.festservice_c IN (Array)"nach der p.festservice_a steht.
u.Dienste_budget, u.Dienste_gebiet und u.Dienste_service sind Datentypen
Wäre toll, wenn jemand bestätigen oder dementieren könnte dies für mich. Danke
ich sitze an einem Projekt und komme nun nicht weiter vor folgendem Problem:
Die SQL Abfrage funktioniert auf unseren localhost (MySql Server Version: 5.5.11) jedoch nicht auf auf dem 1und1 (MySql Server Version:5.0)
Die SQL-abfrage scheitert, sobald "OR p.festservice_b IN (Array) OR p.festservice_c IN (Array)"nach der p.festservice_a steht.
u.Dienste_budget, u.Dienste_gebiet und u.Dienste_service sind Datentypen
Wäre toll, wenn jemand bestätigen oder dementieren könnte dies für mich. Danke
PHP-Code:
public function getProducts($userid, $sort = false)
{
global $db;
($sort) ? $order = $sort : $order = "p.date DESC";
$where = "WHERE NOT EXISTS (SELECT * FROM utransactions AS t WHERE t.user_id = '{$userid}' AND t.product_id = p.token)"
. "\n AND p.approved='yes'"
. "\n AND p.status='1'"
. "\n AND u.uid = '" . $userid . "'"
. "\n AND p.budget_id IN (u.Dienste_budget)"
. "\n AND p.gebiet_id IN (u.Dienste_gebiet)"
. "\n AND (p.festservice_a IN (u.Dienste_service)"
. "\n OR p.festservice_b IN (u.Dienste_service)"
. "\n OR p.festservice_c IN (u.Dienste_service))";
$sql = "SELECT p.*,"
. "\n DATE_FORMAT(p.date, '%d.%m.%Y') as created,"
. "\n DATE_FORMAT(p.festdatum, '%d.%m.%Y') as festdate,"
. "\n (TO_DAYS(NOW()) - TO_DAYS(p.festdatum)) as days,"
. "\n TO_DAYS(DATE_ADD(p.festdatum,INTERVAL -1 DAY))- TO_DAYS(NOW()) as expiry"
. "\n FROM products AS p, usersettings AS u " . $where . " ORDER BY " . $order;
$row = $db->fetch_all($sql);
return $row;
}
Kommentar