dj262501 Posted September 24, 2010 Share Posted September 24, 2010 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 More sharing options...
Miss_Rebelx Posted September 24, 2010 Share Posted September 24, 2010 Maybe just incorporate an if empty statement: http://php.net/manual/en/function.empty.php if (!empty ($var)) { // continue } Link to comment https://forums.phpfreaks.com/topic/214328-need-help-elimiating-empty-values/#findComment-1115332 Share on other sites More sharing options...
milesap Posted September 24, 2010 Share Posted September 24, 2010 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. Link to comment https://forums.phpfreaks.com/topic/214328-need-help-elimiating-empty-values/#findComment-1115333 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.