Posting Arduino data via ethernet to PHP server problems
In your Arduino code, the function call that send the real data within the HTTP-POST call, is this:

[...]
client.print(data);
[...]


When executed, the content of the data variable is sent to the server.

Supposing data is a String object then data.concat() is this function, allowing "... String, string, char, byte, int, unsigned int, long, unsigned long, float, double..." as argument.

So, after the execution, data should contain:

temp1=10&amp;hum1=24

and such content is exactly what is passed, via POST to the /add.php script.

Basically, you're passing two variables, called "temp1" and "hum1". Please keep note of those variable names!

Now let's switch the the PHP script, where you have:

[...]
$temp1=$_POST["data"];
$hum1=$_POST["serial_number"];
[...]


Above two statements, asks PHP to retrieve, via the $_POST function, the content of the two variables data and serial_number.

As such variables are undefined (the variables you passed were temp1 and hum1), PHP consider them like 0 and, as such, assign 0 to $temp1 and $hum1.

I bet that to solve your problem you only need to change above PHP with:

[...]
$temp1=$_POST["temp1"];
$hum1=$_POST["hum1"];
[...]


BTW: please note that what is inside the $_POST call is totally unrelated with the names of the variables you have on the left of the = sign: they are really different things!