Open Database On-Rev Examples?
Pierre Sahores
psahores at free.fr
Tue Jan 26 21:38:22 EST 2010
Hi Rick,
Should this example help ?
> function MySQL_idesk_lib
> tparam1
> ,tparam2,tparam3,tparam4,tparam5,tparam6,tparam7,tparam8,tparam9
> put revOpenDatabase
> ("mysql","localhost","user","db_name","password") into myDatabaseID
> if myDatabaseID is not a number
> then return "There was an error connecting to the SQL database!"
> else
>
> if tparam1 is "unselect_grid" then
>
> put "UPDATE definitions_en_cours SET edit_timeout = '0' WHERE
> abo_email = '" & tparam2 & "' AND editable_grid = '" & tparam3 & "'"
> into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return ""
>
> else if tparam1 is "update_tarif_webstore" then
>
> put "UPDATE abonnes SET abo_tarif_webstore = '" & tparam3 & "'
> WHERE abo_email = '" & tparam2 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return tparam3
>
> else if tparam1 is "tarif_webstore" then
>
> put "SELECT * FROM abonnes WHERE abo_email = '" & tparam2 & "'"
> into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
>
> if dbCursorID is not a number
> then return "There was en error submitting the SELECT statement!"
> else
>
> if revNumberOfRecords(dbCursorID) is "1"
> then return word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"abo_tarif_webstore")
> else return ""
>
> end if
>
> else if tparam1 is "addgridtoedit" then
>
> put "INSERT INTO definitions_en_cours SET abo_email = '" &
> tparam2 & "', editable_grid = '" & tparam3 & "', edit_timeout = '" &
> the seconds & \
> "', abo_directory = '" & tparam4 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the INSERT statement ..."
> else return ""
>
> else if tparam1 is "display_clues" then
>
> put "SELECT * FROM definitions_en_cours WHERE abo_email = '" &
> tparam2 & "' AND editable_grid = '" & tparam3 & "'" into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
>
> return revDatabaseColumnNamed(dbCursorID,"h_grid_clues") & "|" &
> revDatabaseColumnNamed(dbCursorID,"v_grid_clues") & "|" &
> revDatabaseColumnNamed(dbCursorID,"xml_plot")
>
> end if
>
> else if tparam1 is "accepted_clues" then
>
> put "SELECT * FROM definitions_en_cours WHERE abo_email = '" &
> tparam2 & "' AND editable_grid = '" & tparam3 & "'" into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
>
> return revDatabaseColumnNamed(dbCursorID,"h_grid_clues") & "|" &
> revDatabaseColumnNamed(dbCursorID,"v_grid_clues") & "|" & \
> revDatabaseColumnNamed(dbCursorID,"xml_plot") & "|" &
> revDatabaseColumnNamed(dbCursorID,"CCL")
>
> end if
>
> else if tparam1 is "publish_target" then
>
> replace "|" with " " in h_grid_clues
> replace "|" with " " in v_grid_clues
>
> put "INSERT INTO" && tparam2 && "SET abo_email = '" & tparam3 &
> "', editable_grid = '" & tparam4 & \
> "', h_grid_clues = '" & tparam5 & "', v_grid_clues = '" &
> tparam6 & \
> "', xml_plot = '" & tparam7 & "', colab_copy_name = '" & tparam8
> & "', publish_date = '" & the seconds & "'" into sqlStatement
> ### ajouter tarif de mise à prix ###
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the INSERT statement ..."
> else
> put "DELETE FROM definitions_en_cours WHERE abo_email = '" &
> tparam3 & "' AND editable_grid = '" & tparam4 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the DELETE statement ..."
> else return ""
> end if
>
> else if tparam1 is "save_clues" then
>
> put "UPDATE definitions_en_cours SET h_grid_clues = '" & tparam2
> & "', v_grid_clues = '" & tparam3 & \
> "' WHERE abo_email = '" & tparam4 & "' AND editable_grid = '" &
> tparam5 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return "OK"
>
> else if tparam1 is "defs_validation_request" then
>
> put "UPDATE definitions_en_cours SET h_grid_clues = '" & tparam2
> & "', v_grid_clues = '" & tparam3 & "', validation = '" & tparam4 & \
> "', CCL = '" & tparam5 & "', xml_plot = '" & tparam8 & "' WHERE
> abo_email = '" & tparam6 & "' AND editable_grid = '" & tparam7 & "'"
> into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return "OK"
>
> else if tparam1 is "listgriddefstovalidate" then
>
> put "SELECT * FROM definitions_en_cours WHERE abo_email = '" &
> tparam2 & "' AND validation = 'defs_validation_requered'" into
> sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
> repeat until revQueryIsAtEnd(dbCursorID)
> if revDatabaseColumnNamed(dbCursorID,"CCL") is "true"
> then put " >> CCL" into cw_status
> else put " >> WebStore" into cw_status
> put "<input type=hidden name=" & tparam3 && "value=" & word 1
> to -1 of revDatabaseColumnNamed(dbCursorID,"editable_grid") & ">" && \
> "grille" && word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"editable_grid") && \
> cw_status & ", en attente de relecture" & cr after aaa2
> revMoveToNextRecord dbCursorID
> end repeat
> return aaa2
> else return ""
>
> else if tparam1 is "unaccepted_clues" then
>
> put "UPDATE definitions_en_cours SET clues_reject_notes = '" &
> tparam2 & "', edit_timeout = '" & tparam3 & \
> "', validation = '', CCL = '' WHERE abo_email = '" & tparam4 &
> "' AND editable_grid = '" & tparam5 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return "OK"
>
> else if tparam1 is "listgridtoedit" then
>
> put "SELECT * FROM definitions_en_cours WHERE abo_email = '" &
> tparam2 & "' AND (validation IS NULL OR validation = '')" into
> sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
> repeat until revQueryIsAtEnd(dbCursorID)
> if revDatabaseColumnNamed(dbCursorID,"edit_timeout") <
> -604800+the seconds then
> put "DELETE FROM definitions_en_cours WHERE grid_id_num = '" &
> revDatabaseColumnNamed(dbCursorID,"grid_id_num") & "' LIMIT 1" into
> sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> else put "<input type=radio name=grid_editor value=" & word 1
> to -1 of revDatabaseColumnNamed(dbCursorID,"editable_grid") & ">" && \
> " grille" && word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"editable_grid") && \
> " >> réservée jusqu'au :" &&
> to_timeout_date(word 1 of
> revDatabaseColumnNamed(dbCursorID,"edit_timeout")) & cr after aaa
> revMoveToNextRecord dbCursorID
> end repeat
> return aaa
> else return ""
>
> else if tparam1 is "listgridtoccl" then
>
> put "SELECT * FROM grilles_pub_en_ccl WHERE abo_email = '" &
> tparam2 & "'" into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
> repeat until revQueryIsAtEnd(dbCursorID)
> put "grille" && word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"editable_grid") && \
> " >> Creative Commons le :" && to_time_date(word 1 of
> revDatabaseColumnNamed(dbCursorID,"publish_date")) & cr after aaa
> revMoveToNextRecord dbCursorID
> end repeat
> return aaa
> else return ""
>
> else if tparam1 is "listgridtowebstore" then
>
> put "SELECT * FROM grilles_sur_webstore WHERE abo_email = '" &
> tparam2 & "'" into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0" then
> repeat until revQueryIsAtEnd(dbCursorID)
> put "grille" && word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"editable_grid") && \
> " >> WebStore le :" && to_time_date(word 1 of
> revDatabaseColumnNamed(dbCursorID,"publish_date")) & cr after aaa
> revMoveToNextRecord dbCursorID
> end repeat
> return aaa
> else return ""
>
> else if tparam1 is "abo_notes_read" then
>
> put "SELECT * FROM abonnes WHERE abo_email = '" & tparam2 & "'"
> into sqlStatement
> put revQueryDatabase(myDatabaseID,sqlStatement) into dbCursorID
> if dbCursorID is not a number
> then return "error while submitting the SELECT statement ..."
> else if revNumberOfRecords(dbCursorID) is not "0"
> then return word 1 to -1 of
> revDatabaseColumnNamed(dbCursorID,"abo_notes_perso")
> else return ""
>
> else if tparam1 is "abo_notes_update" then
>
> put "UPDATE abonnes SET abo_notes_perso = '" & tparam2 & "' WHERE
> abo_email = '" & tparam3 & "'" into sqlStatement
> revExecuteSQL myDatabaseID,sqlStatement
> if the result is not a number
> then return "error while submitting the UPDATE statement ..."
> else return "OK"
>
> end if
>
> revCloseDatabase(myDatabaseID)
> end if
> end MySQL_idesk_lib
Best,
Le 27 janv. 10 à 02:32, Rick Harrison a écrit :
> Hi there,
>
> Does anyone have a good example of opening a MySQL database on On-Rev
> using a Rev stack on a local machine?
The security model of on-rev allows localhost connections only (and
it's good !) --> your stack need to speak to an irev script --> this
irev script is allowed to speak to the on-rev localhost MySQL db. The
provided working "irev to mySQL" example is just out of my http://www.woooooooords.com
on-rev app.
>
> I've looked at the documentation thus far, and found it to not be
> adequate.
>
> I just keep getting the following message, which I believe is
> telling me
> that it just didn't connect at all in the first place.
>
> "Lost connection MySQL server during query"
>
> I don't know if this a password permissions problem or path problem
> or what.
>
> Suggestions?
>
> Thanks in advance!
>
> Rick
>
>
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
--
Pierre Sahores
mobile : (33) 6 03 95 77 70
www.woooooooords.com
www.sahores-conseil.com
More information about the use-livecode
mailing list