Brian Dunning's FileMaker Custom Functions

mysql_insert ( host ; user ; pw ; database ; sql ; path )

creates the text of an applescript which creates a php script which runs a SQL command into a MySQL database

  Average rating: 3.9 (45 votes) Log in to vote

Jim McNeely   Jim McNeely
Northwest Radiologists
http://nwrads.com

Share on Facebook Share on Twitter

  Sample input:
mysql_insert("10.0.1.4"; "user"; "pw"; "database"; "insert into blappo (test) values('flying pony"); "~/Documents")
  Sample output:
do shell script ("echo \"#!/usr/bin/php -q\" > ~/Documents/push_to_mysql.php; echo \"> ~/Documents/push_to_mysql.php; echo \"\\$link = mysql_connect(\\\"10.0.1.4\\\",\\\"user\\\",\\\"pw\\\") or die(\\\"I'm sorry Dave, I can't do that. Could not connect: \\\".mysql_error());\" >> ~/Documents/push_to_mysql.php; echo \"mysql_select_db(\\\"database\\\") or die(\\\"I'm sorry Dave, I can't do that. Could not select database as database\\\");\" >> ~/Documents/push_to_mysql.php; echo \"\\$query = \\\"insert into blappo (test) values('flying pony')\\\";\" >> ~/Documents/push_to_mysql.php; echo \"\\$result = mysql_query(\\$query) or die(\\\"I'm sorry Dave, I can't do that. Query failed: \\\" . mysql_error());\" >> ~/Documents/push_to_mysql.php; echo \"echo \\\"Success\\\";\" >> ~/Documents/push_to_mysql.php; echo \"?>\" >> ~/Documents/push_to_mysql.php; chmod 777 ~/Documents/push_to_mysql.php; echo `php ~/Documents/push_to_mysql.php`; rm ~/Documents/push_to_mysql.php")

  Function definition: (Copy & paste into FileMaker's Edit Custom Function window)

Obviously, this only works on OS X. PHP is installed by default on Mac OS 10.4 and 10.5, even though it is not enabled by default for Apache. A script that uses this will thus run with no further additions to the machine.

So, you set a field or variable to the results of this

host: the ip address of the MySQL database
user: login user
pw: login pw
database: the database (not table) that you want to connect to
sql: the sql statement you wat to run
path: the path of the php file that will be created.

I use this because I have found ESS to be crappy and until they fix things this really works well.

 

Comments

ilgio   ilgio, milan
Nov 7, 2017
good solution
but I insert in value a quoted phrase.
example:
values('title of book is "matrix"')


it's not work
 

Log in to post comments.

 

Note: these functions are not guaranteed or supported by BrianDunning.com. Please contact the individual developer with any questions or problems.

Under construction. Email me your wish list for improvements.