使用php的Google App引擎不支持mysqli [英] mysqli not supported in google app engine with php

查看:61
本文介绍了使用php的Google App引擎不支持mysqli的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在Google App Engine上设置脚本,而mysqli对php的支持存在问题.运行它时,我收到消息

I am trying to set my script on google app engine, and I have problem with mysqli support for php. When I run it, I get message

致命错误:在

我尝试了 phpinfo(),但是那里没有mysqli扩展

I tried phpinfo() but there is no mysqli extenstion there

然后,我尝试在此处配置php.ini,如 https://cloud.google.com/appengine/docs/php/config/php_ini

Then I tried configuring php.ini like here https://cloud.google.com/appengine/docs/php/config/php_ini

我添加了

extension=php_mysqli.dll
extension=mysqli.so
extension=mysql.so

并按说明将其上传到基本目录中,但仍然没有成功,我该如何解决.我可以看到PDO,但是我需要更改脚本中的所有内容,这会花费太多时间.

and uploaded it in base directory as explaned but still no success, how can I fix it. I can see PDO, but I would need to change everything in script and it takes too much time.

app.yaml列在下面

app.yaml is listed below

runtime: php55
api_version: 1

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/datahouse;dbname=db
  MYSQL_USER: root
  MYSQL_PASSWORD: 'pass'

handlers:
- url: /.*
  script: test.php

我正在以此运行应用程序

I am running the app with this

dev_appserver.py --php_executable_path=/usr/bin/php-cgi $PWD

推荐答案

我通过执行以下操作使之起作用:

I made it work by doing this:

$ instance_name ="/cloudsql/YOUR_PROJECT_ID_WITHOUT_DB_NAME";

$instance_name = "/cloudsql/YOUR_PROJECT_ID_WITHOUT_DB_NAME";

$ mysqli = mysqli_connect(null,YOUR_DB_USER,YOUR_DB_PASS,'DB_NAME',null,$ instance_name);

$mysqli = mysqli_connect(null, YOUR_DB_USER ,YOUR_DB_PASS, 'DB_NAME',null,$instance_name);

在上面的示例中:

MYSQL_DSN:mysql:unix_socket =/cloudsql/datahouse; dbname = mydatabase

MYSQL_DSN: mysql:unix_socket=/cloudsql/datahouse;dbname=mydatabase

MYSQL_USER:根

MYSQL_USER: root

MYSQL_PASSWORD:"mypassword"

MYSQL_PASSWORD: 'mypassword'

仅用于:

$ instance_name ="/cloudsql/datahouse";

$instance_name = "/cloudsql/datahouse";

$ mysqli = mysqli_connect(null,'root','mypassword','DB_NAME',null,$ instance_name);

$mysqli = mysqli_connect(null, 'root' ,'mypassword', 'DB_NAME',null,$instance_name);

希望有帮助

这篇关于使用php的Google App引擎不支持mysqli的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆