Могу ли я использовать jQuery для добавления кода в документ php? - PullRequest
1 голос
/ 21 января 2020

Я работаю над сайтом, где у вас есть форма, в которую можно добавить несколько человек, вы начинаете с одного человека, чтобы подписаться, и можете добавлять больше, если хотите.

Я написал документ PHP это сделано для 1 человека, но мне нравится его менять, если я использую несколько человек.

Можно ли изменить мой mail.php с использованием некоторого кода jQuery?

СЦЕНАРИЙ

var x = 0;

$('#addPlayer').on('click', function() {
            x++;
        });

if(x > 0) {
    for(i = x; i>=0; i--) {
        // add extra persoon to mail.php
    }
}
else {
    mail.php
}

if (i == 0) {
    use new mail.php
}

Каждый раз, когда добавляется новый игрок (нажмите на кнопку), его счетчик.

mail. php

<?php
$to = "example@mail.com";
$from = $_POST['email'];
$name = $_POST['name'];
$voornaam = $_POST['first_name'];
$geboortedatum = $_POST['date'];
$telefoon = $_POST['phone_number'];
$type = $_POST['r0'];
$adres = $_POST['address'];
$postcode = $_POST['postcode'];
$huisnr = $_POST['number'];
$gemeente = $_POST['municipality'];
$prijs = $_POST['price'];

//getting the new inputs for a new player
//extra persoon
$naam1 = $_POST['spname1'];
$voornaam1 =$_POST['Firstname1'];
$mail1 = $_POST['spemail1'];
$geboortedatum1 = $_POST['datepicker1'];
$telefoon1 = $_POST['sptele1'];
$type1 = $_POST['r1'];



//getting the new inputs for a new player
$naam2 = $_POST['spname2'];
$voornaam2 =$_POST['Firstname2'];
$mail2 = $_POST['spemail2'];
$geboortedatum2 = $_POST['datepicker2'];
$telefoon2 = $_POST['sptele2'];
$type2 = $_POST['r2'];

$myArray = array( "nul", "volwassene", "student", "kind met 8 lessen", "kind zonder 8 lessen");
//array that selects the right value for type

$bericht = "Beste " . $voornaam . " " . $name . ",\n" . "We hebben uw inschrijving goed ontvangen. \nHier hebt u nog eens de inschrijving. Als er iets niet correct zou zijn laat het ons weten (info@kltc.be). \n\r\n\r" . "NAAM: " . $voornaam ." ". $name . "\n E-MAIL: " . $from . "\n GEBOORTEDATUM: " . $geboortedatum . "\n TELEFOON: " . $telefoon . "\n TYPE: " . $myArray[$type] . "\n ADRES: " . $adres . "\n POSTCODE: " . $postcode . "\n HUISNR: " . $huisnr . "\n GEMEENTE: " . $gemeente . "\n PRIJS: " . $prijs . "\n\r\n\r Gelieve dit bedrag te storten op het rekeningnummer: IBAN: BE59 0017 9225 2226 van KLTC HERENT vzw of BIC: GEBABEBB \n\r met de vermelding : 'lidmaatschap 2019 '-' X aantal personen / gezin / lessen, ... enz.' \n Uw inschrijving is pas definitief als zowel het lidgeld betaald is en we het inschrijvingsformulier ontvangen hebben. \n !Deelname aan tennislessen kan alleen, nadat je het lesgeld betaald hebt. \n\r\n\r Wij hier bij KLTC HERENT heten u alvast welkom! \n\r\n\r !Dit is mogelijk gemaakt door Tobias Van Rickstal!";

$subject = "Inschrijving";
$subject2 = "Inschrijving bij KLTC";

$headers = "From: $from";
$headers2 = "From: $to";

mail($to,$subject,$bericht,$headers) or die("Error!");

            echo "Bedankt," . $voornaam . $myArray[$type];
?> 

Должен ли я использовать дополнительное сообщение ( bericht )? или как мне сделать это как можно лучше?

У меня также были некоторые проблемы с рассылкой, я хотел бы отправить подтверждение тому, кто заполнил форму. так что один получателю и один отправителю, но у меня были некоторые проблемы с этим. Либо я получаю только один в своем почтовом ящике, либо получаю пустое письмо (никакой информации о моих входах не было опубликовано в почте.

Ответы [ 2 ]

4 голосов
/ 21 января 2020

PHP - это язык на стороне сервера, который запускается на веб-сервере.

jQuery / javascript - это язык на стороне клиента, который запускается на компьютере каждого пользователя в браузере.

Подумайте на секунду , где эти два компьютера - они могут быть на расстоянии в несколько миль.

Чтобы jQuery мог общаться с PHP файлами, вы должны либо использовать ФОРМУ (который отправляет введенные пользователем данные в файл веб-сервера PHP) или используйте AJAX.

Метод FORM очень старый и может только отправлять данные. Метод AJAX намного новее и может отправлять и получать. AJAX - это то, как мы общаемся с сервером и получаем ответ (например, ищем что-то в базе данных, например имя пользователя / пароль) и обновляем страницу, не обновляя всю страницу. (формы всегда покидают текущую страницу и go для файла обработки (PHP).)

Mail. php будет работать при получении данных из формы HTML, заполнив данные переменными и отправив электронное письмо. Все данные должны быть заполнены пользователем в форме HTML. Когда пользователь нажимает кнопку SEND (или как вы называете кнопку submit), предоставленные пользователем данные будут отправлены в внутренний файл PHP, подключены к правильным переменным PHP и только после этого будет генерироваться PHP электронное письмо и отправьте его.

Итак ... добавление нового пользователя в вашу почту. php Файл выполняется вручную (пользователем, снова заполнившим форму) и нажимает кнопку Отправить. Форма стирается после каждой отправки.

См. Ниже простое введение в формы и AJAX:

HTML Формы

AJAX Основы

jQuery AJAX Введение - w3schools

0 голосов
/ 22 января 2020

Перечитывая ваш вопрос, я думаю, что вы могли бы извлечь выгоду, просмотрев эти другие ответы StackOverflow, в которых описано, как использовать jQuery AJAX для отправки данных в внутренний файл PHP.

Если мы используем формы или AJAX или оба?
Нужен ли мне элемент формы при использовании запроса AJAX?

Пример, очень похожий на то, что вы делаете:
Как создать Ajax контактную форму

Если вы позже захотите сохранить полученную информацию (базу данных):
обновить список с jquery & ajax

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...