php表单将数据返回到.html页面
这应该是一个非常简单的问题,但我无法找到一个简单的答案。我找到的所有问题都与相同的jquery有关。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页面。
首先你的形式,并希望得到的响应应该与.PHP
现在,例如网页,我在www.example.com/work.php有形式的页面
//Your form here
<form> </form>
在处理输入并从API获取响应的其他.php页面上提交表单。 在页面的末尾有两种方法可以返回数据。
-
使用GET 编码您的变量url和重定向页面work.php
$ URL = “www.example.com/work.php” +“?状态=错误&消息=此是消息“; header('Location:'。$ url);
现在在work.php文件则需要使用利用这些参数,我们用URL编码
echo $_GET['status'];
echo $_GET['message'];
// rest of the page will be same.
- 使用会话
店变量在会话中并重定向到不带参数的work.php
$_SESSION['status'] = "error";
$_SESSION['message'] = "This is message";
$url = "www.example.com/work.php";
header('Location: '.$url);
再次在work.php文件中显示来自会话和其余代码的数据将是相同的。
谢谢你清楚简单的回答。我无法用会话做任何事情,但我可以使用GET方法在URL中看到响应,这是我之后的所有事情。再次感谢。 – JSum
欢迎和祝你好运(y) –
请把你放在里面你试过这个东西 – Pritamkumar