ajax.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. if ( isset( $_GET["venue"] ) && !empty( $_GET["venue"] ) ) {
  3. parse_data();
  4. }
  5. function test_function()
  6. {
  7. $return = $_GET;
  8. //Do what you need to do with the info. The following are some examples.
  9. //if ($return["favorite_beverage"] == ""){
  10. // $return["favorite_beverage"] = "Coke";
  11. //}
  12. $return["favorite_restaurant"] = "McDonald's";
  13. $return["json"] = json_encode($return);
  14. echo $_GET['callback'] . '(' . json_encode($return ). ')';
  15. }
  16. function parse_data()
  17. {
  18. $return = [];
  19. $data = $_GET;
  20. if ( empty( $data ) ) {
  21. test_function();
  22. }
  23. $venue = $data['venue'];
  24. $races = $data['races'];
  25. if ( empty( $venue ) || empty( $races ) ) {
  26. test_function();
  27. }
  28. require_once 'dbconfig.php';
  29. $dsn = "pgsql:host=$host;port=5432;dbname=$db;user=$username;password=$password";
  30. try{
  31. // create a PostgreSQL database connection
  32. $conn = new PDO( $dsn );
  33. // display a message if connected to the PostgreSQL successfully
  34. if( !$conn ){
  35. test_function();
  36. }
  37. $query_string = "UPDATE race_program
  38. SET torn = TRUE
  39. WHERE race_date = %s
  40. AND venue = %s
  41. AND start_time = %s;";
  42. for ($i = 0; $i < count( $races ); $i++ ) {
  43. $datetime = strtotime( $races[$i]['localtime'] );
  44. $date = date( 'Y-m-d', $datetime );
  45. $time = date( 'H:i', $datetime );
  46. $return[] = [$date, $time, $venue['name'], count( $races )];
  47. $query = sprintf( $query_string,
  48. $conn->quote( $date ),
  49. $conn->quote( $venue['name'] ),
  50. $conn->quote( $time ) );
  51. $conn->query($query);
  52. }
  53. $conn->commit();
  54. echo $_GET['callback'] . '(' . json_encode($return ). ')';
  55. }catch (PDOException $e){
  56. // report error message
  57. echo $_GET['callback'] . '(' . json_encode( $e->getMessage() ). ')';
  58. } catch(Exception $e)
  59. {
  60. echo $_GET['callback'] . '(' . json_encode( $e->getMessage() ). ')';
  61. }
  62. }