Berikut adalah contoh program PHP untuk memproses respons dari Google Form. Google Forms dapat dikonfigurasi untuk mengirimkan respons ke Google Sheets, dan Anda dapat menggunakan Google Sheets API untuk mengambil data tersebut. Namun, jika Anda ingin mengirimkan data langsung ke server Anda, Anda dapat menggunakan Google Apps Script untuk mengirimkan data ke endpoint PHP Anda.
### Langkah 1: Buat Google Form
1. Buat Google Form seperti biasa.
2. Buka tab "Responses" dan klik ikon Google Sheets untuk menyimpan respons ke dalam spreadsheet.
### Langkah 2: Buat Google Apps Script untuk Mengirim Data ke Server PHP
1. Buka Google Sheets yang terkait dengan Google Form.
2. Klik `Extensions` > `Apps Script`.
3. Buat script berikut untuk mengirim data ke server PHP Anda:
```javascript
var data = JSON.parse(e.postData.contents);
var url = 'https://yourserver.com/process_form.php'; // Ganti dengan URL server PHP Anda
var options = {
'method' : 'post',
'contentType': 'application/json',
'payload' : JSON.stringify(data)
};
UrlFetchApp.fetch(url, options);
}
```
4. Deploy script sebagai Web App:
- Klik `Deploy` > `New deployment`.
- Pilih `Web app`.
- Set `Execute as` ke `Me` dan `Who has access` ke `Anyone`.
- Klik `Deploy`.
5. Salve URL Web App yang diberikan.
### Langkah 3: Buat PHP Script untuk Menerima Data
Buat file `process_form.php` di server Anda dengan kode berikut:
```php
// process_form.php
// Mendapatkan data yang dikirim dari Google Apps Script
$data = json_decode(file_get_contents('php://input'), true);
if ($data) {
// Proses data
$nama = $data['nama']; // Ganti dengan nama field yang sesuai
$email = $data['email']; // Ganti dengan nama field yang sesuai
$komentar = $data['komentar']; // Ganti dengan nama field yang sesuai
// Contoh: Simpan ke database atau lakukan tindakan lain
// $db = new mysqli('localhost', 'user', 'password', 'database');
// $stmt = $db->prepare("INSERT INTO responses (nama, email, komentar) VALUES (?, ?, ?)");
// $stmt->bind_param("sss", $nama, $email, $komentar);
// $stmt->execute();
// $stmt->close();
// $db->close();
// Berikan respons ke Google Apps Script
echo json_encode(['status' => 'success', 'message' => 'Data received']);
} else {
echo json_encode(['status' => 'error', 'message' => 'No data received']);
}
?>
```
### Langkah 4: Konfigurasi Google Form untuk Mengirim Data ke Apps Script
1. Buka Google Form.
2. Klik ikon "Responses" dan pilih "More options" (tiga titik).
3. Pilih "Get email notifications for new responses" atau "Get pre-fill link".
4. Gunakan URL Web App dari Google Apps Script sebagai endpoint untuk mengirim data.
### Catatan:
- Pastikan server PHP Anda dapat diakses dari internet.
- Sesuaikan field `nama`, `email`, dan `komentar` dengan field yang ada di Google Form Anda.
- Anda dapat menambahkan validasi dan keamanan lebih lanjut sesuai kebutuhan.
Dengan cara ini, setiap kali ada respons baru di Google Form, data akan dikirim ke server PHP Anda untuk diproses lebih lanjut.
0 komentar :
Speak up your mind
Tell us what you're thinking... !