Просто установите форму для отправки сообщения, см. Мой код ниже. Добавьте атрибуты имени в поля ввода и нажмите кнопку «Отправить», чтобы вы могли получить их значения через сообщение http. Затем проверьте, была ли опубликована кнопка отправки, используя isset($_POST['submit'])
. Если установлено, мы присваиваем значения ваших полей ввода переменным, чтобы воссоздать пары пост-ключ / значение URL.
ВАЖНОЕ ПРИМЕЧАНИЕ: Я не охватываю Очистка ваших полей ввода не забудьте прочитать о правильной очистке входных данных в зависимости от того, что вы разрешаете обрабатывать внутренним кодом, чтобы воссоздать ваш URL.
<form action="/https://wa.me/628123456789?text=textInput1%20textInput2%20textInput3%20textInput4" method="post">
<input type="text" name="textInput1" id="textInput1" ><br><br>
<input type="text" name="textInput2" id="textInput2" ><br><br>
<input type="text" name="textInput3" id="textInput3" ><br><br>
<input type="text" name="textInput4" id="textInput4" ><br><br>
<input type="submit" name="submit" value="Submit">
</form>
PHP:
//target url --> https://wa.me/628123456789?text=textInput1%20textInput2%20textInput3%20textInput4
$url = null;
if(isset($_POST['submit'])){
$textInput1 = $_POST['textInput1'];
$textInput2 = $_POST['textInput2'];
$textInput3 = $_POST['textInput3'];
$textInput4 = $_POST['textInput4'];
$url = "https://wa.me/628123456789?text=".$textInput1." ".$textInput2." ".$textInput3." ".$textInput4;
}
Пример ВЫХОДА . Просто выведите URL на странице html, например:
В вашем html просто отобразите переменную $url
. он будет отображаться в вашем коде только тогда, когда он действительно установлен. <?=$url?>
или <?php echo $url;?>
ПРИМЕЧАНИЕ: Если вы пытаетесь поместить ссылку в атрибут действия вашей формы перед отправкой страницы, чтобы значения устанавливались в полях ввода являются частью действия формы, вам нужно получить значения перед отправкой страницы, используя JS или JQuery и получить значения входных данных при изменении или что-то в этом роде, а затем создать URL в js / jquery затем установите атрибут формы action
, используя JS / Jquery.
РЕДАКТИРОВАТЬ: Я хочу, чтобы результат ввода текста был WhatsApp сообщение, поэтому оно будет размещено в URL-ссылке. Я обновил свой пост
Хорошо, чтобы перенаправить пользователя после заполнения формы и очистки ваших входных данных, установите URL-адрес в функции header()
и перенаправьте пользователя на желаемый URL.
* Убедитесь, что вы удалили атрибут action из вашей формы , поскольку вместо этого вы будете перенаправлять, используя функцию php header()
.
if(isset($_POST['submit'])){
// I am using filter_var(FILTER_SANITIZE_STRING) in this example.
$textInput1 = filter_var ( $_POST['textInput1'], FILTER_SANITIZE_STRING);
$textInput2 = filter_var ( $_POST['textInput2'], FILTER_SANITIZE_STRING);
$textInput3 = filter_var ( $_POST['textInput3'], FILTER_SANITIZE_STRING);
$textInput4 = filter_var ( $_POST['textInput4'], FILTER_SANITIZE_STRING);
// make sure to test this url by echoing it out before you run the header redirect.
$url = urlencode("https://wa.me/628123456789?text=".$textInput1." ".$textInput2." ".$textInput3." ".$textInput4);
header("Location: $url");
exit();
}
Использование условного выражения с foreach l oop с заголовком для создания URL-адреса из значений post:
if(isset($_POST['submit'])){
$url = "https://wa.me/628123456789?text="; // declare the core of your url without the post values
$i = 1; // increment
$k = 0; // key value for $inputs
$userinput = ''; // empty variable to hold user inputs for encoding
$num = count($_POST) - 1; // count the number of items in the array to properly format spaces in url string subtract one for submit button
foreach($_POST as $value){ // run a foreach loop on the $_POST
if($value !== "Submit"){ // we remove the submit post value from our array by omitting it using does not equal
$inputs[] = filter_var ( $value, FILTER_SANITIZE_STRING); // create a new array and push values into it
if($i < $num){ // all but last iterations will produce the space
$url .= $input[$k]." ";
}else{ // last iteration will not have a space
$url .= $input[$k];
}
}
}
$url .= urlencode($userinput);
echo $url; // for testing purposes to make sure the string is populating the input values as you have entered them delete this line after testing.
//header("Location: $url"); <-- Uncomment this line to redirect
//exit(); <-- uncomment exit() if you uncomment header() to close after redirect to make sure code stops on this page.
}