2014-12-10 9 views
5

Przy opracowywaniu na localhost poprzez XAMPP użyłem mysqli_fetch_all w moim kodu. Ale po przesłaniu do hostingu hostingu, nie działa.nie mysqli_fetch_all pracuje nad wspólną hostimg potrzebują alternatywnego

badałem w internecie i okazało się, serwer powinien użyć MySQLnd uruchomić mysqli_fetch_all. Więc nie mogę uruchomić mojego obecnego kodu na serwerze.

muszę dokładnie alternatywę tego kodu. Jakieś sugestie?

Aktualny kod:

$result = mysqli_query($con,$query); 
$arr = mysqli_fetch_all($result, MYSQLI_ASSOC); 

$totalrecords = count($arr); 

$json = array('sEcho' => '1', 'iTotalRecords' => $totalrecords, 'iTotalDisplayRecords' => $totalrecords, 'aaData' => $arr); 
echo json_encode($json); 

Odpowiedz

4

Jeśli nie można go używać, ponieważ nie masz zainstalowanego mysqlnd, a następnie pobrać ją jakby normalnie można zrobić z mysqli_fetch_assoc()

$arr = array(); 
$result = mysqli_query($con,$query); 
$totalrecords = mysqli_num_rows($result); 
while($row = mysqli_fetch_assoc($result)) { 
    $arr[] = $row; 
} 

$json = array('sEcho' => '1', 'iTotalRecords' => $totalrecords, 'iTotalDisplayRecords' => $totalrecords, 'aaData' => $arr); 
echo json_encode($json); 
+0

pracował jak urok. Dziękuję Ci!!! – sumit

+0

@sumit pewien człowiek cieszę się, że to pomogło – Ghost

0

mam w obliczu tego samego problemu z mojego hosta, a dla mniej kodu refaktoringu myślę, że lepiej jest, aby wdrożyć podobną funkcję przy użyciu mysqli_fetch_assoc() lub mysqli_fetch_array(), wracając taka sama jak mysqli_fetch_all(), jak:

public function mysqli_fetch_all_alt($result) { 
    $select = array(); 

    while($row = mysqli_fetch_assoc($result)) { 
     $select[] = $row; 
    } 

    return $select; 
} 

Następnie wystarczy wykonać wyszukiwanie informacji w projekcie.

+0

wskazówkę: zawsze możesz zawrzeć definicję funkcji w warunku z function_exists(). to pozwoli Ci zaoszczędzić miejsce znalezienia w projekcie. –

Powiązane problemy