有没有办法在json字典中包含php变量?

时间:2019-09-04 00:17:40

标签: php html json

我正在创建一个用户填写的表单,并且使用curl将信息存储在另一个站点上。通过提供一个硬编码的字典,我已经开始工作了。但是,当我尝试使用表单中收集的变量时,它们只是打印出变量名而不是值。

我相信这是由于我拥有多层报价,但我不知道该怎么做才能更改它。我已经尝试过将引号转义,然后取消引号,但我认为我要么是1)做得不正确,要么是2)处理错误的方式。

这是我的HTML表单的一部分:

<form method="POST" name="email_form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" enctype="multipart/form-data">

<div class="row">
  <div class="col-25">
    <label for="subject"><span class="error">* <?php echo $nameErr;?></span> Subject <i class="glyphicon glyphicon-align-center"></i></label>
  </div>
  <div class="col-75">
    <textarea id="subject" name="name" placeholder="Please input your name" style="height:46px"><?php echo $subject;?></textarea>
  </div>
</div>

我确认输入后:

$name = $_POST["name"];

但是,当我尝试如下使用curl时,我遇到了问题:

exec('curl -u name:pwd -X POST -H "Content-Type: application/json" -d \'{"type": "page", "title": "Hello World", "ancestors": [{"id":1234}], "space": {"key": "KEY"},"body": {"storage": {"value": "<h2>Your Name: </h2><p>$name</p>", "representation": "storage"}}, "version": {"number": 1}}\' https://example.com');

我的问题是,curl打印的内容是“ $ name”,我希望它打印“ Bob”或“ Suzy”或用户输入的任何名称。

0 个答案:

没有答案