0
工作傳統的查詢:轉換爲的sprintf()查詢
$form_id = Caldera_Forms::get_field_data('_entry_id', $form);
$post_id_qry = mysql_query("SELECT `meta_value` FROM wp_cf_form_entry_meta WHERE entry_id = '$form_id' and meta_key = 'ID'");
$post_id = mysql_fetch_array($post_id_qry);
echo $post_id['meta_value'];
現在,當我轉換到一個sprintf的(),使之更加安全,並返回空白。我試過了一個語法檢查,它回來乾淨。有任何想法嗎?
$form_id = Caldera_Forms::get_field_data('_entry_id', $form);
global $wpdb;
$post_id_qry = sprintf("SELECT `meta_value` FROM %s WHERE entry_id = %d and meta_key = 'ID'", $wpdb->prefix . 'cf_form_entry_meta', $form_id);
$post_id = $wpdb->get_results($post_id_qry);
echo $post_id['meta_value'];
嘗試回顯生成的$ post_id_qry並查看它說了什麼。然後在數據庫中運行它,以確保您獲得正確的查詢。 –
你得到正確的查詢,你的代碼是正確的,我認爲。 –
您需要確保您在表格和其他相關from和where子句中的表單id和適當的值中獲得適當的值。 –