Verisign PFPRO API & PHP: How to ensure hitting "STOP" in the browser will not kill the transcation

Ask a Question related to PHP Development, Design and Development.

  1. #1

    Default Re: [PHP] Verisign PFPRO API & PHP: How to ensure hitting "STOP" in the browser will not kill the transcation

    * Thus wrote e (e@osterman.com):
    >
    >
    > I've not been able to find anywhere a good use of the pfpro
    > functionality in PHP. No where do any of the scripts ensure that the
    > script goes through it's full execution.
    >
    > One person's solution was just to exec the pfpro binary in the
    > background, passing it the necessary arguments. This seems insecure.
    > I'd like to use PHP's pcntl_fork(), however, I read that using it in PHP
    > where PHP is an Apache module could produce unpredictable results.. Is
    > anyone using pcntl_fork with the pfpro stuff in a PHP compiled as a
    > module.....successfully?

    You cant use pcntl_fork() within a web processes, what might be
    useful:

    [url]http://php.net/features.connection-handling[/url]

    You'll be able to handle everything upto the point that you call
    the pfpro->process function. Once that happens the payment will go
    through. But if you are keeping track of results from the pfpro you
    could flag the database that the user hit cancel.

    What I would do instead would be to issue a ignore_user_abort(true)
    and record the results in a database (since the output will not be
    garenteed.) And not worry about what happens if the user does press
    escape.

    To be user friendly I would put a disclaimer, clearly visible, next
    to the submit button 'Once pressing submit there is no turning
    back', or something to that effect.


    HTH,

    Curt
    --
    "I used to think I was indecisive, but now I'm not so sure."
    Curt Zirzow Guest

  2. Similar Questions and Discussions

    1. "Connection closed due to session kill"
      All: I was recently called in to troubleshoot a site that has been showing all kinds of problems. One problem that just recently began showing...
    2. Resetting "Visited" links to "links" color when new browser opens
      HELP! This should be simple, but I can't find info: In using CSS for font color for text hyperlinks, I have mine set so that the "links" are a...
    3. Replication - ASNCMD "DBNAME" STOP does not stop Capure
      I am running DB2 version 7.2, when I execute ASNCMD dbname STOP. 8 out of ten times Capture will bring itself down. I need this to work 100% of...
    4. Modifying "Open Browser Window" behavior to launch a maximized browser
      I want to launch a web application in a fullscreen browser window with nothing but the title bar and the accompanying window borders (I do not want...
    5. Anyone seen AIX 4.3 continue to let processes run even after "kill SIGKILL"?
      Hey Everyone, Has anyone seen AIX 4.3 or any other AIX continue to let processes run (even if for a few moments like upto a minute or 2 minutes)...
  3. #2

    Default Verisign PFPRO API & PHP: How to ensure hitting "STOP" in the browser will not kill the transcation



    I've not been able to find anywhere a good use of the pfpro
    functionality in PHP. No where do any of the scripts ensure that the
    script goes through it's full execution.

    One person's solution was just to exec the pfpro binary in the
    background, passing it the necessary arguments. This seems insecure.
    I'd like to use PHP's pcntl_fork(), however, I read that using it in PHP
    where PHP is an Apache module could produce unpredictable results.. Is
    anyone using pcntl_fork with the pfpro stuff in a PHP compiled as a
    module.....successfully?



    Thanks

    Erik Osterman




    E Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139