Jump to content

need help elimiating empty values


dj262501

Recommended Posts

Hello,

 

Im having trouble and need your help. I have two pages. The first establishes the table and calls up a database:

 

<?php
include "include/dbc.php";

include "include/header.inc";
?>

<style type="text/css">
.mydate{
color:#00F;
text-decoration:underline;
cursor:pointer;
}
</style>

<script type="text/javascript">
function displayDate(d){
var date=new Date();
var D=date.getDate();
date.setDate(D+d);
var YYYY=date.getFullYear();
var MM=date.getMonth()+1;
MM<10?MM='0'+MM:null;
var DD=date.getDate();
DD<10?DD='0'+DD:null;
var span=document.getElementById('date');
span.innerHTML= 'Entries for '+MM+'/'+DD+'/'+YYYY;
}
onload=function(){displayDate(0)};
</script>

<h1>Food Diary</h1>

<div class="full">
<center><div><span class="mydate" onclick="displayDate(-1)"><img src="images/left_arrow.png" border="0">Yesterday</span>      <span id="date" style="font-size:2em;"></span>      <span class="mydate" onclick="displayDate(1)">Tomorrow<img src="images/right_arrow.png" border="0"></span></div><br />
<a href="#" onclick="displayDate(0);return false;">Today</a>
</center>

<div class="full">
<form name="exercise" id="exercise" method="GET" action="">
  <center><table>
<tr>
    	<td><h3>Add an Activity</h3></td>
</tr>
<tr>
    	<td><input name="NewSearchString" style="width: 100px" type="text"/>  <input type="submit" value="Search" /> </td>
</tr>
    <tr>
    	<td>
        	<select name="activity">
            	<option value="_">Activity Browse...</option>
                <option value="all">All Activities</option>
                <option value="biking">Biking</option>
                <option value="condition">Conditioning</option>
                <option value="dancing">Dancing</option>
                <option value="fish">Fishing & Hunting</option>
                <option value="Home">Home Activities</option>
                <option value="misc">Miscellaneous</option>
                <option value="music">Music Playing</option>
                <option value="occupation">Occupation</option>
                <option value="running">Running</option>
                <option value="sports">Sports</option>
                <option value="walking">Walking</option>
                <option value="water">Water Activities</option>
                <option value="winter">Winter Activities</option>
		</select>   <input type="submit" value="Submit" /></td></tr></table></center></form>
	</td>
</tr>
</table> </center>
<table width="100%">
   	<tr bgcolor="#66CC33">
    	<td><div>Activity</div></td>
        <td><div>Specific Activity</div></td>
        <td><div>Time (hh:mm)</div></td>
        <td><div>Distance</div></td>
        <td><div>Units</div></td>
</tr>
    <tr bgcolor="#66CC33">
    	<td><div></div></td>
     	<td><div></div></td>
       <td><div></div></td>
        <td><div class="Float"></div></td>
        <td class="cp_Distance"><div></div></td>
</tr>
<?php
if(isset($_GET[activity])) {
$category=$_GET[activity];
$result = mysql_query("SELECT * FROM exercise WHERE type='$category'");
?>
<form action="add_activity.php" method="POST">
<?php
while($row = mysql_fetch_array($result)) {
echo '<tr><td><div>'.$row[Type].'</div></td>';
echo '<td><div>'.$row[Name].'<input type="hidden" name="exerciseid[]" value="'.$row[Name].'"></div></td>';
echo '<td><div><input type="text" name="duration['.$row['Name'].']"></div></td>';
echo '<td><div><input type="text" name="distance['.$row['Name'].']"></div></td>';
echo '<td><div><select name="metric[]">
        		<option value="mile" name="mile">mile</option>
            	<option value="Km" name="Km">km</option>
            	<option value="M" name="M">m</option>
            	<option value="Yard" name="yard">yrd</option>
            	<option value="Feet" name="feet">ft</option>
            </select></div></td></tr>';

}
mysql_close();
?>

<tr><td colspan="6" align="center"><input type="submit" name="submit" value="Add Activities" onClick="return confirm(
  'Are you sure you want to submit the activities?');"></td></tr>
</form>
<?php
}
?>
    <tr bgcolor="#66CC33">
    	<td><div></div></td>
     	<td><div></div></td>
       <td><div></div></td>
        <td><div class="Float"></div></td>
        <td class="cp_Distance"><div></div></td>
</tr></table>      

 

The second page passes those values:

 

<?php
include "include/dbc.php";

include "include/header.inc";

$exerciseid = $_POST["exerciseid"];
$duration = $_POST["duration"];
$distance = $_POST["distance"];
$metric = $_POST["metric"];

echo'<h1>Added Activities</h1>';



// name of array
echo '<h1>Exercise</h1>';
if( is_array($exerciseid) )
{
foreach ($exerciseid as $key => $value) {

                        echo $key .' : '. $value .'<br />';
    }
}


echo '<h1>Duration</h1>';
if(is_array($duration) )
{
foreach ($duration as $key => $value) {

                        echo $key .' : '. $value .'<br />';
}
}


// name of array
echo '<h1>Distance</h1>';
if (is_array($distance)) {
        foreach ($distance as $key => $value) {

                        echo $key .' : '. $value .'<br />';

        }
}

// name of array
echo '<h1>Metric</h1>';
if (is_array($metric)) {
        foreach ($metric as $key => $value) {

                        echo $key .' : '. $value .'<br />';

        }
}

?>

 

The problem is that this code returns everything:

 

Added Activities

 

Exercise

0 : Fishing from boat, sitting

1 : Fishing from river bank, standing

2 : Fishing in stream, in waders

3 : Fishing, general

4 : Fishing, ice, sitting

5 : Hunting, general

 

Duration

Fishing from boat, sitting : 22

Fishing from river bank, standing :

Fishing in stream, in waders :

Fishing, general :

Fishing, ice, sitting :

Hunting, general :

 

Distance

Fishing from boat, sitting : 22

Fishing from river bank, standing :

Fishing in stream, in waders :

Fishing, general :

Fishing, ice, sitting :

Hunting, general :

 

Metric

0 : mile

1 : mile

2 : mile

3 : mile

4 : mile

5 : mile

 

I need a way to say if this variable is empty, null, or equals 0, do not return it. And yes, the variables are arrays. I don't know what else to do. Thanks in advance.

Link to comment
https://forums.phpfreaks.com/topic/214328-need-help-elimiating-empty-values/
Share on other sites

name="duration['.$row['Name'].']"

 

if you name an element as an array, then it can hold multiple values. Not going to read over all your code, but I would do a print_r of the $_POST['duration'] variable to see what that returns, and from there ensure that the element is getting properly filled.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.