Solved

PHP Adding/Subtracting

Posted on 2011-03-09
10
236 Views
Last Modified: 2012-05-11
Hi experts,

I have a database table that looks like the following.

Customer Jan        Feb     March    April     May   June July Aug Sep etc
Jan          10.12    11.00    15.00    12.56    -36.25   ETCC

As you can see there is a minus under may of -36.25...is there away of setting a negative value to the database?
0
Comment
Question by:NeoAshura
  • 4
  • 4
  • 2
10 Comments
 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35083092
What do you mean by this "is there away of setting a negative value to the database?". Are you trying to say that you cannot store a negative number in the database?

Make sure the DB column is SIGNED or at least that it is not UNSIGNED
0
 
LVL 27

Expert Comment

by:yodercm
ID: 35083113
Just give your database field the characteristic of SIGNED, and you can put negative numbers into it.
0
 
LVL 6

Author Comment

by:NeoAshura
ID: 35083146
sorry bad english they are set as negative, and ive eneted the value as -36 so should recongise it, i just dont know how to get the result (sum) of the columns at the end in php
0
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35083194
"...they are set as negative.."

What are set as negative? I'm sorry but I still do not understand what the problem is. I can see that the sample table above has -36.25 in it, but I'm not clear what you are trying to do with it.

0
 
LVL 6

Author Comment

by:NeoAshura
ID: 35083205
im trying to add the posotives in php with the data from the database

e.g

10+10+10 but then need to -minus the negatives for example

10+10+10-36= £-6
0
 
LVL 34

Expert Comment

by:Beverley Portlock
ID: 35083327
Can you post the code that's not doing the adding correctly? It should just be simple arithmetic operations which is why I'm struggling to see where the problem would lie.
0
 
LVL 27

Expert Comment

by:yodercm
ID: 35083774
If the negative value is already in the database, you can just use SUM in MySQL or simple arithmetic in php.

$a = 3 + 2 - 4;

will give you $a = 1
0
 
LVL 6

Author Comment

by:NeoAshura
ID: 35083920
here it is sorry for late reply i keep getting unidentified index maybe im not defineing the variables?

if thats the case how would i add the columns jan and feb?

code is attached thanks again
<?php
session_start();
ob_start();
include 'myphp.php';
?>
<?php
$val = $_GET['val'];
$sql = "SELECT * FROM bill_detail2009  WHERE mobile_number = '" . $val . "'";

$first_number = $_GET['Jan09'];
$second_number = $_GET['Feb09'];
$sum_total = $first_number + $second_number;

$direct_text = 'The two variables added together = ';

print ($direct_text . $sum_total);

?>

Open in new window

0
 
LVL 34

Accepted Solution

by:
Beverley Portlock earned 500 total points
ID: 35084059
You're not processing the database values or even accessing the database. I don't even know if you have establised a database connection at this point.

The following UNTESTED code should be closer to what you need but without knowing you database table structure I can only guess....

<?php
session_start();
ob_start();
include 'myphp.php';
?>
<?php
$val = $_GET['val'];
$sql = "SELECT * FROM bill_detail2009  WHERE mobile_number = '" . $val . "'";



$rs = mysql_query( $sql );

if ( $rs ) {

     if ( mysql_num_rows($rs) == 0 )
          echo "NO data to process";
     else {
          $rw = mysql_fetch_assoc( $rs );

          $sum_total = $rw['Jan09'] + $rw['Feb09'];
     }
}
else
     echo "Query failed " . mysql_error();
     



$direct_text = 'The two variables added together = ';

print ($direct_text . $sum_total);

?>

Open in new window

0
 
LVL 6

Author Comment

by:NeoAshura
ID: 35084250
myphp was my connection file and thanks it worked ok
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Build an array called $myWeek which will hold the array elements Today, Yesterday and then builds up the rest of the week by the name of the day going back 1 week.   (CODE) (CODE) Then you just need to pass your date to the function. If i…
Introduction Since I wrote the original article about Handling Date and Time in PHP and MySQL (http://www.experts-exchange.com/articles/201/Handling-Date-and-Time-in-PHP-and-MySQL.html) several years ago, it seemed like now was a good time to updat…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question