2013-02-10 5 views
5

Sto cercando di eseguire un mysql_fetch_array tramite Wordpress. Ho scoperto il modo migliore per farlo è qui spiegato: http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results

Ecco la mia domanda qui sotto:

$sql = "SELECT * FROM wp_reminders WHERE reminder LIKE '$today'"; 
$result = $wpdb->get_results($sql) or die(mysql_error()); 

    foreach($result as $results) { 

     echo $result->name; 
    } 

È possibile che questo non è tirando in alcun risultato a tutti, anche se i dati non esiste. Qualche idea su cosa sto facendo male?

+0

Cosa significa "$ oggi"? – Rob

+0

Non sai cosa sia '$ today', ma potresti mancare un carattere jolly'% 'nel tuo' LIKE' clausule? – jOpacic

+0

$ today = date ("m/d/Y"); – danyo

risposta

13

il problema è stato il seguente:

echo $result->name; 

dovrebbe essere:

echo $results->name; 
+11

O meglio, i due nomi di variabili nell'istruzione foreach devono essere invertiti. –

4

Il ciclo 'foreach' e l'istruzione var iniziale per 'risultato = $ wpdb -> ...' dovrebbe essere risultati

$sql = "SELECT * FROM wp_reminders WHERE reminder LIKE '$today'"; 
$results = $wpdb->get_results($sql) or die(mysql_error()); 

    foreach($results as $result) { 

     echo $result->name; 

    } 

La logica alla base di questo è che si sarebbe raccolta di tutti i risultati dai get_results() e poi scorrendo come tali: (leggere ad alta voce - la logica viene applicata)

foreach ($ofTheMassiveList as $aSingleResult) { 

     echo $aSingleResult->name; 

}