php script for online creation or editing of associative array
$30-100 USD
Tamamlandı
İlan edilme: 12 yıldan fazla önce
$30-100 USD
Teslimde ödenir
We need a php script for ONLINE creating/editing price scale array.
Please see detailed requirements below
## Deliverables
Here is the standard array (prop stands for proportional:
$default_scale =array(
array('limit'=>0,'fix' => 5,'prop' => 0),
array('limit'=>100,'fix' => 8,'prop' => 0),
array('limit'=>200,'fix' => 10,'prop' => 0),
array('limit'=>300,'fix' => 12,'prop' => 0),
array('limit'=>400,'fix' => 13,'prop' => 0),
array('limit'=>500,'fix' => 15,'prop' => 0),
array('limit'=>600,'fix' => 16,'prop' => 0),
array('limit'=>700,'fix' => 17,'prop' => 0),
array('limit'=>800,'fix' => 18,'prop' => 0),
array('limit'=>900,'fix' => 19,'prop' => 0),
array('limit'=>1000,'fix' => 0,'prop' => 2),
array('limit'=>3000,'fix' => 0,'prop' => 0)
);
Read like this (example): for amount=450, fix=13 and prop=0; for amount=1500, fix=0 and prop=2.
When a price scale is created, it is serialized and stored in database. Fields of database are $index (autoincrement index) and $strserie (serialized array).
When a user wants to create a new price scale, the default array must show, in an editable text area or in a form (coder's choice), in order to be edited by user.
There are a few rules for validating an array:
Limits are integers.
Limits can increment by 50 or a multiple of 100 or 150 when limits are below or equal to 1000.
Limits can increment by a multiple of 100 when limits are above 1000.
"Fix" values are integer
"prop" values can be 0, 0.25, 0.50, 0.75, 1, 1.25??up to 5 (these are % in fact)
Array must be sorted by limit before storing
When the array is sorted by limit, the fix values must be ascending. (no such rules for 'prop' values)
When a user wants to edit an existing array, there must be a form with input box showing (drop list) available price list. Then the chosen array is shown and edited as in array creation above.
The coder, when bidding, will provide a brief description of how he will do the job. 'I can do it' bids will not be considered.
Here are 3 sample (serialized) arrays that the coder can use for building the arrays base
$strserie[1]='a:12:{i:0;a:3:{s:6:"limite";i:0;s:4:"fixe";i:5;s:4:"prop";i:0;}i:1;a:3:{s:6:"limite";i:100;s:4:"fixe";i:8;s:4:"prop";i:0;}i:2;a:3:{s:6:"limite";i:200;s:4:"fixe";i:10;s:4:"prop";i:0;}i:3;a:3:{s:6:"limite";i:300;s:4:"fixe";i:12;s:4:"prop";i:0;}i:4;a:3:{s:6:"limite";i:400;s:4:"fixe";i:13;s:4:"prop";i:0;}i:5;a:3:{s:6:"limite";i:500;s:4:"fixe";i:15;s:4:"prop";i:0;}i:6;a:3:{s:6:"limite";i:600;s:4:"fixe";i:16;s:4:"prop";i:0;}i:7;a:3:{s:6:"limite";i:700;s:4:"fixe";i:17;s:4:"prop";i:0;}i:8;a:3:{s:6:"limite";i:800;s:4:"fixe";i:18;s:4:"prop";i:0;}i:9;a:3:{s:6:"limite";i:900;s:4:"fixe";i:19;s:4:"prop";i:0;}i:10;a:3:{s:6:"limite";i:1000;s:4:"fixe";i:0;s:4:"prop";i:2;}i:11;a:3:{s:6:"limite";i:3000;s:4:"fixe";i:0;s:4:"prop";i:0;}}';
$strserie[2]='a:12:{i:0;a:3:{s:6:"limite";i:0;s:4:"fixe";i:8;s:4:"prop";i:0;}i:1;a:3:{s:6:"limite";i:100;s:4:"fixe";i:10;s:4:"prop";i:0;}i:2;a:3:{s:6:"limite";i:200;s:4:"fixe";i:10;s:4:"prop";i:0;}i:3;a:3:{s:6:"limite";i:300;s:4:"fixe";i:12;s:4:"prop";i:0;}i:4;a:3:{s:6:"limite";i:400;s:4:"fixe";i:12;s:4:"prop";i:0;}i:5;a:3:{s:6:"limite";i:500;s:4:"fixe";i:14;s:4:"prop";i:0;}i:6;a:3:{s:6:"limite";i:600;s:4:"fixe";i:15;s:4:"prop";i:0;}i:7;a:3:{s:6:"limite";i:700;s:4:"fixe";i:16;s:4:"prop";i:0;}i:8;a:3:{s:6:"limite";i:800;s:4:"fixe";i:18;s:4:"prop";i:0;}i:9;a:3:{s:6:"limite";i:900;s:4:"fixe";i:19;s:4:"prop";i:0;}i:10;a:3:{s:6:"limite";i:1000;s:4:"fixe";i:0;s:4:"prop";i:2;}i:11;a:3:{s:6:"limite";i:3000;s:4:"fixe";i:5;s:4:"prop";i:0;}}';
$strserie[3]='a:2:{i:0;a:3:{s:6:"limite";i:0;s:4:"fixe";i:8;s:4:"prop";i:0;}i:1;a:3:{s:6:"limite";i:3000;s:4:"fixe";i:5;s:4:"prop";i:0;}}';