【发布时间】:2017-12-11 10:16:49
【问题描述】:
我最近找到了一个解决方案,用这个例子在 python 和 php 脚本之间进行通信:
python 客户端:
import requests
userdata = {"firstname": "Smith", "lastname": "Ayasaki", "password": "123456"}
resp = requests.post('http://localhost/api.php', data = userdata)
api.php 脚本:
<?php
$firstname = htmlspecialchars($_POST["firstname"]);
$lastname = htmlspecialchars($_POST["lastname"]);
$password = htmlspecialchars($_POST["password"]);
echo "FIRSTNAME: $firstname LASTNAME: $lastname PW: $password";
?>
但它根本不起作用,我使用 apache2 端口:80 并且我在 localhost 中工作,所以也许这不起作用是正常的,因为 python 客户端发送到 api.php 但我看不到结果 ...
所以我找到的解决方案是在数据库中发送$firstname,$lastname,$password,检查是否真的信息正在发送,有新的api.php:
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=api;charset=utf8', 'root', '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$firstname = htmlspecialchars($_POST["firstname"]);
$lastname = htmlspecialchars($_POST["lastname"]);
$password = htmlspecialchars($_POST["password"]);
$req = $bdd->prepare( '
INSERT INTO reception(nom,prenom,identifiant)
VALUES (:lastname,:firstname,:password);
' );
$req->execute(array('lastname' => $lastname, 'firstname' => $firstname,'password' => $password));
?>
请帮助解决这个问题,我不是 http 请求专家!对不起我的英语......
【问题讨论】:
标签: php python-3.x python-2.7 apache httprequest