Well....good news is I got rid of the error. Bad news is, I'm still returning blank drop down menus.
I think I made the proper change to call the function, I don't know. This is certainly making me feel rather stupid, and I'm sure I'm missing something very small.
Below is the full code for the page. Can you see where I'm missing something?? Or perhaps I'm just creating a conflict somewhere.
This link will show a picture of the page and how it looks, perhaps it will help. http://refphotos.com/assignmentpagepic.jpg
Again, I really appreciate the help.
Thanks.
Landis
<?PHP
// global variables
$db_name = "refphoto_testdb";
$db_user = "refphoto";
$db_pass = "08291983";
$table_name = "schedule";
//functions
// get referee select
function getRefereeSelect($referees,$selname,$selected,$id,$name) {
$retVal = "<select name=\"$selname\" onChange=\"checksel($id,'$name')\">\n";
$selected = (is_numeric($selected) && isset($referees[$selected])) ? $selected : 0;
foreach ($referees as $key => $referee) {
$sel = ($key == $selected) ? " selected" : "";
$retVal .= "<option value=\"$key\"$sel>$referee</option>\n";
}
$retVal .= "</select>\n";
return $retVal;
}
// get referee array
function getReferees($conn,$g_date) {
$retVal[0] = "";
$sql = "SELECT * FROM schedule AS s
LEFT JOIN availability AS a USING (g_date)
WHERE s.g_date='$g_date'
ORDER BY a.l_name";
$res = @mysql_query($sql,$conn) or die("SQL error (referees): ".mysql_error());
while ($row = mysql_fetch_assoc($res)) {
$retVal[$row['a.user_id']] = $row['a.l_name'].", ".$row['a.f_name'];
}
return $retVal;
}
// get schedule data
function getSchedule($conn,$scheduledate) {
$matches = array();
$retVal = array();
if (preg_match("§(\d{4})-(\d{2})§",$scheduledate,$matches)) {
$sql =<<<EOSQL
SELECT id, `g_date`, `time`, trim(concat(`g_date`, ' ' ,`time`)) as datetime,
location, home, visitor, age, referee, ar1, ar2
FROM schedule
WHERE `gamecode`='$scheduledate'
ORDER BY datetime
EOSQL;
$res = @mysql_query($sql,$conn) or die("SQL error (schedule): ".mysql_error());
while ($row = mysql_fetch_assoc($res)) {
$retVal[$row['id']] = $row;
}
}
return $retVal;
}
//connect to database and select table
$connection = @mysql_connect("localhost","refphoto","08291983") or die(mysql_error());
$db = @mysql_select_db($db_name,$connection) or die(mysql_error());
$thedate = isset($_POST['thedate']) ? $_POST['thedate'] : "";
$arrSchedule = array();
$display_block = "";
$arrReferees = getReferees($connection,$g_date);
$confirm = "";
if (isset($_POST['seldate']) || isset($_POST['save'])) {
// change date
$arrSchedule = getSchedule($connection,$_POST['thedate']);
}
if (isset($_POST['save'])) {
// save data
// form validation still missing
$arrSched = $_POST['rowdata'];
foreach($arrSched as $id => $data) {
$arrSchedule[$id]['referee'] = $data['referee'];
$arrSchedule[$id]['ar1'] = $data['ar1'];
$arrSchedule[$id]['ar2'] = $data['ar2'];
$sql = "UPDATE schedule SET referee='{$data['referee']}',ar1='{$data['ar1']}',ar2='{$data['ar2']}' WHERE id='$id'";
@mysql_query($sql,$connection) or die("SQL error: ".mysql_error());
}
}
if (!empty($arrSchedule)) {
$display_block =<<<EOHTML
<table border=1 cellpadding=1 cellspacing=0 bordercolor=000000 bgcolor="#CC0000">
<tr>
<td valign=top width=85> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Date:</strong>
</font></td>
<td valign=top width=75> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Time:
</strong> </font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Location:</strong>
</font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Home:</strong>
</font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Visitor:</strong></font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Age:</strong>
</font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Referee:</strong></font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>AR1:</strong>
</font></td>
<td valign=top width=150> <font color="#FFFFFF" size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>AR2:</strong>
</font></td>
</tr>
EOHTML;
foreach($arrSchedule as $id => $data) {
$selReferee = isset($arrSchedule[$id]['referee']) ? $arrSchedule[$id]['referee'] : 0;
$selAr1 = isset($arrSchedule[$id]['ar1']) ? $arrSchedule[$id]['ar1'] : 0;
$selAr2 = isset($arrSchedule[$id]['ar2']) ? $arrSchedule[$id]['ar2'] : 0;;
$refSelect = getRefereeSelect($arrReferees,"rowdata[$id][referee]",$selReferee,$id,"referee");
$ar1Select = getRefereeSelect($arrReferees,"rowdata[$id][ar1]",$selAr1,$id,"ar1");
$ar2Select = getRefereeSelect($arrReferees,"rowdata[$id][ar2]",$selAr2,$id,"ar2");
$display_block .=<<<EOHTML
<tr>
<td valign=top width=85 bgcolor="#ffffff">
{$data['g_date']}
</td>
<td valign=top width=75 bgcolor="#ffffff">
{$data['time']}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$data['location']}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$data['home']}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$data['visitor']}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$data['age']}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$refSelect}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$ar1Select}
</td>
<td valign=top width=150 bgcolor="#ffffff">
{$ar2Select}
</td>
</tr>
EOHTML;
}
$display_block .=<<<EOHTML
</table>
<br>
<input type="submit" name="save" value="Save">
EOHTML;
$confirm = " onclick=\"if (!confirm('do you really want to do that ?')) return false;\"";
}
?>
<HTML>
<HEAD>
<TITLE>ECISOA Game Assignments</TITLE>
<script language="JavaScript">
<!--
function checksel(id,name) {
var cnt = 0;
var fields = new Array('referee','ar1','ar2');
var val = document.forms.theform.elements["rowdata["+id+"]["+name+"]"].value
for (i=0;i<fields.length;i++) {
var fval = document.forms.theform.elements["rowdata["+id+"]["+fields[i]+"]"].value
if (fields[i] != name && fval == val && val!=0)
cnt++;
}
if (cnt>0) {
alert("Mo, You've already assigned this referee to another game at this time!!");
document.forms.theform.elements["rowdata["+id+"]["+name+"]"].selectedIndex=0;
}
}
//-->
</script>
</HEAD>
<BODY>
<H1><font color="#CC0000" face="Verdana, Arial, Helvetica, sans-serif">ECISOA
Game Assignments</font></H1>
<table border="1" cellpadding="1" cellspacing="0" bordercolor="#000000">
<tr bgcolor="#CCCCCC">
<td colspan="4"> <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Use
the Following Season Codes:</strong></font></div></td>
</tr>
<tr>
<td width="185"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Winter
Season - YYYY-01</font></td>
<td width="185"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Spring
Season - YYYY-02</font></td>
<td width="185"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Summer
Season - YYYY-03</font></td>
<td width="185"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Fall
Season - YYYY-04</font></td>
</tr>
</table>
<form name="theform" action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">
Season Code:
<input name="thedate" value="<?PHP echo $thedate; ?>" method="post">
<input type="submit" name="seldate" value="Change Season"<?PHP echo $confirm; ?>>
<br>
<? echo "$display_block"; ?>
</form>
<P><a href="/assignor/assignor_login2_2.php"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Return to Menu</font></a></P>
</BODY>
</HTML>