WordPress

ajax — Jak wyeksportować niestandardowe dane z bazy danych do pliku Excel

  • 26 kwietnia, 2018
  • 3 min read
ajax — Jak wyeksportować niestandardowe dane z bazy danych do pliku Excel


ajax — Jak wyeksportować niestandardowe dane bazy danych do pliku Excel — WordPress Development Stack Exchange







WordPress Development Stack Exchange to witryna z pytaniami i odpowiedziami dla programistów i administratorów WordPress. Rejestracja zajmuje tylko minutę.

Zarejestruj się, aby dołączyć do tej społeczności

Każdy może zadać pytanie

Każdy może odpowiedzieć

Najlepsze odpowiedzi są głosowane i trafiają na sam szczyt

Spytał

Oglądane
3 tys. razy

Cześć wszystkim. Mam poniższy kod, ale kiedy klikam wygenerowany link, otwiera się nowa strona z wartością 0. Co robię źle?

function list_reservation_to_csv() {

 global $wpdb;
 $table_name = $wpdb->prefix . 'prenotazione_eventi';
 $file="email_csv"; // ?? not defined in original code
 $results = $wpdb->get_results("SELECT * FROM $table_name",ARRAY_A);

 if (empty($results)) {
   return;
 }

 $csv_output=""".implode('";"',array_keys($results[0])).'";'."\n";;

 foreach ($results as $row) {
  $csv_output .= '"'.implode('";"',$row).'";'."\n";
 }
 $csv_output .= "\n";

 $filename = $file."_".date("Y-m-d_H-i",time());
 header("Content-type: application/vnd.ms-excel");
 header("Content-disposition: csv" . date("Y-m-d") . ".csv");
 header( "Content-disposition: filename=".$filename.".csv");
 print $csv_output;
 exit;

 }
add_action('wp_ajax_csv_pull','list_reservation_to_csv');

$ajax_url = admin_url('admin-ajax.php?action=csv_pull');

<a href=" echo $ajax_url; ?>"><button>Scarica csv</button></a>

3

Spróbuj dodać hak nopriv

add_action('wp_ajax_nopriv_csv_pull','list_reservation_to_csv');

Dodaje to możliwość uruchomienia funkcji bez konieczności logowania się jako zarejestrowany użytkownik.

3

Polecam używać wtyczki WPAllExport; jest bardzo konfigurowalny i wykonuje mnóstwo ciężkiej pracy. Używałem go z powodzeniem do zarządzania eksportem danych o zdarzeniach w bardzo złożonych sytuacjach i wiem, że sprawdzi się świetnie. (Nie jestem z tym w żaden sposób powiązany; jestem po prostu szczęśliwym klientem.)

Zwykle staram się dowiedzieć, czy ktoś już próbował rozwiązać mój problem. W środowisku WordPress większość rzeczy została już rozwiązana.

domyślny


Źródło

Warto przeczytać!  To jest kod wtyczki, który ma dodać znaczek/etykietę przed tytułem posta, ale nie rozumiem, dlaczego pokazuje znaczniki kodu w interfejsie użytkownika