Mam problem z poniższym kodem. Otóż poprawnie łączy się on z bazą danych, ale nie wyświetla niczego - strasznie długo mieli i wyswietla tylko: {"aaData":}. To samo zapytanie wywołane przez phpmyadmin pięknie wyświetla wynik. Tabele nie zawierają dużej ilości danych - tabela wizyty to jakieś 1200 wierszy, pozostałe łącznie jakieś 400 wierszy.
<?php // set up the connection variables $db_name = ''; $hostname = 'localhost'; $username = ''; $password = ''; // connect to the database $dbh = new PDO("mysql:host=$hostname;dbname=$db_name", $username, $password); // a query get all the records from the users table $sql = 'select WIZYTY.ID as visitno, WIZYTY.DATA_ZGLOSZ as visitdate, ANIMALS.NAZWA as animalname, CUSTOMER.NAZWA as customername, DOCTORS.NAZWA as doctorname, WIZYTY.AMOUNT as visittotal from WIZYTY inner join ANIMALS on ANIMALS.ANI_ID = WIZYTY.ANI_ID inner join CUSTOMER on CUSTOMER.CUST_ID = WIZYTY.CUST_ID inner join DOCTORS on DOCTORS.DOCTOR_ID = WIZYTY.DOCTOR_ID group by WIZYTY.ID order by WIZYTY.ID'; // use prepared statements, even if not strictly required is good practice $stmt = $dbh->prepare( $sql ); // execute the query $stmt->execute(); // fetch the results into an array $result = $stmt->fetchAll( PDO::FETCH_ASSOC ); // convert to json $json = json_encode( $result ); // echo the json string ?>
Dlaczego tak jest? Ma ktoś pomysł, jak usprawnić ten kod i sprawić by działał?