我想创建保存数据库中信息的php文件。此信息使用POST URL以JSON格式提供。
如果是PhpMyAdmin,我们会按照以下方式完成:
<?php
$con = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_DATABASE);
if(mysqli_connect_errno()){
echo "Error connecting to database";
}else{
$json = file_get_contents('php://input');
$obj = json_decode($json);
$x = $obj->{'x'};
$y = $obj->{'y'};
$z = $obj->{'z'};
$query = "INSERT INTO table_name VALUES('$x', '$y', '$z')";
$result = $con->query($query);
if(!$result){
die("Data base error");
}
}
要运行上面的php文件,我们会获取网址,如果您将数据传递给该网址,则会执行所需的操作。 URL将是这样的,我们可以从任何地方访问它:
&#34; HTTP://****server_name*****/****file_name****.php"
现在,我想使用Google Cloud做同样的事情。我在Cloud SQL中创建了数据库。但是,我没有在哪里创建PHP文件,如何访问此PHP文件中的数据库以及URL是什么。
有人可以帮助我,因为我不熟悉Google Cloud。谢谢!!!
答案 0 :(得分:1)
一种选择是为它编写一个Google App Engine (GAE) PHP应用程序并在GAE上部署/运行它(GAE为您处理所有的基础设施)。更简单的恕我直言,可能免费(取决于您的应用程序使用情况)。
另一种选择是使用Google Compute Engine (GCE) VM并自行管理/运行您的应用(以及所有必需的内容)。
GAE和GCE都是Google Cloud产品。
答案 1 :(得分:0)
您可以毫不费力地在GAE中部署代码。
您只需在项目文件夹中定义app.yaml
并部署到GAE即可。
在app.yaml
中,您可以定义连接详细信息。
runtime: php55
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: index.php
# [START env]
env_variables:
# Replace project, instance, database, user and password with the values obtained
# when configuring your Cloud SQL instance.
MYSQL_DSN: mysql:unix_socket=/cloudsql/INSTANCE_CONNECTION_NAME;dbname=DATABASE
MYSQL_USER: root
MYSQL_PASSWORD: ''
# [END env]
您可以在代码本身上定义连接详细信息(但不要);或者如上所述在app.yaml
中定义,并将代码中的值调用为getenv('MYSQL_PASSWORD');
有关在GAE Standard env here
上使用Google Cloud SQL的文档(我建议你使用Flexible Environment而不是Standard Environment,这不需要你做很多工作。 这是我为getting started on GAE Flexible env with Php)
上的会话所做的一个小幻灯片集