I did also creating a different class. but still not working...
but if I place the '<script>console.log("message here");</script>' will work..
索引.html
假设这是一个完整的代码。
<form action="post.php" method="post">
<input type="text" name="name" id="name"/>
<input type="submit" value="submit"/>
</form>
//post.php
<?PHP
if(isset($_POST['name'])){
echo "<script>console.log('".$_POST['name']."');</script>";
}
?>
我的问题是,我无法使用控制台.log提交表单。 但是如果我在重定向中这样做它会起作用..
我类下的函数是...
public function console($data) {
if(is_array($data) || is_object($data)) {
echo("<script>console.log('".json_encode($data)."');</script>");
} else {
echo("<script>console.log('".$data."');</script>");
}
}
它在PHP中不起作用,因为缺少console.log
的字符串参数。
输出应该是
<script>console.log(name);</script>
而不是
<script>console.log("name");</script>
溶液
echo '<script>console.log("'.$_POST['name'].'");</script>';
如果您尝试调试或查看从前端到后端发布的值,则只需使用 chrome 检查器即可。
- 右键单击浏览器中的任意位置,然后单击
inspect element
。 - 单击
network
选项卡。 - 提交具有所需值的表单。
- 在左侧单击
post.php
. - 单击右侧的
headers
并向下滚动以查找Form Data
。 - 您将在此处列出所有帖子变量以及相应的值。
您似乎正在尝试调试$_POST
变量,如果是这种情况,那么请注意,console.log()
是javascript
中使用的前端调试工具,与php
无关。
在php
中检查变量内容的好方法很少。
1. print_r
这将输出一个变量的内容,该变量可以是array
、object
或string
,以人类可读的格式。
echo '<pre>';
print_r($_POST);
echo '</pre>';
die();
2. var_dump
这将输出变量的内容以及额外的相应详细信息,例如 datatypes
和 length
。
var_dump($_POST);
die();