Contact Form 7 Form File Upload to FTP Servers Based on Dropdown Selection
$10-30 USD
En curso
Publicado hace casi 7 años
$10-30 USD
Pagado a la entrega
I have a simple request form setup in Contact Form 7 with a dropdown selection of two facilities. There are two anonymous server addresses to upload files to based on which dropdown facility is selected. I have successfully added the following code to the [login to view URL] file, tested it and it works correctly for one of the dropdown selections. My problem is, I cannot get the code right for the other dropdown selection to upload and work correctly.
The setup is the form part goes to a distributed email address and the file gets uploaded to the Anaheim or Orange FTP server.
ftp**.[login to view URL] – Orange Facility ftp**.[login to view URL] – Anaheim Facility
This only works for the Orange Facility. Now I can't seem to get the logic right for the 2nd code. I tried doing two separate functions (FacilityA and FacilityB) but I am stuck on how to take the "SelectAFacility" name and split it into 2 functions or write a conditional statement.
Here is the code for the Contact Form 7:
<label> Your Name (required)
[text* your-name] </label>
<label> Your Email (required)
[email* your-email] </label>
<label> Company
[text your-company] </label>
<label> Select A Facility </label>
[select SelectAFacility "Anaheim|ftpuploadanaheim(at)[login to view URL] Orange|ftpuploadorange(at)[login to view URL]"]
<label>Upload File
[file your-file filetypes:pdf|txt|doc|docx|xls|xlsx|ppt|pptx|zip|tar|tgz|rar]
</label>
[submit "Send"]
______________________________________________________________________________________
Based on the dropdown selection, I tried to add a conditional statement to achieve this but it is not working and I need it done today. Here is the code with the conditional statement:
function log_cf7($WPCF7_ContactForm)
{
$submission = WPCF7_Submission::get_instance();
$data = $submission->get_posted_data();
$uploadedFiles = $submission->uploaded_files();
$location = $data['SelectAFacility'];
if (isset($uploadedFiles) && isset($uploadedFiles['your-file'])) {
if ($location == 'Anaheim') {
$ftp_server = "ftp**.[login to view URL]";
$ftp_username = "username A";
$ftp_userpass = "password B";
} elseif ($location == 'Orange') {
$ftp_server = "ftp**.[login to view URL]";
$ftp_username = "username B";
$ftp_userpass = "password B";
} else {
// do something
exit();
}
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
$fileToUpload = $uploadedFiles['your-file'];
$remotefile = $_FILES['your-file']['name'];
if (ftp_put($ftp_conn, $remotefile, $fileToUpload, FTP_ASCII)) {
//echo "Successfully uploaded $remotefile.";
} else {
// echo "Error uploading $fileToUpload.";
}
// close connection
ftp_close($ftp_conn);
}
}