2012-12-03 13 views
5

Sto usando CodeIgniter 2.1.3. Ho un problema con la funzione list_fields() che dovrebbe restituire una matrice di campi del risultato MySQL. Quindi il mio codice qui sotto dovrebbe elencare tutti i campi del risultato MySQL.CodeIgniter lista-campi

$query = $this->db->query("SELECT * from $tablename where REGNO='$keyword' "); 
$fields = $query->list_fields(); 
foreach ($fields as $f) 
{ 
echo $f; 
} 

Funziona bene in Windows, ma non funziona in Linux, ma se il numero di righe sono pari a zero nei risultati, funziona anche in Linux.

Qualche idea di cosa non funziona?

+0

Qual è la vostra richiesta? – Stanley

+0

Il tuo codice è valido, il che significa che il tuo sql è sbagliato o che non restituisce alcun risultato. Suggerisco di mostrare l'intera funzione. – Jeemusu

+0

la mia query è $ query = $ this-> db-> query ("SELECT * da $ tablename dove REGNO = '$ keyword'"); Non che ho aggiunto una riga di query al codice. – Sagar

risposta

0

Cerca di controllare se ci sono errori del tuo mysql sulla tua macchina Linux (di solito si trova in /var/log/mysql/error.log).

Assicurarsi che la versione PHP e MySQL nella macchina Linux sia la stessa della macchina Windows nel caso in cui ci sono dei bug in particolare nella versione.

+0

php non mostra errori nel mio versetto Linux. – Sagar

+0

Hai provato a trovarlo nei tuoi log degli errori di mysql? – SubRed

+0

php non mostra errori nella mia versione di Linux. Ho cambiato il file php.ini ma non è stato effettuato. ma in seguito sono venuto a sapere che ci sono due copie di quel file e le ho modificate entrambe come display_errors = on, quindi ha mostrato alcuni errori. Li ho riparati. ora il codice era perfetto ma non riesco a capire perché lo stesso codice con errori in Linux funzionasse in Windows? – Sagar