php формы возвращают данные обратно на .html страницу

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

У меня есть страница php, которая принимает данные постов, помещает их в массив, передает массив в API и получает успех / ошибку от API.

У меня есть HTML-страница с формой. Когда я отправляю форму, она передает данные формы в файл php.

Все, что я хотел бы сделать, это вернуть переменную сообщения об успехе / ошибке обратно в файл html. Мне все равно, если страница перезагрузится, я не хочу каких-либо необычных функций, я просто пытаюсь сделать простой тест, но забыл свой php 101. любая помощь или направление к ссылкам будет оценено.

Html:

<div style="width: 400px; margin: 150px auto;">

<form action="api3.php" method="post">
<input type="text" placeholder="First Name" name="fname"><br><br>

<input type="text" placeholder="Last Name" name="lname"><br><br>

<input type="email" placeholder="Email" name="email"><br><br>

<input type="text" placeholder="Phone" name="phone"><br><br>

<select name="life"><br><br>
<option value="customer">Customer</option>
<option value="lead">Lead</option>
<option value="subscriber">Subsciber</option>
<option value="opportunity">Opportunity</option>
</select><br><br>

<input type="text" placeholder="Pizza" name="pizza"><br><br>

<input type="submit" value="Submit">

</form>

</div>

PHP:

<?php

$arr = array(
'properties' => array (
array(
'property' => 'email',
'value' => $_POST["email"]
),
array(
'property' => 'firstname',
'value' => $_POST["fname"]
),
array(
'property' => 'lastname',
'value' => $_POST["lname"]
),
array(
'property' => 'phone',
'value' => $_POST["phone"]
),
array(
"property" => "lifecyclestage",
"value" => $_POST["life"]
),
array(
"property" => "pizza",
"value" => $_POST["pizza"]
)
)
);

$post_json = json_encode($arr);
$hapikey = "/";
$endpoint1 = 'http://api.hubapi.com/contacts/v1/contact/createOrUpdate/email/' . $arr['properties'][0]['value'] . '/?hapikey=' . $hapikey;
$endpoint2 = 'http://api.hubapi.com/contacts/v1/lists/5/add?hapikey=' . $hapikey;
$ch = @curl_init();
@curl_setopt($ch, CURLOPT_POST, true);
@curl_setopt($ch, CURLOPT_POSTFIELDS, $post_json);
@curl_setopt($ch, CURLOPT_URL, $endpoint1);
@curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
@curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response1 = @curl_exec($ch);
$status_code1 = @curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curl_errors1 = curl_error($ch);

if ($status_code1 == 200) {

$vid = json_decode($response1, true);

echo $vid['vid'] . '<br><br><br>';

$arr2 = array(
'vids' => array (
$vid['vid']
)
);

$vids_push = json_encode($arr2);

@curl_setopt($ch, CURLOPT_POSTFIELDS, $vids_push);
@curl_setopt($ch, CURLOPT_URL, $endpoint2);
$response2 = @curl_exec($ch);
$status_code2 = @curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curl_errors2 = curl_error($ch);
@curl_close($ch);

return $response2;
}

?>

РЕДАКТИРОВАТЬ: Я изменил свою страницу form.html на .php. Я не хотел делиться своим кодом, потому что он всегда кажется сложным, но все, что я хочу, это вернуть $ response2 обратно на мою страницу form.php.

-1

Решение

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

Теперь, например, у меня есть страница с формой на www.example.com/work.php

//Your form here
<form>   </form>

отправьте форму на другую страницу .php, которая обрабатывает ввод и получает ответ от API.
в конце страницы у вас есть два способа вернуть данные.

  1. используя GET
    закодируйте свои переменные в URL и перенаправьте страницу на work.php

    $ url = «www.example.com/work.php» + «? status = error&сообщение = это сообщение «;
    header (‘Location:’. $ url);

Теперь в файле work.php вам нужно использовать эти параметры, которые мы закодировали с помощью URL, используя

echo $_GET['status'];
echo $_GET['message'];
// rest of the page will be same.
  1. используя сессию

хранить переменные в сессии и перенаправлять в work.php без параметров

$_SESSION['status'] = "error";
$_SESSION['message'] = "This is message";
$url = "www.example.com/work.php";
header('Location: '.$url);

Снова в файле work.php отображение данных из сессии и остального кода будет таким же.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector