Cloud World

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Saturday, 19 October 2013

Google App Engine for PHP with PhpStorm

Posted on 09:00 by Unknown

Today’s guest post comes from Maarten Balliauw, Technical Evangelist at JetBrains, the vendor of smart developer tools such as IntelliJ IDEA, PyCharm, PhpStorm, Android Studio and many more.



At JetBrains we are building tools that aim to enhance developers’ productivity by automating routine tasks and helping you concentrate on coding.



Our IDE for PHP, PhpStorm, provides seamless integration with Google App Engine for PHP — allowing you to locally develop, debug and deploy your PHP applications on Google App Engine. When testing your application locally, we also support full emulation of App Engine services through the App Engine Development server.



The following video shows how to get started with Google App Engine for PHP in PhpStorm. We also have a comprehensive tutorial which covers Google App Engine with PhpStorm in detail.









When creating Google App Engine applications in PHP using PhpStorm, chances are that you’ll also be using Google Cloud SQL to store data. For these next steps, we will have assumed you have created a Cloud SQL instance from the Google Cloud Console.



PhpStorm, as well as IntelliJ IDEA and PyCharm, provides database management tools (see the right-hand side of the IDE or hit Ctrl+Alt+A (Cmd+Alt+A on Mac) and search for “Database”). You can use these built-in tools to create new tables, run arbitrary SQL commands and insert, update and delete data.



Opening the database pane, you can create a new connection or Data Source. You’ll have to specify the JDBC database driver to be used to connect to our database. Since Google Cloud SQL supports native MySQL connections, we can use the standard MySQL connector and enter connection details.




Connecting to a Google Cloud SQL database using PhpStorm database tools

The JDBC driver to use is com.mysql.jdbc.Driver, the database URL will be jdbc:mysql://:3306/ where cloudsql_ip_address is the IP address of our Google Cloud SQL instance, and database_name is the name of the specific database on that instance to which you want to connect.



As for database credentials, you can create a root user password through the Google Cloud Console or manually create a new user through PhpStorm using the following SQL statement:





CREATE USER 'user_here'@'%' IDENTIFIED BY 'password_here';
GRANT ALL PRIVILEGES ON *.* TO 'user_here'@'%' WITH GRANT OPTION;



You can now make use of these new credentials to connect to Google Cloud SQL and do things like create tables.






Creating a table in Google Cloud SQL using PhpStorm database tools

Now, from our PHP code, you can easily create a new connection to our Google Cloud SQL instance using PDO:




Connecting to a Google Cloud SQL database using PDO

Give it a try (a trial version is available for PhpStorm) and let us know your thoughts through the comments below.



-Contributed by Maarten Balliauw, Technical Evangelist, JetBrains
Email ThisBlogThis!Share to XShare to Facebook
Posted in app engine, cloud sql | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Bridging Mobile Backend as a Service to Enterprise Systems with Google App Engine and Kinvey
    The following post was contributed by Ivan Stoyanov , VP of Engineering for Kinvey, a mobile Backend as a Service provider and Google Cloud ...
  • Tutorial: Adding a cloud backend to your application with Android Studio
    Android Studio lets you easily add a cloud backend to your application, right from your IDE. A backend allows you to implement functionality...
  • 2013 Year in review: topping 100,000 requests-per-second
    2013 was a busy year for Google Cloud Platform. Watch this space: each day, a different Googler who works on Cloud Platform will be sharing ...
  • Easy Performance Profiling with Appstats
    Since App Engine debuted 2 years ago, we’ve written extensively about best practices for writing scalable apps on App Engine. We make writ...
  • TweetDeck and Google App Engine: A Match Made in the Cloud
    I'm Reza and work in London, UK for a startup called TweetDeck . Our vision is to develop the best tools to manage and filter real time ...
  • Scaling with the Kindle Fire
    Today’s blog post comes to us from Greg Bayer of Pulse , a popular news reading application for iPhone, iPad and Android devices. Pulse has ...
  • Who's at Google I/O: Mojo Helpdesk
    This post is part of Who's at Google I/O , a series of guest blog posts written by developers who are appearing in the Developer Sandbox...
  • A Day in the Cloud, new articles on scaling, and fresh open source projects for App Engine
    The latest release of Python SDK 1.2.3, which introduced the Task Queue API and integrated support for Django 1.0, may have received a lot ...
  • SendGrid gives App Engine developers a simple way of sending transactional email
    Today’s guest post is from Adam DuVander, Developer Communications Director at SendGrid. SendGrid is a cloud-based email service that deliv...
  • Qubole helps you run Hadoop on Google Compute Engine
    This guest post comes form Praveen Seluka, Software Engineer at Qubole, a leading provider of Hadoop-as-a-service.  Qubole is a leading pr...

Categories

  • 1.1.2
  • agile
  • android
  • Announcements
  • api
  • app engine
  • appengine
  • batch
  • bicycle
  • bigquery
  • canoe
  • casestudy
  • cloud
  • Cloud Datastore
  • cloud endpoints
  • cloud sql
  • cloud storage
  • cloud-storage
  • community
  • Compute Engine
  • conferences
  • customer
  • datastore
  • delete
  • developer days
  • developer-insights
  • devfests
  • django
  • email
  • entity group
  • events
  • getting started
  • google
  • googlenew
  • gps
  • green
  • Guest Blog
  • hadoop
  • html5
  • index
  • io2010
  • IO2013
  • java
  • kaazing
  • location
  • mapreduce
  • norex
  • open source
  • partner
  • payment
  • paypal
  • pipeline
  • put
  • python
  • rental
  • research project
  • solutions
  • support
  • sustainability
  • taskqueue
  • technical
  • toolkit
  • twilio
  • video
  • websockets
  • workflows

Blog Archive

  • ▼  2013 (143)
    • ►  December (33)
    • ►  November (15)
    • ▼  October (17)
      • Compute Engine Persistent Disk Backups using Snaps...
      • Google Cloud SQL is now accessible from just about...
      • Learn about building global applications on Google...
      • Five Options for Cloud to Cloud Data Migration
      • Google App Engine for PHP with PhpStorm
      • Total Eclipse of the Apps Script
      • App Engine 1.8.6 released
      • R/GA shares why digital agencies are turning to th...
      • Unlocking Big Data
      • The new Cloud Console: designed for developers
      • New features and tutorials for Compute Engine Load...
      • Speed up iOS development with Google Cloud Platform
      • Google App Engine PHP Runtime now available to eve...
      • How to get auto scaling of Google Compute Engine "...
      • The Cloud Platform Support team is here to help
      • One platform, many uses
      • Jump-start your data pipelining into Google BigQuery
    • ►  September (13)
    • ►  August (4)
    • ►  July (15)
    • ►  June (12)
    • ►  May (15)
    • ►  April (4)
    • ►  March (4)
    • ►  February (9)
    • ►  January (2)
  • ►  2012 (43)
    • ►  December (2)
    • ►  November (2)
    • ►  October (8)
    • ►  September (2)
    • ►  August (3)
    • ►  July (4)
    • ►  June (2)
    • ►  May (3)
    • ►  April (4)
    • ►  March (5)
    • ►  February (3)
    • ►  January (5)
  • ►  2011 (46)
    • ►  December (3)
    • ►  November (4)
    • ►  October (4)
    • ►  September (5)
    • ►  August (3)
    • ►  July (4)
    • ►  June (3)
    • ►  May (8)
    • ►  April (2)
    • ►  March (5)
    • ►  February (3)
    • ►  January (2)
  • ►  2010 (38)
    • ►  December (2)
    • ►  October (2)
    • ►  September (1)
    • ►  August (5)
    • ►  July (5)
    • ►  June (6)
    • ►  May (3)
    • ►  April (5)
    • ►  March (5)
    • ►  February (2)
    • ►  January (2)
  • ►  2009 (47)
    • ►  December (4)
    • ►  November (3)
    • ►  October (6)
    • ►  September (5)
    • ►  August (3)
    • ►  July (3)
    • ►  June (4)
    • ►  May (3)
    • ►  April (5)
    • ►  March (3)
    • ►  February (7)
    • ►  January (1)
  • ►  2008 (46)
    • ►  December (4)
    • ►  November (3)
    • ►  October (10)
    • ►  September (5)
    • ►  August (6)
    • ►  July (4)
    • ►  June (2)
    • ►  May (5)
    • ►  April (7)
Powered by Blogger.

About Me

Unknown
View my complete profile