473,326 Members | 2,173 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,326 software developers and data experts.

Sum of a column (in a Table)

30
I have a table running with combo boxes, basically selecting an item in the combo box (located in a <td>) will insert the selection and a price in the following <td>
but currently I am having problems creating the a total of the prices, is there any help out there?
Sep 13 '07 #1
30 9008
ronverdonk
4,258 Expert 4TB
You can use JavaScript to do the calculations for the Total column.

Ronald
Sep 13 '07 #2
Stevee
30
You can use JavaScript to do the calculations for the Total column.

Ronald
I seem to be having problems with that as well, how would that be done?
Sep 13 '07 #3
drhowarddrfine
7,435 Expert 4TB
html/css cannot do this. I'll transfer you to the javascript forum.
Sep 13 '07 #4
gits
5,390 Expert Mod 4TB
hi ...

please post the code you already have ... so that we may help you with the particular problems you might have ...

kind regards
Sep 13 '07 #5
acoder
16,027 Expert Mod 8TB
Post what code you have so far.
Sep 13 '07 #6
Stevee
30
The script thus far, I shall be adding a little more but am stuck on this "Total" part:

Expand|Select|Wrap|Line Numbers
  1. <html>
  2. <head><title>???</title>
  3.  
  4. <script type="text/javascript">
  5. function getinfo()
  6. {
  7. var mylist=document.getElementById("info")
  8. document.getElementById("displayinfo").innerHTML=mylist.options[mylist.selectedIndex].price
  9. }
  10.  
  11. function getinfo1()
  12. {
  13. var mylist=document.getElementById("info1")
  14. document.getElementById("displayinfo1").innerHTML=mylist.options[mylist.selectedIndex].price
  15. }
  16.  
  17. function getinfo2()
  18. {
  19. var mylist=document.getElementById("info2")
  20. document.getElementById("displayinfo2").innerHTML=mylist.options[mylist.selectedIndex].price
  21. }
  22. </script> 
  23.  
  24. </head>
  25. <body>
  26. <table border="1">
  27. <tr>
  28. <td width="95" align="right">
  29. <select id="info" onchange="getinfo()">
  30. <option selected price=" ">Select</option>
  31. <option price="19.00">Unit 1</option>
  32. <option price="22.00">Unit 2</option>
  33. <option price="25.00">Unit 3</option>
  34. <option price="29.00">Unit 4</option>
  35. <option price="32.00">Unit 5</option>
  36. </select>
  37. </td>
  38. <td width="75" align="right" id="displayinfo"> </td>
  39. </tr>
  40.  
  41. <tr>
  42. <td width="95" align="right">
  43. <select id="info1" onchange="getinfo1()">
  44. <option selected price=" ">Select</option>
  45. <option price="84.00">Next 1</option>
  46. <option price="85.00">Next 2</option>
  47. <option price="86.00">Next 3</option>
  48. <option price="87.00">Next 4</option>
  49. <option price="88.00">Next 5</option>
  50. </select>
  51. </td>
  52. <td width="75" align="right" id="displayinfo1"> </td>
  53. </tr>
  54.  
  55. <tr>
  56. <td width="95" align="right">
  57. <select id="info2" onchange="getinfo2()">
  58. <option selected price=" ">Select</option>
  59. <option price="99.00">Again 1</option>
  60. <option price="92.00">Again 2</option>
  61. <option price="95.00">Again 3</option>
  62. <option price="99.00">Again 4</option>
  63. <option price="92.00">Again 5</option>
  64. </select>
  65. </td>
  66. <td width="75" align="right" id="displayinfo2"> </td>
  67. </tr>
  68.  
  69. <tr>
  70. <td width="95" align="right">Total = </td>
  71. <td width="75" align="right"> </td>
  72. </tr>
  73. </table>
  74.  
  75. </body>
  76. </html>
Sep 14 '07 #7
gits
5,390 Expert Mod 4TB
hi ...

a simple way would be to use a global array and push the value to add everytime you select a value in your select-boxes. then loop through the array and add the values ... finally set the value to the display-node ...

if you need help on that ... post back with particular questions ...

kind regards
Sep 14 '07 #8
Stevee
30
hi ...

please post the code you already have ... so that we may help you with the particular problems you might have ...

kind regards
The script thus far, I shall be adding a little more but am stuck on this "Total" part:
Expand|Select|Wrap|Line Numbers
  1. <html>
  2. <head><title>???</title>
  3.  
  4. <script type="text/javascript">
  5. function getinfo()
  6. {
  7. var mylist=document.getElementById("info")
  8. document.getElementById("displayinfo").innerHTML=mylist.options[mylist.selectedIndex].price
  9. }
  10.  
  11. function getinfo1()
  12. {
  13. var mylist=document.getElementById("info1")
  14. document.getElementById("displayinfo1").innerHTML=mylist.options[mylist.selectedIndex].price
  15. }
  16.  
  17. function getinfo2()
  18. {
  19. var mylist=document.getElementById("info2")
  20. document.getElementById("displayinfo2").innerHTML=mylist.options[mylist.selectedIndex].price
  21. }
  22. </script>
  23.  
  24. </head>
  25. <body>
  26. <table border="1">
  27. <tr>
  28. <td width="95" align="right">
  29. <select id="info" onchange="getinfo()">
  30. <option selected price=" ">Select</option>
  31. <option price="19.00">Unit 1</option>
  32. <option price="22.00">Unit 2</option>
  33. <option price="25.00">Unit 3</option>
  34. <option price="29.00">Unit 4</option>
  35. <option price="32.00">Unit 5</option>
  36. </select>
  37. </td>
  38. <td width="75" align="right" id="displayinfo"> </td>
  39. </tr>
  40.  
  41. <tr>
  42. <td width="95" align="right">
  43. <select id="info1" onchange="getinfo1()">
  44. <option selected price=" ">Select</option>
  45. <option price="84.00">Next 1</option>
  46. <option price="85.00">Next 2</option>
  47. <option price="86.00">Next 3</option>
  48. <option price="87.00">Next 4</option>
  49. <option price="88.00">Next 5</option>
  50. </select>
  51. </td>
  52. <td width="75" align="right" id="displayinfo1"> </td>
  53. </tr>
  54.  
  55. <tr>
  56. <td width="95" align="right">
  57. <select id="info2" onchange="getinfo2()">
  58. <option selected price=" ">Select</option>
  59. <option price="99.00">Again 1</option>
  60. <option price="92.00">Again 2</option>
  61. <option price="95.00">Again 3</option>
  62. <option price="99.00">Again 4</option>
  63. <option price="92.00">Again 5</option>
  64. </select>
  65. </td>
  66. <td width="75" align="right" id="displayinfo2"> </td>
  67. </tr>
  68.  
  69. <tr>
  70. <td width="95" align="right">Total = </td>
  71. <td width="75" align="right"> </td>
  72. </tr>
  73. </table>
  74.  
  75. </body>
Sep 14 '07 #9
Stevee
30
hi ...

a simple way would be to use a global array and push the value to add everytime you select a value in your select-boxes. then loop through the array and add the values ... finally set the value to the display-node ...

if you need help on that ... post back with particular questions ...

kind regards
Hi, I'm not particularly well practiced with javascript therefore a "global array" and "display-node" doesn't mean a great deal I'm afraid.
Sep 14 '07 #10
acoder
16,027 Expert Mod 8TB
Stevee, remember to use code tags when posting code, e.g.
[CODE=javascript]Javascript code goes here[/code]
Sep 14 '07 #11
Stevee
30
Stevee, remember to use code tags when posting code, e.g.
Expand|Select|Wrap|Line Numbers
  1. Javascript code goes here
Stoopid me ok - Why?
Sep 14 '07 #12
acoder
16,027 Expert Mod 8TB
Instead of "price", use the normal attribute "value", e.g.
[HTML]<option value="99.00">[/HTML]
In each function, update the total too (by summing the three selects).

Give the td which will contain the total value an id. This will make it easier to access it.
Sep 14 '07 #13
acoder
16,027 Expert Mod 8TB
Stoopid me ok - Why?
Makes it a lot easier to read, plus you get syntax highlighting as a bonus.
Sep 14 '07 #14
Stevee
30
Instead of "price", use the normal attribute "value", e.g.
[HTML]<option value="99.00">[/HTML]
In each function, update the total too (by summing the three selects).

Give the td which will contain the total value an id. This will make it easier to access it.
Right, I will give that a go and let you know if I managed on Monday.

Thanks.
Sep 14 '07 #15
Stevee
30
Right, I will give that a go and let you know if I managed on Monday.

Thanks.
Right I have been giving that lot a go but still don't think I understand (obviously)

<html>
<head><title>???</title>
Expand|Select|Wrap|Line Numbers
  1. <script type="text/javascript">
  2. function getinfo()
  3. {
  4. var mylist=document.getElementById("info")
  5. document.getElementById("displayinfo").innerHTML=mylist.options[mylist.selectedIndex].value
  6. }
  7.  
  8. function getinfo1()
  9. {
  10. var mylist=document.getElementById("info1")
  11. document.getElementById("displayinfo1").innerHTML=mylist.options[mylist.selectedIndex].value
  12. }
  13.  
  14. function getinfo2()
  15. {
  16. var mylist=document.getElementById("info2")
  17. document.getElementById("displayinfo2").innerHTML=mylist.options[mylist.selectedIndex].value
  18. }
  19. </script>
  20.  
  21.  
  22. <script type="text/javascript">
  23. function startCalc()
  24. {
  25. one = mylist=document.getElementById("info").value;
  26. two = mylist=document.getElementById("info1").value;
  27. three = mylist=document.getElementById("info2").value;
  28. TotalValue.value = (one * 1) + (two * 1) + (three * 1);
  29. }
  30. </script>
  31.  
  32.  
  33. </head>
  34. <body>
  35. <table border="1">
  36. <tr>
  37. <td width="95" align="right">
  38. <select id="info" onchange="getinfo();startCalc()">
  39. <option selected price=" ">Select</option>
  40. <option value="19.00">Unit 1</option>
  41. <option value="22.00">Unit 2</option>
  42. <option value="25.00">Unit 3</option>
  43. <option value="29.00">Unit 4</option>
  44. <option value="32.00">Unit 5</option>
  45. </select>
  46. </td>
  47. <td width="75" align="right" id="displayinfo"> </td>
  48. </tr>
  49.  
  50. <tr>
  51. <td width="95" align="right">
  52. <select id="info1" onchange="getinfo1();startCalc()">
  53. <option selected price=" ">Select</option>
  54. <option value="84.00">Next 1</option>
  55. <option value="85.00">Next 2</option>
  56. <option value="86.00">Next 3</option>
  57. <option value="87.00">Next 4</option>
  58. <option value="88.00">Next 5</option>
  59. </select>
  60. </td>
  61. <td width="75" align="right" id="displayinfo1"> </td>
  62. </tr>
  63.  
  64. <tr>
  65. <td width="95" align="right">
  66. <select id="info2" onchange="getinfo2();startCalc()">
  67. <option selected price=" ">Select</option>
  68. <option value="99.00">Again 1</option>
  69. <option value="92.00">Again 2</option>
  70. <option value="95.00">Again 3</option>
  71. <option value="99.00">Again 4</option>
  72. <option value="92.00">Again 5</option>
  73. </select>
  74. </td>
  75. <td width="75" align="right" id="displayinfo2"> </td>
  76. </tr>
  77.  
  78. <tr>
  79. <td width="95" align="right">Total = </td>
  80. <td id="TotalValue" width="75" align="right" value=""> </td>
  81. </tr>
  82. </table>
  83.  
  84. </body>
  85. </html>
  86.  
  87.  
  88.  
Sep 17 '07 #16
acoder
16,027 Expert Mod 8TB
Right I have been giving that lot a go but still don't think I understand (obviously)
A td element does not have a value attribute. Use innerHTML instead:
Expand|Select|Wrap|Line Numbers
  1. document.getElementById("TotalValue").innerHTML
You should also set the values of the first option of each select rather than using price which will probably result in NaN for the total.
Sep 17 '07 #17
Stevee
30
Thank you it now works a treat.

Except, the combo <TD>'s have 2 decimal places and the TotalValue has quite a few more, even though I only put in whole pence?

Regards, Stevee.

Expand|Select|Wrap|Line Numbers
  1. <html>
  2. <head><title>???</title>
  3.  
  4. <script type="text/javascript">
  5. function getinfo()
  6. {
  7. var mylist=document.getElementById("info")
  8. document.getElementById("displayinfo").innerHTML=mylist.options[mylist.selectedIndex].value
  9. }
  10.  
  11. function getinfo1()
  12. {
  13. var mylist=document.getElementById("info1")
  14. document.getElementById("displayinfo1").innerHTML=mylist.options[mylist.selectedIndex].value
  15. }
  16.  
  17. function getinfo2()
  18. {
  19. var mylist=document.getElementById("info2")
  20. document.getElementById("displayinfo2").innerHTML=mylist.options[mylist.selectedIndex].value
  21. }
  22. </script>
  23.  
  24. <script type="text/javascript">
  25. function startCalc()
  26. {
  27. one = mylist=document.getElementById("info").value;
  28. two = mylist=document.getElementById("info1").value;
  29. three = mylist=document.getElementById("info2").value;
  30. document.getElementById("TotalValue").innerHTML = (one * 1) + (two * 1) + (three * 1);
  31. }
  32. </script>
  33.  
  34.  
  35. </head>
  36. <body>
  37. <table border="1">
  38. <tr>
  39. <td width="95" align="right">
  40. <select id="info" onchange="getinfo();startCalc()">
  41. <option selected value="12">Select</option>
  42. <option value="19.00">Unit 1</option>
  43. <option value="22.00">Unit 2</option>
  44. <option value="25.00">Unit 3</option>
  45. <option value="29.00">Unit 4</option>
  46. <option value="32.00">Unit 5</option>
  47. </select>
  48. </td>
  49. <td width="75" align="right" id="displayinfo"> </td>
  50. </tr>
  51.  
  52. <tr>
  53. <td width="95" align="right">
  54. <select id="info1" onchange="getinfo1();startCalc()">
  55. <option selected value=" ">Select</option>
  56. <option value="84.00">Next 1</option>
  57. <option value="85.00">Next 2</option>
  58. <option value="86.00">Next 3</option>
  59. <option value="87.00">Next 4</option>
  60. <option value="88.00">Next 5</option>
  61. </select>
  62. </td>
  63. <td width="75" align="right" id="displayinfo1"> </td>
  64. </tr>
  65.  
  66. <tr>
  67. <td width="95" align="right">
  68. <select id="info2" onchange="getinfo2();startCalc()">
  69. <option selected value=" ">Select</option>
  70. <option value="99.00">Again 1</option>
  71. <option value="92.00">Again 2</option>
  72. <option value="95.00">Again 3</option>
  73. <option value="99.00">Again 4</option>
  74. <option value="92.00">Again 5</option>
  75. </select>
  76. </td>
  77. <td width="75" align="right" id="displayinfo2"> </td>
  78. </tr>
  79.  
  80. <tr>
  81. <td width="95" align="right">Total = </td>
  82. <td id="TotalValue" width="75" align="right" value=""> </td>
  83. </tr>
  84. </table>
  85.  
  86. </body>
  87. </html>
  88.  
Sep 18 '07 #18
acoder
16,027 Expert Mod 8TB
Thank you it now works a treat.

Except, the combo <TD>'s have 2 decimal places and the TotalValue has quite a few more, even though I only put in whole pence?
On line 30, the 'correct' way to parse strings for numbers is to use parseFloat(). If you do have problems with decimal places, use toFixed on modern browsers.
Sep 18 '07 #19
Stevee
30
On line 30, the 'correct' way to parse strings for numbers is to use parseFloat(). If you do have problems with decimal places, use toFixed on modern browsers.
OK, total lack of knowledge again, where on line 30
I currently have placed it here:
document.getElementById("TotalValue").innerHTML = parseFloat(one + two + three);
which still works and has reduced the decimals to 4 places.

Is this Tofixed another script or does it fit neatly (somewhere) into the:
<td id="TotalValue" width="75" align="right">
Sep 18 '07 #20
acoder
16,027 Expert Mod 8TB
OK, total lack of knowledge again, where on line 30
I currently have placed it here:
document.getElementById("TotalValue").innerHTML = parseFloat(one + two + three);
which still works and has reduced the decimals to 4 places.
Put it around each value. You could put it on the previous three lines, e.g.
Expand|Select|Wrap|Line Numbers
  1. one = parseFloat(document.getElementById("info").value);
Is this Tofixed another script or does it fit neatly (somewhere) into the:
<td id="TotalValue" width="75" align="right">
See the examples in the link. Use it on the TotalValue.
Sep 18 '07 #21
Stevee
30
Put it around each value. You could put it on the previous three lines, e.g.
Expand|Select|Wrap|Line Numbers
  1. one = parseFloat(document.getElementById("info").value);
See the examples in the link. Use it on the TotalValue.
Expand|Select|Wrap|Line Numbers
  1. <script type="text/javascript">
  2. function startCalc()
  3. {
  4. one = parseFloat(mylist=document.getElementById("info").value);
  5. two = parseFloat(mylist=document.getElementById("info1").value);
  6. three = parseFloat(mylist=document.getElementById("info2").value);
  7. document.getElementById("TotalValue").innerHTML = parseFloat(one + two + three);
  8. }
  9. </script>
  10.  
Now I get the dreaded - NaN
Sep 18 '07 #22
acoder
16,027 Expert Mod 8TB
Expand|Select|Wrap|Line Numbers
  1. <script type="text/javascript">
  2. function startCalc()
  3. {
  4. one = parseFloat(mylist=document.getElementById("info").value);
  5. two = parseFloat(mylist=document.getElementById("info1").value);
  6. three = parseFloat(mylist=document.getElementById("info2").value);
  7. document.getElementById("TotalValue").innerHTML = parseFloat(one + two + three);
  8. }
  9. </script>
  10.  
Now I get the dreaded - NaN
You don't need 'mylist=' and you can remove the parseFloat when totalling because they've already been parsed.
Sep 19 '07 #23
Stevee
30
You don't need 'mylist=' and you can remove the parseFloat when totalling because they've already been parsed.
Right, I have tried that again and the TotalValue gives me the NaN
Expand|Select|Wrap|Line Numbers
  1. <script type="text/javascript">
  2. function startCalc()
  3. {
  4. one = parseFloat(document.getElementById("info").value);
  5. two = parseFloat(document.getElementById("info1").value);
  6. three = parseFloat(document.getElementById("info2").value);
  7. document.getElementById("TotalValue").innerHTML = (one * 1) + (two * 1) + (three * 1);
  8. }
  9. </script>
  10.  
Sep 19 '07 #24
acoder
16,027 Expert Mod 8TB
Right, I have tried that again and the TotalValue gives me the NaN
Instead of a space for the default option values, put 0.
Sep 19 '07 #25
Stevee
30
Instead of a space for the default option values, put 0.
Gotcha, thankyou.

But why when it adds up 2 of the combo numbers ie 19.52 + 100 it equals 119.52

However when I add 3 of the combo numbers ie 19.52 + 100 + 99 it equals 218.51999999999998
Sep 19 '07 #26
acoder
16,027 Expert Mod 8TB
Gotcha, thankyou.

But why when it adds up 2 of the combo numbers ie 19.52 + 100 it equals 119.52

However when I add 3 of the combo numbers ie 19.52 + 100 + 99 it equals 218.51999999999998
That's a floating point accuracy problem - see link. Use toFixed() to fix it to 2 decimal places.
Sep 19 '07 #27
Stevee
30
That's a floating point accuracy problem - see link. Use toFixed() to fix it to 2 decimal places.
Sorry, I did no better than a "D" in GCE Math some 31 years ago, and that lot just wasted me. can you assist with the toFix please
Sep 19 '07 #28
acoder
16,027 Expert Mod 8TB
Sorry, I did no better than a "D" in GCE Math some 31 years ago, and that lot just wasted me. can you assist with the toFix please
toFixed is used on a number, so you could do something like:
Expand|Select|Wrap|Line Numbers
  1. total = one + two + three;
  2. total = total.toFixed(2);
  3. document.getElementById("TotalValue").innerHTML = total;
Sep 20 '07 #29
Stevee
30
toFixed is used on a number, so you could do something like:
Expand|Select|Wrap|Line Numbers
  1. total = one + two + three;
  2. total = total.toFixed(2);
  3. document.getElementById("TotalValue").innerHTML = total;
Thankyou, I had to amend slightly (one * 1) + etc but this works great:

Expand|Select|Wrap|Line Numbers
  1. <script type="text/javascript">
  2. function startCalc()
  3. {
  4. one = document.getElementById("info").value;
  5. two = document.getElementById("info1").value;
  6. three = document.getElementById("info2").value;
  7. total = (one * 1) + (two * 1) + (three * 1);
  8. total = total.toFixed(2);
  9. four = document.getElementById("TotalValue").innerHTML = total;
  10. totalvat = (four / 100 * 17.5) + (four * 1);
  11. totalvat = totalvat.toFixed(2);
  12. five = document.getElementById("TotalVat").innerHTML = totalvat;
  13. }
  14. </script>
  15.  
My biggest problem was how to tell it the number toFix was TotalValue
Sep 20 '07 #30
acoder
16,027 Expert Mod 8TB
Glad to hear you finally got it working how you want it.
Sep 20 '07 #31

Sign in to post your reply or Sign up for a free account.

Similar topics

0
by: Randell D. | last post by:
Folks, When creating a table, is there any advantage in specifying the columns in any special order? For example, what about columns with data used more frequently listed first, or column/data...
1
by: Not Me | last post by:
Hi, I'm sure this is a common problem.. to create a single field from a whole column, where each row would be separated by a comma. I can do this for a specified table, and column.. and I've...
11
by: Peter Foti | last post by:
Hi all, I have a form that contains a 2 column table. In the left column is the description for a particular input (ie - "First Name", "Last Name", "Phone Number", etc.). In the right column...
3
by: Kathy | last post by:
Hi and thanks in advance for your help! I have Access 2000. I have imported a delinited text file and now have table with one column containing 100 records. I would like to display these values in...
2
by: Hymer | last post by:
Hello, I have a small two-column table with three rows. The first column has a logo and the second column has the name of the organization. The logo's in the first column are too high. That...
5
by: Hymer | last post by:
Hello, I have a small two-column table with three rows. The first column has a logo and the second column has the name of the organization. The logo's in the first column are too high. That...
10
by: ste | last post by:
Hi there, I'm trying to query a MySQL database (containing image data) and to output the results in a HTML table of 3 columns wide (and however many rows it takes) in order to create a basic...
1
by: akress | last post by:
Hiya, I'm trying to convert a table with 6 colums that looks like this: <table class="myTable" width="640px"> <tr> <td><a href="#"> <img src="../_img/announce.gif" align="middle"...
1
by: kelvin.koogan | last post by:
I want to display a two column multi-row table in a Windows Forms app. I want the user to be able to edit all values in both columns. Table will need to scroll vertically. What is the best...
3
by: Csaba Gabor | last post by:
I have a table with 3 rows, and two pieces of data to display in each row. However, the first element of the last two rows and the 2nd element of the 1st row are very short. This would seem to...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.