En cours

PHP/MYSQL Specialist

You will need to debug specific issues in a PHP/MySQL application: the application is in production, so quality of code and testing is as important as speed of turning around these issues.

You will have access to a local copy for development/testing. You can also interact with the technical specialist for a detailed discussion on the functionality. You should be able to navigate multiple php pages handling sessions and XML based interaction with other servers: also require ability to debug and write complex SQL queries.



1. The application saves invoice data into a temporary table at the beginning of a session (includes interaction with a server with a device plugged via USB, and then payflow for credit card processing).

a) Once the credit card has been processed successfully, another log table is populated with, among other details, STATUS = APPROVED.

b) After that, the USB is checked on a 3rd party server to ensure OLD_VALUE_ON_DEVICE + NOW_INVOICED_VALUE = NEW_VALUE_ON_DEVICE.

c) if [a] and [b] are both true, then the invoice data is moved from the temp tables to the main tables.

The bug is that for certain transactions, the value is not moved from the temp tables. The issue seems to be in step [b]: rounding errors seem to be causing errors in the check. You need to

a) verify this assumption and ensure fix. If not this, then debug further - the logic is in a single PHP file.

b) also move all data from temp tables to main tables, and ensure data matches in reports.




Certain INSERT statements are inserted after calculation of X% of Y - this results in values like [url removed, login to view] in the database. In the UI, these are rounded to 2 decimal points (resulting in [url removed, login to view]). For accounting entries, this results in credit and debit entries having minor differences. Over time, these are amplified (100 times x [url removed, login to view] error = 3 - a significant error)

You need to

a) fix the rounding error logic - we will point the instances where the rounding error occurs

b) fix the data so that the totals match to give 0.




Invoice data is printed wrong in an HTML, PDF report. The correct logic to get this data is in another PHP, just needs to be reused - minor task.

Compétences : MySQL, Architecture Logicielle

Voir plus : xml pdf php, wrong invoice, ui status, true results, technical report pdf, sql code pdf, so specialist, software testing pdf, single match, session php, php verify, php time card, mysql data access, mysql architecture pdf, errors accounting, debit credit accounting, check point software, calculation logic, accounting important, specialist php mysql, verify credit card, mysql ui, credit card verify, ui testing, specialist

Concernant l'employeur :
( 26 commentaires ) Hamilton, Bermuda

N° du projet : #1046044