Hey zusammen,
ich habe bereits eine kleine feine Abfrage in PHP gebaut, die wunderbar und fehlerfrei funktioniert.
Nun tausche ich $query2 folgendermaßen aus:
Und zack - nix geht mehr
Um der Sache mal auf die Spur zu kommen, habe ich ein paar Debug-Abfragen eingefügt:
Hier das Ergebnis:
Man kann also sehen, dass $query OK ist, allerdings liefert mssql_query($query); lediglich "Resource id #3".
Natürlich habe ich schonmal etwas gegoogelt und mssql_fetch_assoc durch mssql_fetch_array oder row ersetzt - leider ohne Erfolg. Auch hab ich die große Abfrage mal so verändert, dass sie in 1 Zeile steht - hab auch alle Aliase entfernt - hat nichts geholfen.
Natürlich läuft diese Abfrage im SSMS einwandfrei.
Hat jemand von euch noch ne Idee, woran das liegen kann?
Wie gesagt, mit der "kleinen" Abfrage $query2 = "select kArtikel, cArtNr, fVKNetto, fUVP from tartikel"; funktioniert alles wunderbar! Nur mit der großen nicht...
ich habe bereits eine kleine feine Abfrage in PHP gebaut, die wunderbar und fehlerfrei funktioniert.
PHP:
$query2 = "select kArtikel, cArtNr, fVKNetto, fUVP from tartikel";
$result = mssql_query($query);
$a = array();
while ($row = mssql_fetch_assoc($result)) {
$a['data'][] = $row;
}
echo json_encode($a);
Nun tausche ich $query2 folgendermaßen aus:
PHP:
$query2 = "
SELECT ABP.cArtNr AS 'Artikelnummer',
MAX(SUBSTRING(ABP.cName,8,50)) AS 'Beschreibung',
SUM(ABP.nQuantityPurchased) AS 'Anzahl',
SUM(ABP.nQuantityPurchased) * MAX(AA.fPrice) AS 'Brutto-Umsatz'
FROM pf_amazon_bestellung
INNER JOIN pf_amazon_bestellungpos ABP ON pf_amazon_bestellung.kAmazonBestellung = ABP.kAmazonBestellung
INNER JOIN pf_amazon_angebot AA ON ABP.cArtNr = AA.cSellerSKU
WHERE dPurchaseDate >= DateAdd(DAY, DateDiff(DAY, 0, getDate()), 0)
AND pf_amazon_bestellung.cOrderStatus <> 'Canceled'
GROUP BY ABP.cArtNr
";
Und zack - nix geht mehr
Um der Sache mal auf die Spur zu kommen, habe ich ein paar Debug-Abfragen eingefügt:
PHP:
echo "Start";
echo "<br>";
echo "Query2 variable";
echo "<br>";
echo $query;
echo "<br>";
echo "MSSQL Query result";
echo "<br>";
echo $result;
echo "<br>";
echo "JSON encode a";
echo "<br>";
echo json_encode($a);
echo "<br>";
echo "End";
Hier das Ergebnis:
Man kann also sehen, dass $query OK ist, allerdings liefert mssql_query($query); lediglich "Resource id #3".
Natürlich habe ich schonmal etwas gegoogelt und mssql_fetch_assoc durch mssql_fetch_array oder row ersetzt - leider ohne Erfolg. Auch hab ich die große Abfrage mal so verändert, dass sie in 1 Zeile steht - hab auch alle Aliase entfernt - hat nichts geholfen.
Natürlich läuft diese Abfrage im SSMS einwandfrei.
Hat jemand von euch noch ne Idee, woran das liegen kann?
Wie gesagt, mit der "kleinen" Abfrage $query2 = "select kArtikel, cArtNr, fVKNetto, fUVP from tartikel"; funktioniert alles wunderbar! Nur mit der großen nicht...